vb控制结构-循环结构程序设计PPT课件
合集下载
vb控制结构循环结构程序设计课件
π/4=1- 1/3 + 1/5 -1/7 +…+(-1)n+11/2n-1+…
6.3 Do...Loop循环结构
Private Sub cmdPi_Click() Dim a As Single Dim m As Single Dim s As Integer Dim i As Integer s=1 i=1 Do m=1/i a=a+s*m i=i+2 s = -s Loop Until m < 0.0001 Text1.Text = a * 4
Print i j=j-1 k=k+1 Next Print j, k End Sub
练习:分析下面程序段结束时窗体上显示的值是多少?
(1) For i = 1 To 10
i2 = i2+1 Next Print i (11)
(2) i2=0 For i = 1 To -2 Step -1
i2 = i2+1 Next Print i , i2 (-3 4)
i=i+1 i2 = i2 + 1 i3 = i3 + 1 Next Print i, i2 (11 6)
(6)
i2 = 0
For i = 1 To 10
i2 = i2 + 1
If i > 6 Then Exit For
Next Print i, i2
(7 7)
(7)
i2 = 0
i = 10
Do
i2 = i2 + 1
Dim i As Integer, n As Integer, a As Integer '定义所需变量
n = Text1.Text
6.3 Do...Loop循环结构
Private Sub cmdPi_Click() Dim a As Single Dim m As Single Dim s As Integer Dim i As Integer s=1 i=1 Do m=1/i a=a+s*m i=i+2 s = -s Loop Until m < 0.0001 Text1.Text = a * 4
Print i j=j-1 k=k+1 Next Print j, k End Sub
练习:分析下面程序段结束时窗体上显示的值是多少?
(1) For i = 1 To 10
i2 = i2+1 Next Print i (11)
(2) i2=0 For i = 1 To -2 Step -1
i2 = i2+1 Next Print i , i2 (-3 4)
i=i+1 i2 = i2 + 1 i3 = i3 + 1 Next Print i, i2 (11 6)
(6)
i2 = 0
For i = 1 To 10
i2 = i2 + 1
If i > 6 Then Exit For
Next Print i, i2
(7 7)
(7)
i2 = 0
i = 10
Do
i2 = i2 + 1
Dim i As Integer, n As Integer, a As Integer '定义所需变量
n = Text1.Text
VB课件第4章循环结构
End Sub
整理课件
13
思考:
Private Sub Form_Click()
Dim sum As Double, x As Double
sum=0
n=0
For i=1 To 5
x=n/i
n=n+1
sum = sum + x
Next i
End Sub
整理课件
14
示例3:100 元买100 只鸡,母鸡3元1只,小鸡1元 3只,问各应买多少只?
Show
t=1 For c = 1 To 8
t=t*c
如果要求 N!呢???
Next c
Print "T="; t
End Sub
程序运行结果是: T=40320
语句t=t*c也称累乘器。先将t置1(不能置0)。
在循环程序中,常用累加器整和理累课件乘器来完成各种计算任务1。0
思考:
x=5 For i=1 To 20 Step 5
x = x + i\5 Next i
整理课件
11
思考:
s=5 For i=2.6 To 4.9 Step 0.6
s=s+1 Next i
整理课件
12
思考:
Private Sub Form_Click() x=5 : k=5 For k=1 To 10 Step -2 x=x+k Next k Print k; x
i = 1 ’进入循环之前赋初值
Do While i <= 100
整理课件
3
4.3.1 For...Next循环
按指定次数执行循环体
循环变量获得初值
循环变量超过终值? F T
整理课件
13
思考:
Private Sub Form_Click()
Dim sum As Double, x As Double
sum=0
n=0
For i=1 To 5
x=n/i
n=n+1
sum = sum + x
Next i
End Sub
整理课件
14
示例3:100 元买100 只鸡,母鸡3元1只,小鸡1元 3只,问各应买多少只?
Show
t=1 For c = 1 To 8
t=t*c
如果要求 N!呢???
Next c
Print "T="; t
End Sub
程序运行结果是: T=40320
语句t=t*c也称累乘器。先将t置1(不能置0)。
在循环程序中,常用累加器整和理累课件乘器来完成各种计算任务1。0
思考:
x=5 For i=1 To 20 Step 5
x = x + i\5 Next i
整理课件
11
思考:
s=5 For i=2.6 To 4.9 Step 0.6
s=s+1 Next i
整理课件
12
思考:
Private Sub Form_Click() x=5 : k=5 For k=1 To 10 Step -2 x=x+k Next k Print k; x
i = 1 ’进入循环之前赋初值
Do While i <= 100
整理课件
3
4.3.1 For...Next循环
按指定次数执行循环体
循环变量获得初值
循环变量超过终值? F T
VB程序设计--循环结构ppt课件
第五章 根本的控制构造 (5学时〕
5.1 顺序构造 5.2 选择构造 5.3 循环构造 5.4 其它辅助控制语句 5.5 常见错误 〔顺序、条件、循环〕
判别条件进展循环
• While循环
例:设
•
While <条件s>=1×2×3×……×n,
• <循环体>
求s不大于4000时的最 大的n。
•
wend
Private Sub Command1_Click() Max = 100 For i = 1 To 10
x = Int(Rnd * 101 + 100) Print x; If x > Max Then Max = x Next i Print Print "最大值="; Max End Sub
‘ e存放累加和、n存放阶
乘
i=0 : t=1
‘ i计数器、t第i项的值
Do While t > 0.00001
e = e + t : i = i + 1 ‘ 累加、连乘
n=n*i: t=1/n
Loop
Print "计算了 "; i; " 项的和是 "; e
End Sub
2.求素数
判别某数m能否为素数最简单的方法是:
> 当条件为真时,继续执行循
环体,为假,退出循环体。 循环体至少执行一次
循环体
Exit Do
循环体 T 条件
F
Do循环控制构造
⑷ Do……loop until语句 do <循环体> [exit do] <循环体> loop until<条件表达
VB循环结构FOR循环-完整版课件
• S=0 • For i=1 to 100 • s=s+i • Print s • Next I
求s=1+2+…+100的值
S=0
S=0
S=0+1
S=s+1
S=0+1+2
S=s+2
S=0+1+2+3 S=s+3
S=0+1+2+3+4 S=s+4
……
……
S=0+1+2..+100 S=s+100
重复100次
重复100次
S=0 S=s+i S=s+i S=s+i S=s+i …… S=s+i i为 1 to100
重复做:把I累加 到S。
• S=0 • For i=1 to 100 step 1 • s=s+i • Next i • Print s
要求s=1*2*3*..*n的值(N!)
S=1
S=1
S=1*1
S=s*1
S=1*1*2
S=s*2
S=1*1*2*3 S=s*3
S=1*1*2*3*4 S=s*4
……
……
S=1*2*3…*n S=s*n
S=1 S=s*i S=s*i S=s*i S=s*i …… S=s*i i 为:1 to n
•s=s*I
重复做:把I 累乘到S
100-999之间所有的“水仙花数”。“水仙花数”是一 个三位数,其各位数立方和等于该数本身 如153=1^3+ 5^3+ 3^3,所以153是一个水仙花数
程序的循环结构 ---for 循环
vb循环结构ppt课件
例:连乘求自然数1-30的乘积(即30的阶乘)
Private Sub Form_Click() s=1
For i = 1 To 10 s = s * I ‘ 赋值语句实现 Print i; "的阶乘是:"; s
Next i End Sub
11
思考?若把循环体前面置各变量初值的语句放在 循环体内,程序运行时会产生什么情况?
i=i+3 “有无此句结果有什么不同?
j=j+1 Print "第"; j; "次循环i="; i
Next i Print "退出循环后i="; i End Sub 正常情况:i=1,3,5,7,9,11,13,15,17,19 现在: i=4,9,14,19
9
★:常用算法:累加,连乘
算法:是对某个问题求解过程的描述
5
循环变量得到初值
循环变量在终值内
T 语句块
T 有Exit For
F
循环变量加步长
For…Next流程图 F
For 循环流程图
6
例: For I=2 To 13 Step 3
Print I ,
Next I
Print : Print “I=“, I
结果: 输出I的值分别为:
2 5 8 11
循环执行次数:
Next ii
For ii =1 To 10 For jj=1 To 20 … Next ii
Next jj
For ii =1 To 10 …
Next ii For ii =1 To 10
… Next ii
For ii =1 To 10 For ii=1 To 20 … Next ii
VB程序设计第四章-基本的控制结构精品PPT课件
– 给变量赋值 – 给控件的属性赋值
例如: sngRate! =0.1 ‘将0.1赋给单精度变量
sngRate txtName.Text = “Hu”
赋值处理
当赋值等号左右数值类型不相同时,强制转换成 左边变量的类型(精度) n%=3.5 ‘结果为4(四舍五入)
当赋值等号左边是数值类型,而右边表达式是数 字字符串,则VB自动转换成数值类型再赋值,如 表达式不是数字字符串,则出错。
vbOk vbCancel vbAbort vbRetry vbIgnore vbYes VBNo
1
确定
2
取消
3
终止
4
重试
5
忽略
6
是
7
否
3 MsgBox过程
语法: MsgBox(提示[,按钮][,标题])
其中: 提示、标题、 按钮:与MsgBox函数相同
作用: Msgbox()函数和Msgbox过程的作用都是打开 一个信息框,等待用户选择一个按钮。
注意:
尽量采用转换函数进行转换,避免VB 系统自动转换。这样能避免出现意想 不到的错误。
VB系统会自动判断赋值符号“=“ 和 关系运算符等于符号”=“。
赋值符号”=“左边只能是变量,不 能是常量、或者表达式。
赋值语句: intX = intX + 1
2 人机交互函数和过程
VB与用户之间的数据交互通过两个 函数和一个过程完成。
InputBox函数的作用
打开一个标准对话框,等待用户输入内容, 用户单击“确定(OK)”或者按回车键, 则该函数返回输入的值,其类型为字符型。
例如:
Dim strName As String * 40, strS1 As String strS1 = "请输入你的姓名" + vbCrLf + "然后回车确定" strName = InputBox(strS1, "输入框", , 100, 100)
例如: sngRate! =0.1 ‘将0.1赋给单精度变量
sngRate txtName.Text = “Hu”
赋值处理
当赋值等号左右数值类型不相同时,强制转换成 左边变量的类型(精度) n%=3.5 ‘结果为4(四舍五入)
当赋值等号左边是数值类型,而右边表达式是数 字字符串,则VB自动转换成数值类型再赋值,如 表达式不是数字字符串,则出错。
vbOk vbCancel vbAbort vbRetry vbIgnore vbYes VBNo
1
确定
2
取消
3
终止
4
重试
5
忽略
6
是
7
否
3 MsgBox过程
语法: MsgBox(提示[,按钮][,标题])
其中: 提示、标题、 按钮:与MsgBox函数相同
作用: Msgbox()函数和Msgbox过程的作用都是打开 一个信息框,等待用户选择一个按钮。
注意:
尽量采用转换函数进行转换,避免VB 系统自动转换。这样能避免出现意想 不到的错误。
VB系统会自动判断赋值符号“=“ 和 关系运算符等于符号”=“。
赋值符号”=“左边只能是变量,不 能是常量、或者表达式。
赋值语句: intX = intX + 1
2 人机交互函数和过程
VB与用户之间的数据交互通过两个 函数和一个过程完成。
InputBox函数的作用
打开一个标准对话框,等待用户输入内容, 用户单击“确定(OK)”或者按回车键, 则该函数返回输入的值,其类型为字符型。
例如:
Dim strName As String * 40, strS1 As String strS1 = "请输入你的姓名" + vbCrLf + "然后回车确定" strName = InputBox(strS1, "输入框", , 100, 100)
vb循环结构-精美PPT课件
第二步:3 + 3 = 6
第二步: 6 = 3 + 3
第三步:6 + 4 =10
……
第三步:10= 6 + 4 设为 s
设为 n
第100步:前99项和+100=5050
第n步:s=s+n来自【例】求1+3+5+……+99
运用累加法:设s是一个累加器变量,n代表当前的加数,开始时 设置s=0。
• 第1步:n=1 执行s=s+n 即s=0+1=1 • 第2步:n=3 执行s=s+n 即s=1+3=4 • 第3步:n=5 执行s=s+n 即s=4+5 • 第4步:n=7 执行s=s+n 即s=9+7 • …………… • 第50步:n=99 执行s=s+n 即s=2401+99
什么是for循环
for循环的语法
1
2
3
For 循环变量=初值 to 终值 step 步长
语句组 4 Next 循环变量
循环变量=初值 是
循环变量超过终值 否
执行循环体
循环变量增加一个步长值
for n = 1 To 99 Step 2 S=s+n Next i
注意事项 1、 初值、终值可以是表达式、变量和常量 。 2、 步长可为正数或负数但不可以为0。 3、 step 1 可省略不写。 4、 循环次数= int ((终值-初值)/步长+1))
【例】求1+2+3+……+100=? 【例】求1+3+5+……+99=? 【例】求2+4+……+100=? 【例】求1*2*……10=? 【例】求100以内所有能被3整除的数
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
i=i+1 i2 = i2 + 1 i3 = i3 + 1 Next Print i, i2 (11 6)
(6)
i2 = 0
For i = 1 To 10
i2 = i2 + 1
If i > 6 Then Exit For
Next Print i, i2
(7 7)
(7)
i2 = 0
i = 10
Do
i2 = i2 + 1
Next i Print i
For i= -1 to -10 step -1 s=s+i
Next i Print i
6.2 For...Next循环结构
注意对于For…Next语句来说,一旦进入循环,其“终止值” 和“增量”便不会再改变了。
Private Sub Form_Click() Dim i As Integer, j As Integer, k As Integer j = 10: k = 1 For i = 1 To j Step k
例: For I=2 To 13 Step 3 Print I ,
Next I Print “I=“, I
循环执行次数 4 输出I的值分别为:
2 5 8 11 出了循环输出为: I=14
6.2 For...Next循环结构
注意跳出FOR循环时的循环变量的值
For i= 1 to 10 step 1 s=s+i
语句块 [Exit For]
循环体
T
语句块
语句块 Next [循环变量]
E xit F or
语句块
>=0 循环变量<=终值 步长 <0 循环变量>=终值
=1 可省略
循环变量加步长
图 1-3-13 For 循 环 语 句
6.2 For...Next循环结构
循环次数 In(终 t步 值 初 长值 1)
'得到输入的值
Do
i=i+1
' 每次循环,变量i都增加1
a=a+i
' 每次循环,变量a都加变量i的值
(3)
i2=0
For i = 1 To 5 Step 2
i2 = i2+1
Next Print i
(7)
(4) i2 = 1 For i = 1 To 10
i=i+1 i2 = i2 + 1 Next Print i, i2 (11 6)
(5) i2 = 1 i3 = 10 i = 10 For i = 1 To i3
Private Sub Form_Click()
Dim i As Integer: Dim a As Integer '定义所需变量
i = 0: a = 0
' 给变量赋初值0,这两条语句可省略
Do While i < 100
i=i+1
' 每次循环,变量i都增加1
a=a+i
' 每次循环,变量a都加变量i的值
l For…Next语句 l Do…Loop语句 l While…Wend语句
Do While<条件> …Loop形式 Do …Loop While <条件>形式 Do Until <条件> …Loop形式 Do …Loop Until <条件>形式 Do …Loop形式
打印九九乘法表
Dim Sgs As String Dim i, j As Integer For i = 1 To 9 ’被乘数从1变到9 For j = i To 9 ’乘数从1变到9 Sgs = i & "×" & j & "=" & Str(i * j) ’打印公式如1×1=1
6.3 Do...Loop循环结构
例:使用Do …Loop While循环语句计算1+2+3+…+n的值,n的 值由文本框输入。
Private Sub Command1_Click()
Dim i As Integer, n As Integer, a As Integer '定义所需变量
n = Text1.Text
Loop
Print a
' 计算完毕,变量a的值即为所求
End Sub
6.3 Do...Loop循环结构
列 表后1 测型F: Do
T 语句块
块
[Exit Do]
语句块
o Loop While <条件>
块
语句块
Exit D o 语句块
T
条件
F
W hile … Loop
D o … Loop W hile 的 执 行 过 程
Loop While i = i2
Print i2
(1)
6.2 For...Next循环结构
例6.7 编程计算:S=1+2+3+…+100
Dim S%, I%
S=0
' 累加前变量S为0
For I=1 to 100
S=S+I
Next I
Print " S=",S
S=0,I=1 当I<=100
S=S+I I=I+1 打印S
例6.7的算法流程图
6.3 Do...Loop循环结构
Do…Loop循环语句使用形式
条件
F
前测型: Do While <条件>
T
语句块
语句块
[Exit Do] 语句块 Loop
Exit D o 语句块
D o W hile … Loop 执 行 过 程
6.2 Do...Loop循环结构
例:使用Do While…Loop循环语句计算1+2+3+…+100的值
第6章 VB控制结构(2)
——循环结构程序设计
本章内容及要求:
(1)掌握For…..Next语句及Exit For语句的使用; (2)掌握Do….Loop循环语句与Exit Do语句的使用; (3)掌握循环结构的嵌套应用; (4)掌握循环结构和选择结构的嵌套应用。
6.1 概述
在Visual Basic程序设计中, 实现循环结构的语句主要有 下列几种:
Print i j=j-1 k=k+1 Next Print j, k End Sub
练习:分析下面程序段结束时窗体上显示的值是多少?
(1) For i = 1 To 10
i2 = i2+1 Nex 1 To -2 Step -1
i2 = i2+1 Next Print i , i2 (-3 4)
Picture1.Print Tab((j - 1) * 9 + 1); Sgs; Next j Picture1.Print Next I
6.2 For...Next循环结构
For循环语句 (一般用于循环次数已知)
循环变量得初值
形式:
F
For 循环变量=初值 to 终值 [Step 步长]
循环变量在终值内
(6)
i2 = 0
For i = 1 To 10
i2 = i2 + 1
If i > 6 Then Exit For
Next Print i, i2
(7 7)
(7)
i2 = 0
i = 10
Do
i2 = i2 + 1
Next i Print i
For i= -1 to -10 step -1 s=s+i
Next i Print i
6.2 For...Next循环结构
注意对于For…Next语句来说,一旦进入循环,其“终止值” 和“增量”便不会再改变了。
Private Sub Form_Click() Dim i As Integer, j As Integer, k As Integer j = 10: k = 1 For i = 1 To j Step k
例: For I=2 To 13 Step 3 Print I ,
Next I Print “I=“, I
循环执行次数 4 输出I的值分别为:
2 5 8 11 出了循环输出为: I=14
6.2 For...Next循环结构
注意跳出FOR循环时的循环变量的值
For i= 1 to 10 step 1 s=s+i
语句块 [Exit For]
循环体
T
语句块
语句块 Next [循环变量]
E xit F or
语句块
>=0 循环变量<=终值 步长 <0 循环变量>=终值
=1 可省略
循环变量加步长
图 1-3-13 For 循 环 语 句
6.2 For...Next循环结构
循环次数 In(终 t步 值 初 长值 1)
'得到输入的值
Do
i=i+1
' 每次循环,变量i都增加1
a=a+i
' 每次循环,变量a都加变量i的值
(3)
i2=0
For i = 1 To 5 Step 2
i2 = i2+1
Next Print i
(7)
(4) i2 = 1 For i = 1 To 10
i=i+1 i2 = i2 + 1 Next Print i, i2 (11 6)
(5) i2 = 1 i3 = 10 i = 10 For i = 1 To i3
Private Sub Form_Click()
Dim i As Integer: Dim a As Integer '定义所需变量
i = 0: a = 0
' 给变量赋初值0,这两条语句可省略
Do While i < 100
i=i+1
' 每次循环,变量i都增加1
a=a+i
' 每次循环,变量a都加变量i的值
l For…Next语句 l Do…Loop语句 l While…Wend语句
Do While<条件> …Loop形式 Do …Loop While <条件>形式 Do Until <条件> …Loop形式 Do …Loop Until <条件>形式 Do …Loop形式
打印九九乘法表
Dim Sgs As String Dim i, j As Integer For i = 1 To 9 ’被乘数从1变到9 For j = i To 9 ’乘数从1变到9 Sgs = i & "×" & j & "=" & Str(i * j) ’打印公式如1×1=1
6.3 Do...Loop循环结构
例:使用Do …Loop While循环语句计算1+2+3+…+n的值,n的 值由文本框输入。
Private Sub Command1_Click()
Dim i As Integer, n As Integer, a As Integer '定义所需变量
n = Text1.Text
Loop
Print a
' 计算完毕,变量a的值即为所求
End Sub
6.3 Do...Loop循环结构
列 表后1 测型F: Do
T 语句块
块
[Exit Do]
语句块
o Loop While <条件>
块
语句块
Exit D o 语句块
T
条件
F
W hile … Loop
D o … Loop W hile 的 执 行 过 程
Loop While i = i2
Print i2
(1)
6.2 For...Next循环结构
例6.7 编程计算:S=1+2+3+…+100
Dim S%, I%
S=0
' 累加前变量S为0
For I=1 to 100
S=S+I
Next I
Print " S=",S
S=0,I=1 当I<=100
S=S+I I=I+1 打印S
例6.7的算法流程图
6.3 Do...Loop循环结构
Do…Loop循环语句使用形式
条件
F
前测型: Do While <条件>
T
语句块
语句块
[Exit Do] 语句块 Loop
Exit D o 语句块
D o W hile … Loop 执 行 过 程
6.2 Do...Loop循环结构
例:使用Do While…Loop循环语句计算1+2+3+…+100的值
第6章 VB控制结构(2)
——循环结构程序设计
本章内容及要求:
(1)掌握For…..Next语句及Exit For语句的使用; (2)掌握Do….Loop循环语句与Exit Do语句的使用; (3)掌握循环结构的嵌套应用; (4)掌握循环结构和选择结构的嵌套应用。
6.1 概述
在Visual Basic程序设计中, 实现循环结构的语句主要有 下列几种:
Print i j=j-1 k=k+1 Next Print j, k End Sub
练习:分析下面程序段结束时窗体上显示的值是多少?
(1) For i = 1 To 10
i2 = i2+1 Nex 1 To -2 Step -1
i2 = i2+1 Next Print i , i2 (-3 4)
Picture1.Print Tab((j - 1) * 9 + 1); Sgs; Next j Picture1.Print Next I
6.2 For...Next循环结构
For循环语句 (一般用于循环次数已知)
循环变量得初值
形式:
F
For 循环变量=初值 to 终值 [Step 步长]
循环变量在终值内