vb第5章循环结构程序设计课件

上传人:我*** 文档编号:142169998 上传时间:2020-08-17 格式:PPT 页数:86 大小:976KB
返回 下载 相关 举报
vb第5章循环结构程序设计课件_第1页
第1页 / 共86页
vb第5章循环结构程序设计课件_第2页
第2页 / 共86页
vb第5章循环结构程序设计课件_第3页
第3页 / 共86页
vb第5章循环结构程序设计课件_第4页
第4页 / 共86页
vb第5章循环结构程序设计课件_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《vb第5章循环结构程序设计课件》由会员分享,可在线阅读,更多相关《vb第5章循环结构程序设计课件(86页珍藏版)》请在金锄头文库上搜索。

1、,第五章 循环结构程序设计,心理专家与经济学家会问的问题 想象一下,如果有一张足够大、足够柔韧的纸,把它折叠42次,会产生什么效果?你觉得会有多高?一个冰箱?一层楼?还是一栋摩天大厦?,一个令人惊奇的问题-折纸问题,一张厚度0.1毫米的纸,折叠42次就可以厚到43万公里超出了地球到月球38万公里的距离,0.1*242 = 439804651110.4 43.9804*104 (万) *103 (公里) *103(毫米),5-0循环折纸问题,一张厚度0.1毫米的纸,折叠多少次就可以达到或超过珠穆朗玛峰的8848米的高度?,5-0循环折纸问题,一张厚度0.1毫米的纸,折叠 27 次就可以达到或超过

2、珠穆朗玛峰的8848米的高度?,Private Sub Command1_Click() d = Val(Text1.Text) limit = Val(Text2.Text) n = 0 Do While d = limit d = 2 * d n = n + 1 Loop Text3.Text = n Text4.Text = Int(d * 100 + 0.5) / 100 End Sub,其他常见的循环问题 求累加和 123. 100 使用计算器加数用于运动会累计分数或商店累计营业额等。,5.1循环结构程序设计的概念P102,Loop Structure Programming 循环是

3、指在程序设计中,从某处开始有规律地反复执行某一程序块的现象, 重复执行的程序块称为“循环体”。 VB循环结构语句: DoLoop WhileWend ForNext 52 Do.Loop语句 前测型循环结构与后测型循环结构。,521 前测当型DoLoop循环,Front Test Do.Loop Loop 首先判断条件,当条件为真(True)时执行循环体,接着执行Loop 语句, 控制转到Do,再次测试条件, 当条件为假(False)时,终止循环,执行Loop语句后的语句。 其语法为 DoWhile(条件) (循环体语句列) Loop 说明: (l)(循环体语句列)是一条或多条命令(循环体),

4、条件为True它们将被重复执行。,求累加和,例5l 求累加和 123. 100 (如图 52) 。,S :累加器,采用累加的方法,存放累加的和(开始为0), n :计数器,存放“加数” ,从1开始到100为止。,求累加和,例5l 求累加和 123.100(如图 )。 流程图如图所示,设计步骤如下:,设计窗体界面 命令按钮的Click事件代码; Private Sub command1_Click() Dim s As Integer, n As Integer s = 0: n = 1 Do While n = 100 s = s + n n = n + 1 Loop Label2.Capti

5、on = 1+2+3+.+l00= I For I = 0 To 3 Step -1.5 Print I Next Print After For :; I,求整除的自然数,【例55显示1000以内的所有能被37整除的自然数(如图5-l3 所示)。 n从1到1000,如果n被37整除: n Mod 37 =0 设计步骤如下:,(1)窗体界面的设计与属性设置。增加一个文本框Text1、其MultiLine属性为“True”, 其ScrollBars属性为“2-Vertical” 一个命令按钮Command1和一个框架Frame1。,(2)编写代码。,编写命令按钮的Click事件代码: Priva

6、te Sub Command1_Click() a = For n = 1 To 1000 If n Mod 37 = 0 Then a = a For j = 1 To 2 * i - 1 Print *; Next j Next i End Sub,不换行,54 列表框与组合框,List Box List1.Text; List1.ListIndex Print 项目数:; List1.ListCount End Sub,删除选中项目操作 Private Sub Command2_Click() k = Val(InputBox(输入索引值) Cls Print 删除的项目内容; List

7、1.List(k) List1.RemoveItem k End Sub,求“同构数”,【例58】“同构数”是指这样的整数:它恰好出现在其平方数的右端,例如 1和 5就是这样的数。试找出 l9999之间的全部“同构数”(如图5-17所示)。,分析:l位同构数 n应满足条件:nn2 Mod 10, 2位同构数 n应满足条件:nn 2 Mod l00, 3位同构数 n应满足条件:nn2 MOd 1000, 4位同构数 n应满足条件:nn2 MOd 10000, 流程图如图5-l8 所示。,窗体界面的设计参见图517,Click事件代码 Private Sub Command1_Click() Li

8、st1.Clear For n = 1 To 9999 Select Case n Case n 2 Mod 10 List1.AddItem Format(n, ) & Format(n 2, ) Case n 2 Mod 100 List1.AddItem Format(n, ) & Format(n 2, ) Case n 2 Mod 1000 List1.AddItem Format(n, ) & Format(n 2, ) Case n 2 Mod 10000 List1.AddItem Format(n, ) & Format(n 2, ) End Select Next End

9、Sub,【例59小学生做加减法的算术练习程序。 计算机连续地随机给出两位数的加减法算术题,要求学生回答,答对的打“”,答错的打“”。 将做过的题目存放在列表框中备查,并随时给出答题的正确率(如图519所示)。 分析:随机函数Rnd返回一个0,l)之间的随机小数, 为了生成某个范围内的随机整数,可以使用公式: Int( 最大值-最小值十1)* Rnd+最小值) 其中,最大值和最小值为指定范围中的最大、最小数。,设计步骤如下:,(1)建立应用程序用户界面。 窗体设计器,首先增加一个标签Label1(显示题目)、一个文本框Text1(输入答案)、一个列表框List1(保存做过的题目)、一个命令按钮C

