《while 循环语句.ppt》由会员分享,可在线阅读,更多相关《while 循环语句.ppt(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、循环结构程序设计循环结构程序设计安庆四中 丁贤友while 循环语句p格式:格式:pwhile 布尔表达式布尔表达式dop循环体;循环体;p功能:功能:p()计算布尔表达式的值;p()若布尔表达式的值为true,则转(),否则,转();p()执行循环体;p()转();p()循环结束,执行循环体后面的语句。while 循环语句的执行过程说明:p()在进入循环体之前测试布尔表达式的值,若最初的值为()在进入循环体之前测试布尔表达式的值,若最初的值为false false,则,则根本不进入循环体。根本不进入循环体。p()为了使循环能终止,循环体中一定要有影响布尔表达式的操作,否()为了使循环能终止,
2、循环体中一定要有影响布尔表达式的操作,否则该循环将陷入死循环。则该循环将陷入死循环。p()循环体只能是一条简单的语句或一条复合语句。()循环体只能是一条简单的语句或一条复合语句。p例如:ps:=0;pi:=1;pwhile(i1)是否为质数。p问题分析:问题分析:p在例在例 中已经用中已经用for for 循环语句解决了判断循环语句解决了判断n n 是否质数的问题。当时是否质数的问题。当时我们用我们用 至至n-n-作为因数,重复了作为因数,重复了n-n-次操作。次操作。p但是这个循环次数只对质数是必须的,对于非质数,发现第一个因数,就但是这个循环次数只对质数是必须的,对于非质数,发现第一个因数
3、,就应该结束循环,因为只要有一个应该结束循环,因为只要有一个 和和n n 之外的因数,就足以证明之外的因数,就足以证明n n 不是不是质数,不必再做判断了。于是,判断质数,不必再做判断了。于是,判断i i 是否是是否是n n 的因数的操作只在下面两的因数的操作只在下面两个条件同时成立时进行就足够了:个条件同时成立时进行就足够了:p()没出现整除;()没出现整除;p()()i i 小于等于小于等于sqrtsqrt(n n)。p一旦不满足条件()一旦不满足条件(),退出循环,退出循环,n n 不是质数;而不满足条件(不是质数;而不满足条件()时,时,n n 一定是一个质数。一定是一个质数。p算法描
4、述:算法描述:p()读入()读入n n;p()如果()如果n n ,直接输出,直接输出Yes Yes,否则,否则n 设定因数的初始值设定因数的初始值i i ,n 当当i i sqrtsqrt(n n)且)且n mod i n mod i 时,重复操作:时,重复操作:i i i i ,n 若若n mod i n mod i ,则输出,则输出No No,否则输出,否则输出Yes Yes;p()结束。()结束。pprogram exam412;pVar n,i integer;pbeginpreadln(n);pif n 2 then单独处理单独处理2pwriteln(Yes)pelsepbegin
5、 下面判断大于下面判断大于2 的数是否质数的数是否质数pi 2;pwhile(n mod i 0)and(i sqrt(n)dopi i 1;pif n mod i 0 then writeln(No)由于整除而退出,说明由于整除而退出,说明n不是质数不是质数p else writeln(Yes);一直没有整除,说明;一直没有整除,说明n是质数是质数pend;pend 例:输入若干个字符,它的终止符是例:输入若干个字符,它的终止符是“#”,计算输入的字符中字母,计算输入的字符中字母a出现的次数出现的次数(包括大小写)。(包括大小写)。例:求输入的一个整数的各位数字例:求输入的一个整数的各位数字之和之和例:求两个自然数例:求两个自然数m,n的最小公倍的最小公倍数。数。p()超市收银是一个很有趣的流程:扫描顾客购买的每一种商品的条形码,屏幕会显示该商品的价格,全部扫描结束,按确认键,屏幕上将显示顾客应付的总金额。现在,请你编写一个程序模拟这个收银过程。我们假定输入0,表示扫描结束。p假定商品条形码与价格的对应关系如表所示:p输入:p以空格分隔的条形码编号,以 结束。p输出:p结账金额(保留 位小数)。
限制150内