电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

高中信息技术 pascal教程05 第五课 基本语句(三)教案-人教版高中全册信息技术教案VIP免费

高中信息技术 pascal教程05 第五课 基本语句(三)教案-人教版高中全册信息技术教案_第1页
1/10
高中信息技术 pascal教程05 第五课 基本语句(三)教案-人教版高中全册信息技术教案_第2页
2/10
高中信息技术 pascal教程05 第五课 基本语句(三)教案-人教版高中全册信息技术教案_第3页
3/10
第五课基本语句(三)§5.1FOR语句FOR语句用于循环次数已知的情况,有两种形式:FOR<控制变量>:=<初值>TO<终值>DO<语句>;FOR<控制变量>:=<初值>DOWNTO<终值>DO<语句>;FOR语句的两种形式的逻辑功能图:控制变量控制重复的次数,它从初值到终值自动顺序取值(分递增和递减两种顺序),每取一次值就执行一次循环体,直到控制变量的值大于(对于for-to-do)或小于(对于for-downto-to)终值。【例】计算1+2+3+4+……+100之和。分析:设变量s为累加和,初值为0,然后依次加上1,2,3,……,一直到100;输出s的值。算法:①s:=0;②s:=s+1;s:=s+2;……下一条语句控制变量:=初值控制变量=初值+1循环体变量<=终值falsetrue(a)TO情况下一条语句控制变量:=初值控制变量=初值-1循环体变量>=终值falsetrue(a)DOWNTO情况s:=s+100;③输出s步骤②中,要重复写上100个赋值语句,其变化只是加号后的数值。因此,我们可以用一个for语句来代替这100个语句:②fori:=1to100dos:=s+i;程序:s为累加和,初值为0;i为控制变量,初值为1,终值为100;第一次执行循环体时,i的值为1,s:=s+i→s:=0+1,执行后s=1;第二次执行循环体时,i的值变为2,s:=s+i→s:=1+2,执行后s=3;第三次执行循环体时,i的值变为3,s:=s+i→s:=3+3,执行后s=6;第四次…………【例】读入n个数,计算它们的和与积以及平均值。分析:读入n,n为整型变量;设每次读入的数放置在变量x中,和、积以及平均值分别用sum,mul,ave存放,它们都为实型变量。为了求sum,mul与ave,可以利用一个循环,让它循环n次,每循环一次,1i0s1+012i1s2+13programsample3611;vari,s:integer;begins:=0;{s置初值0}fori:=1to100dos:=s+i;读一个新的x值,并把它分别加到sum上,乘到mul上。注意,在循环前应将sum置为0,将mul置为1。循环结束后,将sum除以n,求出ave,最后输出sum,mul,ave。算法:①读入n;置sum初值为0,mul为1;②forj:=1tondo1.读入x2.将x累加到sum上:sum:=sum+x;3.将x累乘到mul上:mul:=mul+x;③计算ave:ave:=sum/n;④输出sum,mul,ave程序:programsample3612;varx,sum,mul,ave:real;{sum为和、mul为积、ave为平均值}j,n:integer;Beginreadln(n);{读入n}sum:=0;mul:=1;{sum、mul置初值}forj:=1tondo{循环n次,j为控制变量}begin{循环体内的语句不止一句,所以要用begin和end括起}read(x);{每次读入新的x}sum:=sum+x;{将x累加到sum上}mul:=mul*x;{将x累乘到mul上}end;ave:=sum/n;{求平均值ave}writeln(’sum=’,sum,’mul=’,mul,’ave=’,ave);End.累加求和之前,累加单元(如sum)一定要清0,否则它可能是一个任意数,这样在第一次累加时就不对了。同理,在累乘求积前,累乘单元(如mul)必须置初值1,否则会出错。清0和置1,一定要在循环前做,在循环中执行累加和累乘。(思考:否则会怎样?)循环体中如果有多个语句,必须用begin和end括起作为一个语句(复合语句)。【注意】1.初值和终值可以是表达式。控制变量的类型必须与初值、终值的类型相同。控制变量必须是有序类型,常用整型、字符型,不允许为实型变量。2.FOR语句的步长是一定的,虽Pascal允许在循环体内修改控制变量,但一般不赞成这样做,在循环体中改变控制变量往往会造成混乱。如:fork:=1to100dobegink:=3;{循环体中改变了循环变量k的值}……end.3.当FOR语句执行完毕后,控制变量的值无定义,因此FOR语句的后续语句不能认为控制变量的值是终值而加以利用。4.当初值超过终值时,不执行循环,循环次数为0。如:foraa:=10to1do……{将不执行循环}§5.1FOR语句的嵌套在实际应用中,可能在循环体内再包含有重复语句,这就出现了嵌套问题。以上三种循环语句都允许自己之间或相互之间嵌套,这样一层套一层便形成了多重循环。下面是一个二重循环语句:fori:=1to3doforj:=1to4dobegink:=i*j;writeln(’i=’,i,’j=’,j,’k=’,k);end;可见,内层的重复语句是包含它的外层重复语句的一个循环体。使用多重循环时,必须注意:内层循环必须完全被包含在外层循环体内,内外循环不得循环骑跨,对嵌套的FOR语...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

高中信息技术 pascal教程05 第五课 基本语句(三)教案-人教版高中全册信息技术教案

您可能关注的文档

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部