Pascal程序设计(第3课)-For循环.ppt_第1页
Pascal程序设计(第3课)-For循环.ppt_第2页
Pascal程序设计(第3课)-For循环.ppt_第3页
Pascal程序设计(第3课)-For循环.ppt_第4页
Pascal程序设计(第3课)-For循环.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论