国际象棋棋盘上的麦粒1580.pdf

上传人:得****3 文档编号:83541971 上传时间:2023-03-31 格式:PDF 页数:4 大小:190.48KB
返回 下载 相关 举报
国际象棋棋盘上的麦粒1580.pdf_第1页
第1页 / 共4页
国际象棋棋盘上的麦粒1580.pdf_第2页
第2页 / 共4页
点击查看更多>>
资源描述

《国际象棋棋盘上的麦粒1580.pdf》由会员分享,可在线阅读,更多相关《国际象棋棋盘上的麦粒1580.pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 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。2 表 7-1 格(i)每格存放麦粒数(p)累加和(s)1 1 1 2 2 1+2 3 4 1+2+4 4 8 1+2+4+8 5 16 1+2+4+8+16 6 32

3、 1+2+4+8+16+32 64 由表 7-1 的分析可得 i=,p=,s=。(2)设计算法。根据上面的分析,可画出算法流程图如下:3 (3)程序实现。将下列根据上面算法编写的代码填写完整。Private Sub Command1_Click()Dim n As Integer,i As Integer,p As Double,s As Double n=Val(Text1.Text)s=0 p=1 For i=To n s=p=Next i N Y 开始 输入棋盘上的格子数 n 累加得到的麦粒数置初值 s0 当前格子的麦粒数置初值 p1 置初值:i1 in?ss+p pp*2 ii+1 输

4、出麦粒数 s 结束 4 Text2.Text=Str(s)End Sub 新建工程,创建窗体。界面设计参照图 7-2,属性设置参照表 7-2。表 7-2 窗体中主要控件属性设置 对象 属性名称 属性值 Form1 Caption 国际象棋棋盘上的麦粒 Label1 Caption 请输入当前所处的棋盘格数(n=)Label2 Caption 赏赐的麦粒总数(s=)Text1 Text(空白)Back Color&H00FFC0C0&(蓝色)Text2 Text(空白)Back Color&H00FFC0C0&(蓝色)Command1 Caption 计算 将上面完成的代码段输入到计算按钮的代码窗口中。调试运行程序。(4)假如每颗麦粒的重量为 0.2 克,每人每天消耗 0.5 千克,算一算上面棋盘上的麦粒能供全球 60 亿人吃多少年?(先写出 VB 表达式再计算)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