- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例1.编写程序, 计算自然数1+2+3+…+99+100的和.
分析:这是一个累加问题.我们可 以用WHILE型语句,也可以用UNTIL型语 句。
当型循环结构
开始
i=1 S=0
i=i+1
是 i≤100? 否
S=S+i
输出S
结束
WHILE语句
i=1 S=0 WHLIE i<=100 S=S+i i=i+1 WEND PRINT S END
i=1
i=1
S=10
SS==10 WHLIE i<=1n00
i=i+1
S=S+*i i
i≤i≤1n00?? 否
S=S+*i i 是
i=i+1 WEND PRINT S
输出S
结束
当型循环 结构
END
变式训练(2): 编写程序求:1×3×5×7×……×101的值.
直到型 开始 如何修改? UNITL语句
DO 循环体
LOOP UNTIL 条件
循环体
否
满足条件?
是
从UNTIL型循环结构分析,计算机执行该语句时,先 执行一次循环体,然后进行条件的判断,如果条件不 满足,继续返回执行循环体,然后再进行条件的判断, 这个过程反复进行,直到某一次条件满足时,不再执 行循环体,跳到LOOP UNTIL语句后执行其他语句, 是先执行循环体后进行条件判断的循环语句.
分析:仔细观察,该程序框图中既有条件结
开始 构,又有循环结构。
输入n
程序
INPUT “n=”;n
i=2
i=2
求n除以i的余数r
DO r=n MOD i
i=i+1
i≥n或r=0? 否
是
r=0?
是
n不是质数
否 n是质数
i=i+1 LOOP UNTIL i>=n OR r=0 IF r=0 THEN
PRINT “n is not a prime number.” ELSE
f(a) f(m)<0? 否
是
b=m a=m
|a-b|<d或f(m)=0? 否
b=m ELSE
a=m END IF LOOP UNTIL ABS(a-b)<d OR f=0
是
输出m
结束
PRINT m END
练习1\求S=1+1/2+1/3……+1/n,编写程序
程序
INPUT “n=”;n
i=1 S=0
WHILE i<=n
S=S+1/i
i=i+1
WEND
PRINT “S=”;S
END
THANKS
FOR WATCHING
演讲人: XXX
PPT文档·教学课件
WHILE语句的一般格式 UNTIL语句的一般格式
WHILE 条件 循环体
WEND
DO 循环体
LOOP UNTIL 条件
提问:通过对照,大家觉得WHILE型语句与UNTIL型 语句之间有什么区别呢?
区别:在WHILE语句中,是当条件满足时执行循环 体,而在UNTIL语句中,是当条件不满足时执行循环 体。
程序
直到型
x=1
DO y=x^2-3*x+5
PRINT “x=”;x, “y=”;y
x=x+1
LOOP UNTIL x>20
END
当型 程序
x=1 WHILE x<=20
y=x^2-3*x+5 PRINT “x=”;x, “y=”;y x=x+1
WEND END
例2:根据P7页图1.1-2,将程序框图转化为程序语句.
1.2.3基本算法语句
——循环语句
算法中的循环结构是由循环语句来实现的 .
循环结构有两种-----当型与直到型. 当型循环结构(当条件满 直到型循环结构(反复执 足时反复执行循环体) 行循环体直到条件满足)
循环体
循环体
满足条件? 是
否
否
满足条件?
是
对应于程序框图中的两种循环结构,一般 程序设计语言中也有当型(WHILE型)和直到型 (UNTIL型)两种语句结构。
Hale Waihona Puke i=1SS==01
SS==SS*+i i
ii==ii++21 否
i>i>110010??
是
输出S
结束
i=1 S==10 DO S=S*+i i i=i+21
LOOP UNTIL i>110001
PRINT S
END
变式3:函数y=x^2-3x+5,从x=1开始连续输入19 个自然数进行取值,输出相应的函数值,用程序语 言进行编程
当计算机遇到WHILE语句时,
循环体
先判断条件的真假,如果条件 WEND
符合,就执行WHILE与WEND之间
的循环体;然后再检查上述条 当型循环结构 件,如果条件仍符合,再次执行
循环体,这个过程反复进行,直
到某一次条件不符合为止.这
循环体
时,计算机将不执行循环体,直 接跳到WEND语句后,接着执行 WEND之后的语句.
WHILE语句 (1)WHILE语句的一般格式是:
WHILE 条件 循环体
WEND
WHILE——当…… 时候
WEND——朝……方向 行走
其中循环体是由计算机反复执行的一组语句 构成的。WHLIE后面的“条件”是用于控制计算机 执行循环体或跳出循环体的。
(1)WHILE语句的一般格式是 WHILE 条件
PRINT “n is a prime number.” END IF
END
结束
例3.P19 图1.1-20 转化成程序语言
程序框图
程序
开始
INPUT “a,b,d=”;a,b,d
f(x)=x2-2
DO m=(a+b)/2
输入精确度d和初值a,b f=m^2-2
m ab 2
g=a^2-2 IF g*f<0 THEN
直到型 开始
i=1 S=0 S=S+i i=i+1
否 i>100? 是 输出S
结束
UNTIL语句
i=1 S=0 DO S=S+i i=i+1 LOOP UNTIL i>100 PRINT S END
变式训练(1):
编写程序求:n!=1×2×3×4×5×……×n的值.
开始
输入n
如何修改? WHILE语句 INPUT “n=”;n
满足条件? 是
否
(2)UNTIL语句的一般格式是: 直到型循环结构
DO 循环体
LOOP UNTIL 条件
循环体
否
满足条件?
是
DO——做什么
LOOP UNTIL——绕环回线走,直到达到某种 条件为止
思考:参照其直到型循环结构对应的程序框图,说说 计算机是按怎样的顺序执行UNTIL语句的?
(2)UNTIL语句的一般格式是: 直到型循环结构