课件18张PPT。第一章 算法初步
1.2.3 循环语句算法中的循环结构是由循环语句来实现的 .循环结构有两种-----当型与直到型.当型循环结构(当条件满足时反复执行循环体)直到型循环结构(反复执行循环体直到条件满足) 对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构. (1)UNTIL语句的一般格式是:
DO
循环体
LOOP UNTIL 条件DO——做什么LOOP UNTIL——绕环回线走,直到达到某种
条件为止思考:参照其直到型循环结构对应的程序框图,说说
计算机是按怎样的顺序执行UNTIL语句的? 即WHILE语句和UNTIL语句. (1)UNTIL语句的一般格式是:
DO
循环体
LOOP UNTIL 条件从UNTIL型循环结构分析,计算机执行该语句时,先
执行一次循环体,然后进行条件的判断,如果条件不
满足,继续返回执行循环体,然后再进行条件的判断,
这个过程反复进行,直到某一次条件满足时,不再执
行循环体,跳到LOOP UNTIL语句后执行其他语句,
是先执行循环体后进行条件判断的循环语句.(2)WHILE语句的一般格式是:
WHILE 条件
循环体
WEND 其中循环体是由计算机反复执行的一组语句构成的.WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的.WHILE——当……
时候WEND——朝……方向
行走(2)WHILE语句的一般格式是 WHILE 条件
循环体
WEND 当计算机遇到WHILE语句时,
先判断条件的真假,如果条件
符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句. 提问:通过对照,大家觉得WHILE型语句与UNTIL型
语句之间有什么区别呢? 区别:在WHILE语句中,是当条件满足时执行循环
体,而在UNTIL语句中,是当条件不满足时执行循环
体.例:编写程序,函数f(x)=x2-3x+5,连续输入自变量的11个取值,输出相应的函数值.1、写出下列程序运算功能的算术表达式(不计算,只写式子). (1)N=2
T=1
WHILE N<=5
T=N*T
N=N+1
WEND
PRINT T
END
上述程序的表达式为 ; T=1*2*3*4*5练习 (2)i=1
S=0
WHILE i<10
S=S+1/(2*i+1)
i=i+1
WEND
PRINT S
END
上述程序的表达式为 .2、设计一个算法框图:逐个输出12,22,
32,……,n2,并写出相应的QBASIC程序.INPUT n
i = 0
WHILE i < n
i = i + 1
t = i ^ 2
PRINT t
WEND
ENDINPUT n
i = 0
DO
i = i + 1
t = i ^ 2
PRINT t
LOOP UNTIL i > = n
END3、设计一个算法框图:求满足1+2 + 3 + … + n>10000的最小正整数n,并写出相应的QBASIC程序.i = 0sum = 0DOi = i + 1sum = sum + iLOOP UNTIL sum>10000PRINT iEND4.编计算机程序输出1~100之间(含1和100)
的所有偶数.思考:能用UNTIL型来编写程序?WHILE型程序:UNTIL型程序:5、编计算机程序输出1~100之间(含1和100)能被3整除的所有整数.(分别用WHILE型和UNTIL型)WHILE型:UNTIL型: 相传古代印度国王舍罕要褒赏他的聪明能干的宰相达依尔(国际象棋发明者),问他需要什么,达依尔回答说:“国王只要在国际象棋的棋盘第一个格子里放一粒麦子,第二个格子里放二粒,第三个格子里放四粒,以后按比例每一格加一倍,一直放到第64格(国际象棋盘是8×8=64格),我就感恩不尽,其他我什么也不要了.”国王想:“这有多少!还不容易!”让人扛来一袋小麦,但不到一会儿全没了,再来一袋很快又没了,结果全印度的粮食全部用完还不够,国王纳闷,怎样也算不清这笔帐,请你设计一个算法,帮国王计算一个,共需多少粒麦子,写出程序. 趣味练习解:依题意,本题是求1+2+22+23+…+263的值.
算法:
第一步:令S=0,i=0;
第二步:P=2i,S=S+P,i=i+1;
第三步:如果i≤63,那么转第二步;
第四步:输出S.程序如下: i=0
S=0
WHILE i<=63
P=2^i
S=S+P
i=i+1
WEND
PRINT S
ENDWHILE 条件
循环体
WENDDO
循环体
LOOP UNTIL 条件 小结