10、ommand1、一个图像Image1以及一个框架Frame1。 激活Frame1后,在其中增加两个标签,,(2)设置对象属性,表53 属性的设置 对象 属性属性值说明 Form1 Tag 0.0 存放题目总数 List1 Tag 0.0 存放答对的题数 ,(3)编写代码。出题部分由窗体的激活(Activate)事件代码完成: Private Sub Form_Activate() Randomize (Time) a = Int(10 + 90 * Rnd) b = Int(10 + 90 * Rnd) p = Int(2 * Rnd) Select Case p Case 0 Label1.

11、Caption = a & + & b & “ = Text1.Tag = a + b 将本题答案放入Text1.Tag中,Case 1 If a b Then t = a: a = b: b = t Label1.Caption = a & - & b & = Text1.Tag = a - b 将本题答案放入Text1.Tag中 End Select Form1.Tag = Form1.Tag + 1 Text1.SelStart = 0 Text1.Text = End Sub,答题部分由文本框的按住(KeyPress)事件代码完成: Private Sub Text1_KeyPress

12、(KeyAscii As Integer) If KeyAscii = 13 Then fm = ! If Val(Text1.Text) = Text1.Tag Then Item = Format(Label1.Caption & Text1.Text, fm) & D List1.Tag = List1.Tag + 1 Else Item = Format(Label1.Caption & Text1.Text, fm) & X End If List1.AddItem Item, 0 将题目和回答插入到列表框中的第1项 Label2.Caption = 共 & Form1.Tag &

13、题, & Chr(13) & 正确率为: Label3.Caption = Format(List1.Tag / Form1.Tag, #0.0#%) Form_Activate 调用出题代码 End If End Sub,3选择和移动数据,【例510】利用循环结构和列表框控件,设计的“选项移动”窗体指由两个列表框和4个命令按钮所构成的窗口,在 Windows中常见(图521)。,表5-4 属性设置,有错误,说明:,(1)列表框的Multiselect属性决定了用户是否能够选择多项数据: Multiselect0-None 不能 Multlselectl-Simple 简单多重 Multise

14、lect2-Extended 扩展多重 (2)简单或扩展的多重选择。 简单多选可以多次选择多项选项(直接单击鼠标左键), 扩展多选允许用户可以一次选择相邻的多项选项(Shift十单击鼠标左键)或逐条选择不相邻的多项选项(Ctrl十单击鼠标左键) (3)List1.Selected(i)True表示列表框 List1中的第 i1项选项被选中。 (4)List1.List(i)表示列表框List1中第i+1项的值。,(2)编写事件代码。,编写窗体的读入(Load)事件代码: Private Sub Form_Load() List1.AddItem 电冰箱 List1.AddItem 洗衣机 Li

15、st1.AddItem 彩色电视机 List1.AddItem 组合音响 List1.AddItem 影碟机 List1.AddItem 电水壶 List1.AddItem 饮水机 List1.AddItem 微波炉 List1.AddItem 照相机 End Sub,编写命令按钮的Click事件代码:,右侧List2增加List1所选项(部分增) Private Sub Command1_Click() i = 0 Do While i List1.ListCount If List1.Selected(i) = True Then List2.AddItem List1.List(i) L

16、ist1.RemoveItem i Else i = i + 1 End If Loop End Sub,i=List1.ListCount-1,右侧List2增加全部List1项(全部增) Private Sub Command2_Click() For i = 0 To List1.ListCount-1 List2.AddItem List1.List(i) Next i List1.Clear End Sub,右侧List2增加全部List1项(全部增)Private Sub Command2_Click()For i = 0 To List1.ListCount - 1 List2.AddItem List1.List(i)Next iList1.ClearEnd Sub,右侧List2删除本身所选项(部分删) Private Sub Command3_Click() i = 0 Do While i List2.ListCount If List2.Selected(

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号