pascal语言编程之FOR循环语句课件_第1页
pascal语言编程之FOR循环语句课件_第2页
pascal语言编程之FOR循环语句课件_第3页
pascal语言编程之FOR循环语句课件_第4页
pascal语言编程之FOR循环语句课件_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

第四章循环结构程序设计

第一节循环语句(for语句)2016年11月在实际应用中,会经常遇到许多有规律性的重复运算,这就需要掌握本章所介绍的循环结构程序设计。在pascal语言中,循环结构程序通常由三种的循环语句来实现。分别为for循环、当循环和直到循环。将一组重复执行的语句成为循环体,而控制重复执行或终止执行由重复终止条件决定。重复语句是由循环体及重复终止条件两部分组成。例:求1+2+3+..+N的和。如何编程呢?第一节循环语句(for语句)一、for语句的一般格式for<控制变量>:=<表达式1>to<表达式2>do<语句>;for<控制变量>:=<表达式1>downto<表达式2>do<语句>;其中for、to、downto和do是pascal保留字。表达式1与表达式2的值称为初值和终值。循环的语句格式:for变量名:=初值to终值do语句;例:s:=0;

fori:=1to10dos:=s+i;writeln(‘s=’,s);二、for语句执行过程1.先将初值赋给左边的变量(称为循环控制变量);2.判断循环控制变量的值是否已“超过”终值,如已超过,则跳到步骤6;3.如果未超过终值,则执行do后面的语句(称为循环体);4.循环变量递增(对to)或递减(对downto)1;5.返回步骤2;(重新返回判断循环控制变量是否超出);6.循环结束,执行for循环下面的一个语句。例:求1+2+3+..+N的和。如何编程呢?

源程序:programex;vars,i,n:integer;beginwrite(‘entern=’);read(n);s:=0;fori:=1tondos:=s+i;writeln(s:5);end.四、应用举例例1.输出1-100之间的所有偶数。源程序:programex;vari:integer;beginfori:=1to100doifimod2=0thenwriteln(i:5);end.

例2.求N!=1*2*3*…*N,这里N不大于10。(n!为n的阶乘运算)分析:程序要先输入N,然后从1累乘到N。源程序:programjiecheng;vari,n:integer;s:longint;beginwrite(‘entern=‘);read(n);s:=1;fori:=2tondos:=s*i;write(n,’!=’,s);end.数据类型的长度:Integer

-32768..32767longint

-2147483648..2147483647防止因数据长度不够,而造成溢出错误!

例3、一个两位数x,将它的个位数字与十位数字对调后得到一个新数y,此时y恰好比x大36,请编程求出所有这样的两位数。分析:①用for循环列举出所有的两位数,x为循环变量;(两位数,数量确定,

循环次数随之确定fori:=10to99)②用公式a:=xdiv10分离出x的十位数字;(div取整运算)③用公式b:=xmod10分离出x的个位数字;(mod求余运算)④用公式y:=b*10+a合成新数y;⑤用式子y-x=36筛选出符合条件的数x并输出。思考:1.最小的两位数

;最大的两位数:

;2.如何得到十位和个位上的数?3.怎样合成新数?4.怎样确定符合条件的两位数?例4:输入一个自然数,求这个自然数的所有约数之和。知识点睛:

约数,又称因数。整数a除以整数b(b≠0)除得的商正好是整数而没有余数,我们就说a能被b整除,或b能整除a。a称为b的倍数,b称为a的约数。分析:1.从键盘中读入一个自然数;2.求该自然数的约数,从1到x逐个判断,看xmody是否为0;3.将约数逐个相加(累加);例5、把整数3025从中剪开分为30和25两个数,此时再将这两数之和平方,(30+25)2=3025计算结果又等于原数。求所有符合这样条件的四位数。分析:1.确定四位数的取值范围1000~9999,从而确定循环次数;2.设法将四位数分开,即千位与百位组成一个两位数,十位与个位组成一个两位数;3.将这两个两位数相加,求平方,并与原四位数比较看是否相等练习:1.计算100之内所有的奇数之和。2.求菲波拉契数列a0,a1,a2,……a20。a0=0,a1=1,a2=a1+a0,a3=a2+a1,……,an=an-1+an-2;如0,1,1,2,3,5,8,13,21,……3.求20个数中的最大值和最小值。4.求s=1+1/2+1/3+…+1/1005.按字母表的顺序,从字母A到Z顺序打印输出。6.输入10

温馨提示

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

评论

0/150

提交评论