数学当型循环语句.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文档。上传文档
查看更多
数学当型循环语句

数学当型循环语句 篇一:数学当型循环语句 第三节While 循环 While 循环是当型循环。 [例3.8] 前面第一章〔例1.2〕的鸡兔同笼,头30,脚90, 求鸡兔各几只?在此用下面 方法编程求解。 进行递推计算,初始时J=0;计算兔的只数T=H-J; 就做(J=J+1,T=H-J); Pascal程序: Program Exam38; Const H=30; F=90; Var integer;Begin T:=H-J;{初始时让J do{当条件为真就做do 后面的循环体 begininc(J); T:=H-J{计算兔的只数 end;Writeln(“T=“,T,” ReadlnEnd. 程序中采用While 当型循环,While 循环语句的格式为: While 条件式 do 语句; 其中do 后面的“语句”是被重复执行的,称为循环体;若循环体是多个语句, 必须用 begin--end 包起来成为复合语句。 While 循环首先判断条件式,当条件式的值为真就执行do 后面的语句(循环体)。 While 的循环体内也必须包含能改变控制变量取值语句, 影响条件式的值, 最终使条件 式为false 才能结束循环。[例3.9] 输入任一的自然数A, 的最小公倍数。解:这里采用适合计算机查找的方法: 当中的较大者并存放在A 是所求的最小公倍数;当D 不能整除B,就逐次地让D 增加A。例如:A=18, B=12, 步骤如下: 为假时结束循环,并输出D。Pascal 程序: program Exam39; var word;begin write(“input do{当条件为真时就做do 后面的语句 inc(d,a);writeln(“[“, readlnEnd. Pascal 语言的三种基本循环方式, 循环对循环范围有明确规定,且循环变量只能 是递增加1 或递减1 自动计数控制; 而repeat--until 循环和while--do 循环比较灵活, 要对条件表达式的值能控制满足一定要求就能组成循环,但在循环体中必须有改变循环变 量值的语句, 使条件判断(逻辑值)最终为True 或flase, 让循环能够终止。 [例3.10]求自然数A, 的最大公约数。解:采用如下方法步骤: 除以B的余数; (2)当余数<>0 就做n=a; 重复(1)和(2);(3)当余数=0 就结束循环,并输出b 比如a=18,b=12 时,处理步骤为: 结束循环,输出6(余数为零时的b值即是所求的最大公约数)。 此方法称为辗转相除法求最大公约数。 Pascal 程序: program Exam310; var word;begin write(“input dobegin end;writeln(b); readln End. [例3.11]将一根长为369cm 的钢管截成长为69cm 和39cm 两种规格的短料。在这两种规 格的短料至少各截一根的前提下, 如何截才能余料最少。 解:设两种规格的短料分别为: 规格为69cm 根,可在1至(369-39)/69 范围循环取值; 规格为39cm (369-69*X)/39)计算;余料R=369-69*X-39*Y。 设最小余料的初始值min(来自:WWBothW 博威 范文 网:数学当型循环语句)=369; 循环范围内,每一个X值都计算出对应的Y 如果R<min,就将R 存入min, 重复步骤,当x值超出 ((369—39)/ 69) 时结束循环。 Pascal 程序: program exam311; var integer;begin min:=369; a:=(369-39) p[例3.12]甲、乙、丙三人都是业余射击爱好者, 在一次练习中他们枪枪中靶: 甲射了八 发子弹,取得225 环成绩,乙射了七发,也取得225 环;丙只射了六发,同样取得225 环。下面 是成绩表,请编程完成下表中空项的填数。 射子弹数 中50 环有几发 中35环有几发 中25 环有几发 成绩(环) 为发射子弹数,只有8, 三个数字,正好又可用来代表甲、乙、丙; 为中50环的子弹数, 最小为0, 最大为(225 pPascal 程序: program exam312; var integer;begin writeln(“n”:3, dobegin dobegin dobegin c:=n-a-b; begins:=50*a+35*b+25*c; end;inc(b); end; inc(a); end; dec(n); end; readln end. 程序运行结果获得两组填数答案。如果改用for 循环,程序将更加简明: Program Exam312_1; Var Integer;Begin Writeln(“N”:3

文档评论(0)

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

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

1亿VIP精品文档

相关文档