高中数学第一章算法初步1.2基本算法语句(第3课时)课堂探究新人教A版必修3
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高中数学第一章算法初步 1.2 基本算法语句(第3课时)课堂探
究新人教A版必修3
两种循环语句的区别
剖析:(1)直到型循环语句是先执行(循环体),后判断(条件),而当型循环是先判断(条件),后执行(循环体).
(2)直到型循环语句是条件不满足时执行循环体,条件满足时结束循环;而当型循环是当条件满足时执行循环体,不满足时结束循环.
(3)直到型循环结构至少执行一次循环体,而当型循环结构可能一次也不执行循环体.
(4)在设计程序时,一般说来,这两种语句用哪一种都可以,但在某种限定条件下,有时用WHILE语句较好,有时用UNTIL语句较好.
(5)从对应的程序框图来加以区分,它们对应的程序框图如图(1)和图(2)所示.
直到型循环结构
(1)
当型循环结构
(2)
题型一理解循环语句
【例题1】下列程序执行后输出的结果是( )
n=5
s=0
WHILE s<14
s=s+n
n=n-1
WEND
PRINT n
END
A.-1 B.0 C.1 D.2
解析:该程序的运行过程是:n=5;s=0;s=0<14成立;s=0+5=5;n=5-1=4;s=5<14成立;s=5+4=9;n=4-1=3;s=9<14成立;s=9+3=12;n=3-1=2;s =12<14成立;s=12+2=14;n=2-1=1;s=14<14不成立,输出n=1.
答案:C
反思判断含有循环语句的程序的输出结果时,按所给的程序依次执行各语句,要注意循环语句的终止条件,WHILE语句终止循环时是条件不成立,而UNTIL语句终止循环时是条件成立.
题型二编写程序
【例题2】设计一个算法,求1 000以内能被3整除的正整数的和,写出算法分析,画出程序框图,并编写程序.
分析:第1个能被3整除的正整数为3,以后每个数比前一个数大3,最后一个数要比1 000小,因此要用循环结构来设计算法.
解:算法分析:
第一步,令i=3,S=0.
第二步,若i<1 000,则执行第三步;否则,输出S.
第三步,S=S+i,i=i+3,返回第二步.
程序框图如图所示.
程序如下:
i =3
S =0
WHILE i <1 000
S =S +i
i =i +3
WEND
PRINT S
END
反思 设计含有重复步骤的算法,常利用循环语句来编写程序,其步骤是:①设计算法分析,要注意累加(乘)变量和计数变量的初始值;②画出含有循环结构的程序框图;③用循环语句编写程序.当型循环语句和直到型循环语句一般可以相互转换,如本题也可用直到型循环语句来设计.
题型三 易错辨析
【例题3】对任意正整数n ,设计一个程序求S =1+12+13+ (1)
的值. 错解:程序如下:
INPUT n
i =1
S =0
DO
i =i +1
S =S +1/i
LOOP UNTIL i >=n
PRINT S
END
错因分析:第一次执行S =S +1/i 时,i 的初始值经i =i +1后,已经变为2,则S =0+12,这样所求的S =12+13+...+1n ,而不是S =1+12+13+ (1)
,其原因是先执行i =i +1,后执行S =S +1/i ,要把i 的初始值变为0才行.
正解:程序如下:
INPUT n
i =0
S =0
DO
i =i +1
S =S +1/i
LOOP UNTIL i >=n
PRINT S
END