fortran课件 第五章.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
fortran课件 第五章

Fortran 95 程序设计 第五章 循 环 第五章 循 环 循环:可以自动重复地执行某一端程序代码 有两种格式: 1)固定重复程序代码n次; 2)不固定次数地重复程序代码,直到出现跳出循环的命令为止。 §5-1 DO 循环:自动连续重复执行某一段程序代码 例:使用循环计算2+4+6+8+10 FORTRAN 77 程序代码要在DO后面注明循环结束的代码号 §5-1 DO FORTRAN 77经常用CONTINUE来结束程序 do 100, counter=2, limit, 2 ans=ans+counter 100 continue Do i=e1, e2 [, e3] 计数增值e3可以为负数,则终值e2必须小于起始值,才能循环。例: do i=10, 1, -1 write (*, *) I end do 作计数器的变量I, 在循环的程序模块中不能再使用命令来改变它的数值, 不然在编译中会发生错误 do i=1, 10 i=i+1 end do 3)循环的次数为: INT((e2-e1+e3)/e3) 4) 尽量避免使用实型的计数循环 例: Do x=0.0, 50.0, 0.1 循环次数: (50.0+0.1)/0.1=501 ? do i=0, 500 循环次数为501 5)用来设置计数器初值、终值和增值的数值可以使用变量来指定,只会在循环之前被读取一次,在循环中变量值改变不会影响循环 S=1 E=10 Inc=1 Do i=s, e, inc s=5 e=1 inc=-1 Write(*, *) I End do 6)Do循环可以多层嵌套 §5-2 DO WHILE 循环 循环不一定要有计数器的增减来界定是否该结束循环,可由一个逻辑运算来作决定,主要用于不能预知执行次数的循环。 §5-2 DO WHILE 循环 2+4+6+8+10 例:猜体重直到猜中为止 §5-3 循环的流程控制 FORTRAN 90添加了:CYCLE 和 EXIT来控制循环的流程 §5-3-1 CYCLE 在循环程序模块中,可以略过CYCLE命令后面的所有程序代码,直接跳回到循环的开头,进行下一次的循环 例:仿真电梯在第四层不停 §5-3-2 EXIT EXIT的功能:直接跳出一个正在运行的循环 例:改写猜体重的程序 §5-3-3 署名的循环 1)循环可以署名,使相应的结束位置清晰,特别是使对于多层嵌套循环 2)可以配合CYCLE和EXIT使用 §5-3-3 署名的循环 §5-4 循环的应用 费式数列:f0=0, f1=1, 当n1时,fn=fn-1+fn-2 写出费式数列的前10个数值。 §5-4 循环的应用 §5-4 循环的应用 例:加密程序,把每个英文字母在ASCII表中的编号加上2所得的字母当成密码传输,如: 将’abc’加密后成为‘cde’, 解密工作就是将上述工作还原 规定输入格式: 解密程序: §5-4 循环的应用 用户输入两个数字及运算符,来决定两个数值的运算方式。每做完一次计算后,用户决定是否再做或结束 §5-4 循环的应用 梯形法积分求 积分区间h=(b-a)/N 第i个小梯形的面积为: 二分法求解非线性函数f(x)=0 1)猜两个值a、 b, 使得f(a)*f(b)0 2)令c=(a+b)/2, 如果f(c)=0,则找到解,工作完成,否则: 3)如果f(a)f(c)0,则以a,c为新的范围重复步骤2;如果f(b)f(c )0,则以c,b为新的范围重复步骤2. 作业: 课本习题:P.117 6.3, 6.4, 6.5 a+(i-1)h a+ih x y f(x) i: 1~N f(a) f(b) f(c) * * Counter=11 可以为常量或变量 累加的写法 执行结果: 总共循环次数3×3 初设值保证为真以执行第一次循环 没出现4 直接跳到5 ! 这个判断代表循环执行的条件永远成立 在循环至少要执行一次,结束循环的条件式太复杂时使用 没有署名时,跳离正在运行的循环 结束后I, j=? i=3, j=1 i=3和J=2的部分被略过 不要写反顺序

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档