正确理解两种循环结构

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

正确理解两种循环结构

程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形。在一些算法中经常会出现从某处开始,按照一定条件反复执行某些步骤的情况,这就是循环结构,反复执行的步骤称为循环体。循环结构中一定包含条件结构,用于确定何时终止执行循环体。

我们经常使用的循环结构有两种:直到型循环(until型)和当型循环(while 型),那么如何区分他们的结构呢?直到型循环结构的特征是:1、在执行了一次循环体后,对条件进行判断。2、条件不满足时,就继续执行循环体。3、直到条件满足时终止循环。因此,直到型循环又称“后判断否型”循环。三个条件同时具备,才是直到型循环。当型循环结构的特征是:1、在执行循环体前,对条件进行判断。2、条件满足时执行循环体。3、当条件不满足时终止循环。因此,当型循环又称为“前判断是型”循环。同样,必须三个条件同时满足才是当型循环。直到型循环与当型循环的特征几乎是相反的,因此对于同一个循环结构,如果改变其中的条件为条件的否定,结构作适当的调整,就可以完成直到型循环与当型循环的互相变换。下面举例说明直到型与当型的变换。

例一:设计一个算法求1+3+5+,,,+ 99的值的算法的程序框图及程序。

程序框图:(1)当型循环结构(2) 直到型循环结构

相应的程序:

(1)当型循环 (2)直到型循环 i=1 i=1 S=0 s=0 While i<=100 do

s=s+i s=s+i i=i+2 i=i+1

Wend loop until i>100 Print “s=”; s print “s=”; s end end

例二:理解下面程序框图算法的意义,并写出程序语句。

解:这是一个连续输入自变量的n 个取值,

并输出相应的函数值

的循环程序。但这个程

序框图是“前判断否”型。要写出程序既不用while 型语句,也不能用until 型语句。因为它的程序框图既不是直到型,也不是当型,应对程序框图中虚线框内作适当的调整,如下:

框图三

程序为:

input “n=”; n

i=1

while i<=n input x

43

51y x x =++

Print “y(x=”; x;“)=”; y

Wend End

同学们可以将框图三改为直到型循环结构,并将程序语句改为DO 语句。

例三、理解下面的程序框图的算法的意义,并写出程序语句。

解:这是一个计算从1+2+3+… +i 的值小于等于任意数n 时的最大值

“后判断是型”,要写出程序语句。既

while 型语句,也不能用until 型语句。因为它的程序框图即不

,虚线框内应做适当调整成直到型如下:

程序如下:

input “n=”; n i=1 框图四 do s=s+i i=i+1

loop until s>n print i-1 end

同学们可将框图四改为当型循环结构,并练习写出其对应的程序。

相关文档
最新文档