高三信息技术专题复习 高三信息技术算法专题训练十二(枚举).doc

上传人(卖家):cbx170117 文档编号:425019 上传时间:2020-04-02 格式:DOC 页数:4 大小:57KB
下载 相关 举报
高三信息技术专题复习 高三信息技术算法专题训练十二(枚举).doc_第1页
第1页 / 共4页
高三信息技术专题复习 高三信息技术算法专题训练十二(枚举).doc_第2页
第2页 / 共4页
亲,该文档总共4页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、 1 高三算法复习十二(枚举算法程序实现) 基本思想是把问题所有可能的解,逐一罗列出来并加以验证,若是问题的真正 解,予以采纳,否则就抛弃它 1、用辗转相除法求最大公约数。 已知用辗转相除法求两个正整数m、 n的最大公约数的算法如下: (用num1, num2, r分别表示被除数m、除数n和余数) 求num1/num2的余数r; 若r=0,则执行第步; 将num2的值放在num1中,将r的值放在num2中; 重新执行第步; 输出最大公约数num2。 下列Visual Basic程序用于求三个正整数的最大公约数。程序界面如图所示, 在文本框Text1、Text2和Text3中分别输入三个数a、b

2、和c,单击“求最大公约数 “按钮(Command1)后,在文本框Text4中输出a、b、c的最大公约数y。 Function temp(num1 as Integer, num2 as Integer) as Integer Dim r as Integer 此函数用于计算两个正整数的最大公约数 r = num1 Mod num2 Do While num1 = num2 num2 = r r = num1 Mod num2 Loop 2 temp = num2 End Function Private Sub Command1_Click() Dim a as Integer, b as I

3、nteger, c as Integer, x as Integer, y as Integer a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) x = y = temp(x, c) Text4.Text = Str(y) End Sub (1)解决此问题的算法是 。 (选填:解析法 或 枚举法) 在程序和划线处,填入适当的语句或表达式,把程序补充完整: (2)程序中划线处应填入_。 (3)程序中划线处应填入_。 2、王敏的E-Mail邮箱密码忘记了,但她需要收一封很重要的来信,请你帮她尽 可能找出密码。她零星记得自己密码

4、信息: 密码是六位数字,前面两位为31; 最后两位数字相同; 能被16和46整除。 程序界面如图所示,单击 “帮助找回密码“按钮(Command1)后,可能的密码显 示在列表框List1中。 解决此问题的相应程序如下: Private Sub Command1_Click() Dim a As Integer, s As long, b As Integer, i As Integer For i = 0 To 9999 s = 310000 + i If s Mod 46 = 0 Then 3 b = (s Mod 100) 10 If a = b Then List1.AddItem St

5、r(s) End If End If Next i End Sub (1) 解决此问题的算法是_。 (选填: 枚举算法 或 排序算法) 在程序和划线处,填入适当的语句或表达式,把程序补充完整: (2)程序中划线处应填入_。 (3)程序中划线处应填入_。 3、团体总分统计。下列程序的功能是根据输入的班级编号,统计该班的团体总 分。每个运动员的编号、所属班级编号、得分情况分别保存在数组a、b、c中, a(i)保存第i位运动员的编号,b(i)保存第i位运动员所属班级编号,c(i)保存 第i位运动员得分。 程序界面如图VB-1所示, 在文本框Text1中输入班级编号, 单击“开始统计“ 按钮(Comm

6、and1),程序统计该班的团体总分并在文本框Text2中显示。 解决此问题的算法流程图如图VB-2所示,相应的程序如下,程序中变量n 表示总的运动员人数,在程序(1)和(2)划线处,填入适当的语句或表达式,把 程序补充完整。 Private Sub Command1_Click() Dim x As String, i As Integer, s As Integer x = Text1.Text s = 0 For i = 1 To n n 保存运动员总人数 If (1) Then s = s + c(i) (2) Next i Text2.Text = Str(s) End Sub 程序中

7、(1)划线处应填入 _ 程序中(2)划线处应填入 _ 4 4、有一道趣味题,张老师问李老师:“你今年几岁?你爱人今年几岁?“李老师 笑笑说: “我年龄的平方与我爱人年龄之和恰好等于1053。 而我爱人年龄的平方 与我的年龄之和却等于873。你计算一下吧!“ 设李老师年龄为x岁,他爱人年龄为y岁,由题意可得x,y满足的数学式为: x2 + y = 1053 x + y2 = 873 解决此问题的流程图如VB-1所示。根据流程图VB-1编写的Visual Basic程序如 下,在(1)和(2)划线处,填入合适的语句或表达式,把程序补充完整。 Private Sub Command1_Click() Dim x As Integer, y As Long x = 1 y = 1053 - x * x Do While (1) (2) y = 1053 - x * x Loop Text1.Text = Str(x) Text2.Text = Str(y) End Sub 程序中划线处(1)应填入 程序中划线处(2)应填入

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高中 > 信息 > 人教版
版权提示 | 免责声明

1,本文(高三信息技术专题复习 高三信息技术算法专题训练十二(枚举).doc)为本站会员(cbx170117)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|