课件编号5831998

2.1 枚举算法 课件(25张幻灯片)

日期:2024-05-13 科目:信息技术 类型:高中课件 查看:21次 大小:1220481Byte 来源:二一课件通
预览图 1/5
枚举,算法,课件,25张,幻灯片
  • cover
课件25张PPT。寻宝之旅 ———枚举算法寻宝之旅 在澳大利亚,有一个名为洛豪德的小岛。相传岛上藏有无数财宝,周围海底也铺满耀眼炫目的宝石。 谁来驾驶桐高珍珠号呢?选船长规则选4位同学,第1位同学从1开始数起,依次每人尽快数下一个数,凡是遇到7的倍数(如7、21等)或是数字中带7的数字( 如17、71等),就要喊“船长”,说错或卡住了即被淘汰,这样一直数到99为止, 剩下同学就为船长。 算法分析把问题所有的可能解一 一列举出来,并对每一个可能解进行判断,是真正解的时候输出“船长” 。算法分析把问题所有的可能解一 一列举出来,并对每一个可能解进行判断,是真正解的时候输出“船长” 。算法分析把问题所有的可能解一 一列举出来,并对每一个可能解进行判断,是真正解的时候输出“船长” 。枚举算法这种算法就叫做“枚举算法”,又称为“穷举法”。 算法思想:把问题的所有的可能解一 一列举出来,并对每一个可能解进行判断,以确定是否是问题的真正解。 逐个检验:一一列举:1~99是7的倍数或数字中包含7n=0:i=输出nN结束开始i≤99i=i+1计数输出“船长”1输出i循环结构 嵌套 选择结构枚举算法的流程图枚举算法的控制方式循环结构(复习) For 循环变量=初值 to 终值 step 步长 语句块 Next 循环变量选择结构(复习) If 条件表达式 then 语句块 End If循环结构嵌套选择结构 For 循环变量=初值 to 终值 step 步长 If 条件表达式 then 语句块 End If Next 循环变量利用枚举算法思想解决问题:1.确定枚举范围 2.明确检验条件 3.选择控制方式 4.编程求解1到99之间循环结构嵌套选择结构是7的倍数或数字中包含7是7的倍数或数字中包含7用代码如何表示? 是7的倍数:_____ 数字中包含7: 个位是7 或者 十位是7 _____ or _____i mod 7=0 i mod 10=7i10=7 船长带领大家很快来到了岛上,可是岛上的门太多了,到底是哪一个呢?于是船长打开了藏宝图。 “哈哈,这可难不倒我”,船长很快找到了通往宝藏城堡的大门,大门在说话:“请输入密码,最多三次!” 密码是什么呢?还好,藏宝图上还有提示:六位密码,是31或187的倍数,可是十位和百位已经模糊不清了。812??0请输入密码,最多三次! 1.确定枚举范围 2.明确检验条件 3.选择控制方式 4.编程求解812000~812990循环结构嵌套选择结构是31或187的倍数利用枚举算法思想解决问题: 812??0六位密码,是31或187的倍数,可是十位和百位已经模糊不清了编程求解Dim i As Long, n As Integer, c As Integer n = 0 '存储循环次数 c = 0 '存储解的个数 For i = 812000 To 812990 '设置循环变量的初值、终值、步长 n = n + 1 If i Mod 31 = 0 And i Mod 187 = 0 Then '设置条件表达式 List1.AddItem Str(i) c = c + 1 End If Next i Label1.Caption = "循环次数:" + Str(n) Label2.Caption = "满足条件的解的个数" + Str(c)调试程序,使之能输出正确的三个解 方法一Dim i As Long, n As Integer, c As Integer n = 0 '存储循环次数 c = 0 '存储解的个数 For i = 812000 To 812990 Step 10 '设置循环变量的初值、终值、步长 n = n + 1 If i Mod 31 = 0 Or i Mod 187 = 0 Then '设置条件表达式 List1.AddItem Str(i) c = c + 1 End If Next i Label1.Caption = "循环次数:" + Str(n) Label2.Caption = "满足条件的解的个数" + Str(c)方法二n = 0 '存储循环次数 c = 0 '存储解的个数 For i = 812000 To 812990 '设置循环变量的初值、终值、步长 n = n + 1 If (i Mod 31 = 0 Or i Mod 187 = 0) And i Mod 10 = 0 Then '设置条件 List1.AddItem Str(i) c = c + 1 End If Next i Label1.Caption = "循环次数:" + Str(n) Label2.Caption = "满足条件的解的个数" + Str(c)比较结论: 尽可能使 ... ...

~~ 您好,已阅读到文档的结尾了 ~~