国际象棋棋盘上麦粒

国际象棋棋盘上麦粒

ID:20420980

大小:71.50 KB

页数:4页

时间:2018-10-12

国际象棋棋盘上麦粒_第1页
国际象棋棋盘上麦粒_第2页
国际象棋棋盘上麦粒_第3页
国际象棋棋盘上麦粒_第4页
资源描述:

《国际象棋棋盘上麦粒》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、国际象棋棋盘上的麦粒1、实践目标(1)理解循环语句的作用,能根据实际情况正确使用For语句。(2)学会使用VB循环控制结构编写程序,实现简单的算法。2、任务描述在印度有一个古老的传说:舍罕王打算奖赏国际象棋的发明人——宰相西萨·班·达依尔。国王问他想要什么。他对国王说:陛下,请您在这张棋盘(图7-1)的第1个小格里,赏给我1粒麦子,在第2个小格里给2粒,第3小格给4粒,以后每一小格都比前一小格加1倍。请您像这样摆满棋盘上所有64格的麦粒,都赏给您的仆人吧!国王觉得这个要求太容易满足了就命令给他这些麦粒。当人们把一袋一袋的麦子搬来开始计数时,国王才发现:就是

2、把全印度甚至全世界的麦粒全拿来,也满足不了那位宰相的要求。那么,宰相要求得到的麦粒到底有多少呢?尝试设计一个程序来计算。3、操作提示(1)问题分析本问题可用累加的方法来求解,即最后得到的麦粒数由每一格赏赐的麦粒数相加得到,而且相邻的格子要求得到赏赐的麦粒数也是有一定规律的,即后一格是前一覆盖麦粒数的2倍。若用i表示当前所处的格子,p表示此格子中应该赏赐的麦粒数,s表示累加得到的麦粒数,分析过程见表7-1。表7-14格(i)每格存放麦粒数(p)累加和(s)111221+2341+2+4481+2+4+85161+2+4+8+166321+2+4+8+16+3

3、2………………64由表7-1的分析可得i=,p=,s=。(2)设计算法。根据上面的分析,可画出算法流程图如下:4NY开始输入棋盘上的格子数n累加得到的麦粒数置初值s←0当前格子的麦粒数置初值p←1置初值:i←1i≤n?s←s+pp←p*2i←i+1输出麦粒数s结束(3)程序实现。①将下列根据上面算法编写的代码填写完整。PrivateSubCommand1_Click()DimnAsInteger,iAsInteger,pAsDouble,sAsDoublen=Val(Text1.Text)s=0p=1Fori=Tons=p=Nexti4Text2.Text

4、=Str(s)EndSub②新建工程,创建窗体。界面设计参照图7-2,属性设置参照表7-2。表7-2窗体中主要控件属性设置对象属性名称属性值Form1Caption国际象棋棋盘上的麦粒Label1Caption请输入当前所处的棋盘格数(n=)Label2Caption赏赐的麦粒总数(s=)Text1Text(空白)BackColor&H00FFC0C0&(蓝色)Text2Text(空白)BackColor&H00FFC0C0&(蓝色)Command1Caption计算③将上面完成的代码段输入到计算按钮的代码窗口中。④调试运行程序。(4)假如每颗麦粒的重量为

5、0.2克,每人每天消耗0.5千克,算一算上面棋盘上的麦粒能供全球60亿人吃多少年?(先写出VB表达式再计算)4

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。