ascal程序设计(第3课)-For循环.ppt

上传人:max****ui 文档编号:11494091 上传时间:2020-04-25 格式:PPT 页数:20 大小:284.16KB
返回 下载 相关 举报
ascal程序设计(第3课)-For循环.ppt_第1页
第1页 / 共20页
ascal程序设计(第3课)-For循环.ppt_第2页
第2页 / 共20页
ascal程序设计(第3课)-For循环.ppt_第3页
第3页 / 共20页
点击查看更多>>
资源描述
Pascal语言,第3课,【回顾】,程序=数据结构+算法;算法设计遵循的原则:“自顶向下逐步求精”顺序结构:按照书写顺序执行的语句。实现选择结构的语句:条件语句(If语句)二选一;、IF条件、IF条件THEN语句1THEN语句;ELSE语句;情况语句(case语句)多选一;Caseof:;:;End,复合语句是一个以begin开头,以end结束的若干条语句组成的语句序列。复合If语句:在if语句中,then和else后的语句也可能是if语句,此时称为if语句的嵌套,或复合if语句。IF条件1THEN语句1ELSEIF条件2THEN语句2ELSE语句3;,【回顾】,【循环结构】,循环结构:利用循环结构语句,我们可以只编写少量的语句,让计算机重复执行多次,从而完成大量同类的计算。在Pascal中,实现循环程序设计的语句有三种:For语句:规定循环次数的循环形式;While语句:满足条件时执行循环的形式;Repeat语句:反复执行直到满足条件停止的循环形式。,【For语句循环结构】,在Pascal中,实现循环结构的For语句的一般形式为:For:=ToDo,程序的执行过程为:,(1)将初值赋给循环变量;(2)将循环变量与终值比较,小于等于终值时,执行循环体;(3)执行完循环体,将循环变量的后继值赋给循环变量;(4)继续与终值进行比较,若仍小于等于终值,再次执行循环体;(5)直到循环变量的值大于终值,结束For语句;(6)执行For语句后面的语句。,【For语句循环结构】,For语句还有另外的一种形式:For:=DowntoDo这是一个从较大值递减到终值的循环。,程序的执行过程为:,(1)将初值赋给循环变量;(2)将循环变量与终值比较,大于等于终值时,执行循环体;(3)执行完循环体,将循环变量的前导值赋给循环变量;(4)继续与终值进行比较,若仍大于等于终值,再次执行循环体;(5)直到循环变量的值小于终值,结束For语句;(6)执行For语句后面的语句。,For:=ToDo注意事项:,(1)循环变量的初值和终值可以是常量、变量或表达式。(2)循环变量的类型必须与初值和终值相同,且只能是整型、字符型、布尔型、枚举型、子界型等有序类型。(3)循环体如果是多行语句,必须使用复合语句。(4)在循环体中对初值和终值表达式的改变不会影响循环次数及循环变量的取值。不允许在循环体中用任何语句改变循环变量的值。(5)从For语句退出时,循环变量的值是没有定义的,不得使用。(6)如果初值大于终值,循环体将根本不执行。,例1:计算1+2+3+100之和。,分析:可以使用循环,每循环一次,将循环变量依次加到s上就得到了1到100的和。那么在循环前应该做的工作就是:将s值置为0(想一想,为什么?)。,一级算法:1、将存放和的变量s置为0;2、每循环一次,就将循环变量的值加到s上;3、输出s。二级求精(第2步)2-1、Fori:=1to100do2-2、s:=s+i;,例1:计算1+2+3+100之和。,参考程序:Programb1(input,output);Vari,s:integer;Begins:=0;Fori:=1to100dos:=s+i;writeln(s);Readln;能购让你运行结束前看到运行结果End.,例2:读入10个数,计算它们的和、积、平均值。,分析:可以使用循环,每循环一次,读入一个数值,分别加到s和乘到m上,最后计算平均值。循环前应该做的工作就是:将s值置为0,将m值置为1。,一级算法:1、将存放和的变量s置为0,存放乘积的变量m置为1;2、每循环一次,就将读入的值加到s并乘到m上;3、计算平均值a;(a:=s/10)4、输出s,m,a。二级求精(第2步)2-1、Fori:=1to10do2-2、依次读入每个数,read(x);2-3、将x加到s上,s:=s+x;2-4、将x乘到m上,m:=m*x;,Programb2(input,output);Varx,s,m,a:real;i:integer;Begins:=0;m:=1;Fori:=1to10dobeginread(x);s:=s+x;m:=m*x;end;Fora:=s/10;writeln(sum=,s,mul=,m,ave=,a);End.,例2:读入10个数,计算它们的和、积、平均值。,参考程序:,在累加之前,累加单元一定要清0,否则它原来可能是任意数,这样在第一次累加时就不对了。同样,累乘求积前,累乘单元一定要置1,否则它原来可能是任意数,这样在第一次累乘时就不对了。清0和置1必须在循环之前做。,注意,例3:输入20个数,求出其中的最大值和最小值。,分析:首先将第一个数赋给max和min,以后每读入一个数都与max和min进行比较,将较大的数存入max,将较小的数存入min,这样max中始终存放的是最大的数,min中始终存放的是最小的数。,算法:1、读入第一个数,将它赋给max和min;2、Fori:=2to20do;begin3、读入x;4、Ifxmax5、Thenmax:=x6、ElseIfxmaxThenmax:=xElseIfx=0)and(x=85)thena:=a+1elseif(x=60)thenb:=b+1elsec:=c+1;end;Write(a,b,c);End.,Programlianxi1(input,output);Vari:integer;x,y:real;BeginWriteln(x,exp(x),ln(x);Fori:=1to10dobeginx:=exp(i);y:=ln(i);Writeln(i,x:13,y:13);end;readln;End.,练习3:计算ex,lnx。其中x=1,2,3,10。,返回,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!