广东省汕头市金山中学pascal教程05-高一奥林匹克信息学系列教程(基础篇).

广东省汕头市金山中学pascal教程05-高一奥林匹克信息学系列教程(基础篇).

ID:42778805

大小:284.55 KB

页数:9页

时间:2019-09-22

广东省汕头市金山中学pascal教程05-高一奥林匹克信息学系列教程(基础篇)._第1页
广东省汕头市金山中学pascal教程05-高一奥林匹克信息学系列教程(基础篇)._第2页
广东省汕头市金山中学pascal教程05-高一奥林匹克信息学系列教程(基础篇)._第3页
广东省汕头市金山中学pascal教程05-高一奥林匹克信息学系列教程(基础篇)._第4页
广东省汕头市金山中学pascal教程05-高一奥林匹克信息学系列教程(基础篇)._第5页
资源描述:

《广东省汕头市金山中学pascal教程05-高一奥林匹克信息学系列教程(基础篇).》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第五礫基瘁语句(三丿§51FOR语句FOR语句用于循环次数已知的情况,有两种形式:FORv控制变量>:=v初值〉TOv终值〉DOv语句〉;FORv控制变量〉:=v初值〉DOWNTOv终值〉DOv语句〉;FOR语句的两种形式的逻辑功能图:(a)TO情况(a)DOWNTO情况控制变量控制重复的次数,它从初值到终值口动顺序取值(分递增和递减两种顺序),每叹一次值就执行一•次循环体,直到控制变量的值大于(对于for-to-do)或小于(对于for—donto—to)终值。【例】计算1+2+3+4+……+100之和。分析:设变量s为累加和,初值为0,然后依次加上1,2,3,……,一直到100;输出s的

2、值。算法:①s:=0;②S:=S+1;s:=s+2;s:=s+100;③输出s步骤②,要重复写上100个赋值语句,其变化只是加号后的数值。因此,我们可以用一个for语句代替这100个语句:②fori:=1to100dos:=s+i;程序:{s置初值0}do{输出累加和s}programsample3611;vari,s:integer;begins:=0;fori:=1to100s:=s+i;ritelnCs=s);end+s为累加和,初值为0;i为控制变量,初值为1,终值为10();3第一次执行循环体时,i的值为1,s:=s+ifs:=0+1,执行后s=l;第二次执行循环体吋,i的值变为

3、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,mill与ave,可以利用一个循环,讣它循环n次,每循环一次,读一个新的x值,并把它分别加到sum上,乘到mul上。注意,在循环前应将sum置为0,将mul置为1。循环结朿后,将sum除以n,求出ave,最后输出sum,mul,ave。算法:①读入n;置sum初值为0,mul为

4、1;②forj:=1tondo1.读入x2.将x累加到sum_t:sum:=sum4-x;3.将x累乘到mul_h:mul:=mul+x:(3)计算ave:ave:=sum/n:②输出sum,mul,avereadln(n):sum:=0;mul:=1;forj:=1tondosum:=sum+x;{将x累加到sum上}mul:=mulx;{将・x累乘至ljmul」:}程序:programsample3612;varx,sum,mul,ave:real;{sum为和.mul为积、ave为平均值}j,n:integer;Begin{读入n}{sum、mul置初值}{循环n次,j为控制变量}be

5、gin{循环体内的语句不止一句,所以要用begin和end括起}read(x);{每次读入新的x}end;ave:=sum/n;{求平均值ave}ritein(,sum=,,summul=mulave=ave);End.+累加求和之前,累加单元(如sum)—淀要清0,否则它可能是一个任意数,这样在第一次累加时就不对了。同理,在累乘求积前,累乘单元(如mul)必须置初值1,否则会出错。清0和置1,一定要在循环前做,在循环执行累加和累乘。(思考:否则会怎样?)循环体如果有多个语句,必须用begin^11end括起作为一个语句(复合语句)。【注意】1.初值和终值可以是表达式。控制变量的类型必须

6、与初值、终值的类型相同。控制变量必须是冇序类型,常用整型、字符型,不允许为实型变虽。2.FOR语句的步长是一定的,虽Pascal允许在循环体内修改控制变量,但一般不赞成这样做,在循环体改变控制变量往往会造成混乱。如:fork:=1to10()dobegink:=3;V{循环体改变了循环变量k的值}end3.当FOR语句执行完毕后,控制变量的值无定义,因此FOR语句的后续语句不能认为•••控制变量的值是终值而加以利用。4.当初值超过终值时,不执行循坏,循环次数为()。女口:foraa:=1()to1do{将不执行循环}§51FOR语句的嵌套在实际应用,可能在循环体内再包含有重复语句,这就出现了

7、嵌套问题。以上三种循环语句都允许自己Z间或相互Z间嵌套,这样一层套一层便形成了多璽循环。下血是一个二重循环语句:f内层II外K-rfori:=1to3doforj:=1to4dobegink:=ij;riteln(,i=i/j二',j,'k二',k);end;可见,内层的重复语句是包含它的外层重复语句的一个循环体。使用多重循环时,必须注;®内层循环必须完全被包含在外层循环体内,内外循环不得循环骑跨,对嵌套的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。