收藏 分销(赏)

Pascal语言基础知识-循环.ppt

上传人:精**** 文档编号:10294126 上传时间:2025-05-18 格式:PPT 页数:25 大小:433.54KB
下载 相关 举报
Pascal语言基础知识-循环.ppt_第1页
第1页 / 共25页
Pascal语言基础知识-循环.ppt_第2页
第2页 / 共25页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,程序的三种基本结构,一、顺序结构,二、选择结构(if、case),三、循环结构(for、while、repeat),例:输入三角形的三条边a,b,c,输出三角形的面积。(a,b,c是正整数,、,=,、,、,=,、,=,、,补充,3case 语句:分情况语句(多分支语句),格式:case 表达式 of,常数表1:语句1;,常数表2:语句2;,常数表n:语句n;,else 语句n+1,end;,功能:执行过程,说明:1)end 与case 对应,2)表达式的类型通常是整型、字符型,3)常量表是常量,其类型与表达式的类型要一致。常量表中的常量不能重复。,【例4】:输入两个数(均不为零)及一个算术运算符,输出其运算的结果,程序代码:,program ex3(input,output);,var,x,y,s:real;,ch:char;,begin,writeln(input x,readln(x,y);,readln(ch);,case ch of,+:s:=x+y;,-:s:=x-y;,*:s:=x*y;,/:s:=x/y,end;,writeln(x,ch,y,=,s),end.,三、循环结构,循环结构的三种形式:,循环结构程序通常由三种的循环语句来实现。它们分别为,FOR循环、当循环while、直到repeat循环。,通常将一组重复执行的语句称为循环体,而控制重复执行或终止执行由重复终止条件决定。,因此,重复语句是由,循环体,及,重复终止条件,两部分组成。,1for语句,1for语句:(“计数循环”):就是将规定循环体重复执行的次数。,格式:,for 控制变量:=初值 to 终值 do,循环体语句;,for 控制变量:=初值 downto 终值 do,循环体语句;,2、for语句执行过程,先将初值赋给左边的变量(称为循环控制变量);,判断循环控制变量的值是否已“超过”终值,如已超过,则跳到步骤;,如果末超过终值,则执行do后面的那个语句(称为循环体);,循环变量递增(对to)或递减(对downto),;,返回步骤;,循环结束,执行,for,循环下面的一个语句。,3、说明:,1)初值和终值可以是表达式,控制变量和初值、终值的类型相同,且必须是整型、布尔型和字符型等顺序类型,不能为实型。,2)递增按succ函数规律变化,递减按pred函数规律变化,整型按数值大小变化,如果为字符型量,按ASCII码表的顺序计算。,3)初值和终值在循环之前计算,重复过程中,其值不受影响;不得在循环语句中对控制变量进行赋值。,4)当初值超过终值,不执行循环,循环次数为零。,【例1】,:,计算1+2+3+4+100之和。,算法分析:,对于求和,我们使用的是累加的办法。,程序代码:,program ex1(input,output);,var,i,sum:integer;,begin,sum:=0;,for i:=1 to 100 do,sum:=sum+I;,writeln(sum=,sum),end.,补充说明:类似sum迭加变量这样的功能称为“,累加器,”;类似i这样的变量称为“计数器”;“计数器”和“累加器”是在程序中经常使用的基本操作语句。,【例3】,:,键入一个自然数,输出其所有约数,计算出这些约数之和并输出。,算法分析:解决这一问题的关键是找出约数,也就是判定一数能否被另一数整除。可以用x mod y=0,来找出所有约数。,程序代码:,program ex3(input,output);,var,i,x,y,sum:integer;,begin,write(x=);read(x);,sum:=0;i:=0;,for y:=1 to x do,if x mod y=0,then begin,write(y:8);,i:=i+1;,if i mod 5=0 then writeln;,sum:=sum+y,end;,writeln(sum=,sum),end.,If,语,句,For语句,If语句作为For语句的循环体,【例4】,:,编程找出四位整数abcd中满足下述关系的数。,(ab+cd)(ab+cd)=abcd,算法分析:这道题属于搜索问题,因为是四位整数,其范围从10009999,所求的数究竟在哪里,无法确定,只有在这个范围内从小到大一个一个进行搜索,对每一个数,看它的高两位数与低两位数和的平方是否为该数。,高两位数:abcd div 100=ab,低两位数:abcd mod 100=cd,程序代码:,program ex4(input,output);,var,i,m,n,k:integer;,begin,for i:=1000 to 9999 do,begin,m:=i div 100;,n:=i mod 100;,k:=(m+n)*(m+n);,If k=i then write(I:8),end,end.,补充说明:,以上用的方法也叫“枚举法”,又称“穷举法”。它是用计算机解题的一种常用的办法。它的基本思路是:一一枚举各种可能的情况,并判断哪一种可能是符合要求的解。方法虽然很笨,然而与计算机高速的处理能力相结合,也不失为一种较有用的方法,2while语句:,对于for循环有时也称为计数循环。适合用于事先知道循环次数.,当循环次数未知,只能根据某一条件来决定是否进行循环时,用while 语句实现循环要更方便。,(“当型循环”):当条件满足时反复执行循环体。,格式:while 布尔表达式 do 语句;,执行过程:,while语句的执行过程为:,判断布尔表达式的值,如果其值为真,执行步骤2,否则执行步骤4;,执行循环体语句(do后面的语句);,返回步骤1;,结束循环,执行while的下一个语句。,说明:,1)为了是while循环能正常终止,布尔表达式中的变量必须在循环体中的某语句中有所改变,即有可能是布尔表达式的值为假,使循环结束,否则将出现死循环。,2)循环体中的语句一般是多条语句,用begin和end使其成为一条复合语句。,【例5】,:,输出1100之间的奇数。,程序代码:,program ex5(input,output);,var,x:integer;,begin,x:=1;,while xmax then max:=x;,m:=m+1,until m=n-1;,writeln(the max num is:,max),end.,三、多重循环,【例9】,:,求100999中的水仙花数。(若三位数abc,abc=a,3,+b,3,+c,3,则称为水仙花数。如:153,1,3,+5,3,+3,3,=1+125+27=153),算法设计:采用三重循环求解,用for循环。,程序代码:,program ex9(input,output);,var,a,b,c:integer;,begin,for a:=1 to 9 do,for b:=0 to 9 do,for c:=0 to 9 do,if a*a*a+b*b*b+c*c*c=a*100+b*10+c,then write(a*100+b*10+c:6);,writeln,end.,【例10】,:,试编写程序打印输出乘法表。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服