Pasal基的本教程(循环程序)学习指导.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Pascal基本教程 循环程序 for 语句 for 语句用来描述已知重复次数的循环结构。for 语句有两种形式:     (1) for 控制变量:=初值 to 终值 do 语句;     (2) for 控制变量:=初值 downto 终值 do 语句;   第一种形式的for 语句是递增循环。首先将初值赋给控制变量,接着判断控制变量的值是否小于或等于终值,若是,则执行循环体,在执行了循环体之后,自动将控制变量的值该为它的后继值,并重新判断是否小于或等于终值。当控制变量的值大于终值时,退出for循环,执行for语句之后的语句。第一种形式的for 语句是递减循环。首先将初值赋给控制变量,接着判断控制变量的值是否大于或等于终值,若是,则执行循环体,在执行了循环体之后,自动将控制变量的值该为它的前趋值,并重新判断是否大于或等于终值。当控制变量的值小于终值时,退出for循环,执行for语句之后的语句。for 语句中的初值、终值、控制变量的数据都必须是顺序类型。当初值和终值确定后,重复的次数就确定不变了,并且控制变量在重复语句内不能施加任何赋值操作。 例1:计算1+2+3+……+99+100 program jia; var i,sum:integer; begin sum:=0; for i:=1 to 100 do sum:=sum+i; writeln(sum); readln; end. 练习:试打印出1~20的自然数。 解:① 用a代表1~20各数,同时也用a兼作计数,以控制循环次数; ② 让a从1开始; ③ 输出a; ④ a自动计数(加1),如果未超越所规定的循环范围则重复步骤③,否则结束循环。 练习:试打印出1~20的自然数。 Program Exam12; Var a:integer ; Begin for a:=1 to 20 do Writeln (a); Readln End. 例2:打印出30至60的偶数。 方法一: ①设a表示30至60的所有的数,可用for循环列出; ②用式子 a mod 2=0 筛选出其中的偶数并输出。 例2:打印出30至60的偶数。 Program ex2; Var a:integer; Begin For a := 30 to 60 do If (a mod 2=0) then writeln(a); Readln; End. 例2:打印出30至60的偶数。 方法二:我们知道,在式子a=2*n中,若n取自然数1、2、3、…,时,则a依次得到偶数2、4、6、…。因此要想得到30至60的偶数,就可以让上面式子中的n取15至30的自然数就可以了。所以本题还可以按以下步骤处理: ①设n表示15至30的所有自然数,可用for循环列出; ②用式子 a := 2*n 求出其中的偶数; ③将结果输出至屏幕。 例2:打印出30至60的偶数。 Program ex32; Begin For n := 15 to 30 do Begin a := 2*n; Writeln(a); End; Readln; End. 例3:一个两位数x,将它的个位数字与十位数字对调后得到一个新数y,此时y恰好比x大36,请编程求出所有这样的两位数。 解: ① 用for循环列举出所有的两位数,x为循环变量; ② 用公式a:= x div 10分离出x的十位数字; ③ 用公式b:= x mod 10分离出x的个位数字; ④ 用公式y:= b*10+a合成新数y; ⑤ 用式子y-x=36筛选出符合条件的数x并输出。 例3:一个两位数x,将它的个位数字与十位数字对调后得到一个新数y,此时y恰好比x大36,请编程求出所有这样的两位数。 Program lt3; var x,a,b,y:integer; Begin For x := 10 to 99 do Begin a := x div 10; b := x mod 10; y := b*10+a; if y-x=36 then writeln(x); End; Readln; End. 练习2:把整数3025从中剪开分为30和25两个数,此时再将这两数之和平方,(30+25)2=3025计算结果又等于原数。求所有符合这样条件的四位数。 解:设符合条件的四位数为N,它应当是一个完全平方数,用(a*a)表示。 ① 为了确保N=(a*a)在四位数(1000~9999)范围内,可确定a在32~99循环; ② 计算N=a*a;将四位数N拆分为两个数n1和n2; ③ 若满足

文档评论(0)

phl805 + 关注
实名认证
文档贡献者

建筑从业资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年05月12日上传了建筑从业资格证

1亿VIP精品文档

相关文档