[其它考试]while repeat 循环结构.ppt
《[其它考试]while repeat 循环结构.ppt》由会员分享,可在线阅读,更多相关《[其它考试]while repeat 循环结构.ppt(41页珍藏版)》请在三一办公上搜索。
1、BEA Confidential.|1,2、While语句,For语句用来描述已经确定重复次数的循环结构,但有时候我们会遇到循环次数未知的情况,这种循环称为条件循环。,While语句用于“当满足一定条件时进行循环”的情况,因此也称为“当型循环”。语法格式:While do;,注:如果循环体是若干条语句需在循环体前面加begin,后面加end。,BEA Confidential.|2,while语句的形式为:while do;其意义为:当布尔表达式的值为true时,执行do后面的语句。while语句的执行过程为:判断布尔表达式的值,如果其值为真,执行步骤2,否则执行步骤4;执行循环体语句(do后
2、面的语句);返回步骤1;结束循环,执行while的下一个语句。说明:这里while和do为保留字,while语句的特点是先判断,BEA Confidential.|3,例:输出1100之间的奇数,Program ex;var x,y:integer;Begin for x:=1 to 50 do begin y:=x*2-1;write(y:4);end;writeln;End.,Program ex;var x:integer;Begin x:=1;while x100 do begin write(x:4);x:=x+2;end;writeln;End.,for语句,while语句,BEA
3、 Confidential.|4,S=2+4+6+8+100;S=1+1/2+1/3+1/4+1/100;S=12+22+32+42+1002;,练习:用while 语句编程算出以下算式:,BEA Confidential.|5,样程:,program ex(input,output);var i,s,x:integer;begin s:=0;i:=2;while i=100 do begin s:=s+i;i:=i+2;end;writeln(s);end.,S=2+4+6+8+100;,BEA Confidential.|6,样程:,program ex(input,output);var
4、 i:integer;s,x:real;begin s:=0;i:=1;while i=100 do begin x:=1/i;s:=s+x;i:=i+1;end;writeln(s:0:3);end.,S=1+1/2+1/3+1/4+1/100;,BEA Confidential.|7,样程:,program ex(input,output);var i:integer;s,x:longint;begin s:=0;i:=12;while i=1002 do begin s:=s+i;i:=i+10;end;writeln(s);end.,S=12+22+32+42+1002;,BEA Co
5、nfidential.|8,例:计算S=1+3+5+n(n为大于1的奇数),Program sums;VAR odds,n,sum:integer;BEGIN write(input a odd data:);readln(n);输入一个奇数 sum:=0;odds:=1;while odds=n do BEGIN sum:=sum+odds;odds:=odds+2;END;writeln(sum);END.,书本例题P38-N3-22,BEA Confidential.|9,分析:求两个正整数的最大公约数采用的辗转相除法求解。以下是辗转的算法:分别用m,n,r表示被除数、除数、余数。求m/
6、n的余数r.若r=0,则n为最大公约数.若r0,执行第步.将n的值放在m中,将r的值放在n中.返回重新执行第步。,例:用尼考曼彻斯法求两个自然数a和b的最大公约数,BEA Confidential.|10,程序如下:program ex4_4;var m,n,t,a,b,r:integer;beginwrite(Input m,n:);readln(m,n);a:=m;b:=n;r:=a mod b;while r0 dobegin a:=b;b:=r;r:=a mod b;end;writeln(The greatest common divide is:,b:8);end.,BEA Con
7、fidential.|11,例:输入一个整数,求其各位数字之和。,BEA Confidential.|12,练习:输入一串字符,以回车符结束,输出其中字母个数与数字个数。,分析:确定使用while循环.循环条件是:输入的字符不是回车符(即ord(ch)13)定义数据:ch:char;num1,num2:integer;,BEA Confidential.|13,样程:,Program ex;Var ch:char;num1,num2:integer;Begin num1:=0;num2:=0;read(ch);while ord(ch)13 do begin if(ch=a)and(ch=A)
8、and(ch=0)and(ch=9)then num2:=num2+1;end;writeln(number of letters:,num1);writeln(number of digit:,num2)End.,read(ch);,BEA Confidential.|14,例:利用格里高利公式求,直到最后一项的绝对值小于10的负6次方为止,BEA Confidential.|15,var i,sign:integer;pi:real;begin pi:=0;sign:=1;i:=1;while 1/(i*2-1)=1e-6 do begin pi:=pi+1/(i*2-1)*sign;si
9、gn:=sign*(-1);i:=i+1;end;pi:=pi*4;writeln(pi);end.,BEA Confidential.|16,3、repeat语句,repeat语句于“重复执行循环体。一直到指定的条件为真时为止”的循环结构,它又被称为“直到型循环”。,语法格式:,Repeat;until;,不需要begin end,BEA Confidential.|17,看下列程序的功能:Program Exam12;Var a:byte;Begin a:=1;repeat Writeln(a);a:=a+1;Until a200;Readln;End.,看下列程序的功能:Program
10、Exam12;Var a:byte;Begin a:=1;while a=200 do begin Writeln(a);a:=a+1;end;Readln;End.,BEA Confidential.|18,例:计算S=1+3+5+n(n为大于1 的奇数,用repeat语句)Program ch321;VAR odds,n,sum:integer;BEGIN write(input a odd data:);readln(n);sum:=0;odds:=1;repeat sum:=sum+odds;odds:=odds+2;until odds n;writeln(sum);END.,BEA
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 其它考试 其它考试while repeat 循环结构 其它 考试 while 循环 结构

链接地址:https://www.31ppt.com/p-6034173.html