资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,棋盘上的米粒,传说,古印度有一个人发明了一种游戏棋,棋盘共,64,格,玩起来十分新奇、有趣。他把这种棋献给了国王。国王玩得十分开心,便下令赏赐献棋人。臣下问献棋人想要什么。献棋人说:,他只需要粮食,要求大王给点粮食便心满意足了。,问他需要多少粮食,他说只要求在棋盘的第一个格子里放一粒米,在第二个格子放两粒米,第三个格子里放四粒米,?,总之,后面格子里的米都比它前一格增大一倍,把,64,格都放满了就行。国王一听,满口答应。大臣们也都认为:这点米,算得了什么,便领献棋人去领米。岂料,到后来把所有仓库里的存米都付出了,还是不够。你知道这是为什么吗?,算法分析,解:米粒数根据制棋人的要求。可列式为:,1,2,1,22,23,24,25,264-1,18446744073709551615(,粒,),如果造一个仓库来存放这些米,仓库应是多大呢?,有人算过,若仓库高,4,米,宽,10,米,那么长应是地球到太阳距离的,2,倍。这样的长方体仓库在地球上是容不下的,当然这只是个假设。传说,当时计算米粒数宫廷里就整整算了三天!这是中学数学中“等比级数求和”问题。在当时只是凭手工硬乘出来的。国库中当然不可能有那么多的粮食。,2.1,可视化编程的一般步骤,山东菏泽一中 付林,编程解决问题的过程,1.,分析问题,本题是个有限范围的数值计算问题,,棋盘每个格中的米的个数为,2,(N-1),个。,循环相加直到,64,个格子,20+21+22+263,2,、算法设计,自然语言,流程图,伪代码,棋盘上的米粒流程图,a=0,b=0,s=0,a=63,开始,a=a+1,b=2a,s=,s+b,输出,s,的值,结束,Y,N,提示:可设变量,a,让它从,0,到,63,设变量,b,让存放每个格的米数,设变量,s,为前个格的米的总和,3,、程序设计,VB,程序界面设计,编写程序代码,程序设计之界面设计,程序代码,Private Sub command1_Click(),Dim a As Integer,b As Double,s As double,For a=0 To 63,b=2 a,s=s+b,Next a,txtshow.Text,=s,End Sub,4,、,运行程序并保存,运行程序,“启用”按钮 的使用,,“结束”按钮 的使用,一定要停止程序运行后,才能修改程序。,保存程序,保存“工程”,扩展名为,vbp,一个工程文件中往往包含多个不同类型的文件,如窗体文件和代码文件等,。,小结:可视化程序的设计步骤,1,、分析问题,2,、分析算法设计算法,3,、窗口界面设计,4,、编写代码,5,、调试运行,6,、保存,
展开阅读全文