第2章_逻辑运算与分支结构素材.pptxVIP

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 逻辑运算与分支结构 关系运算 逻辑运算 三种典型的If分支结构 Select case 结构 结构化程序设计的三种基本结构 顺序结构 自顶向下,按语句的排列顺序依次执行所有语句,是最简单的结构。 选择结构 程序的处理步骤出现分支,需要先进行条件判定,然后选择其中的一个分支来执行。这是本章将要介绍的内容。 循环结构 程序反复执行某个或某些操作,直到达到某一条件时才终止,这是下一章将要介绍的内容。 Program my_abs Implicit none Real :: x, y Print*, ‘input x:’ Read*, x If ( x0 ) then y = x else y = -x End if print’(a,f6.3,a,f6.3)’, ‘The absolute value of ’, x, ‘ is’, y End program 采用“关系表达式”表示条件,进行关系运算。 一种典型的If结构(双分支): If (条件) then … …(if 块) Else … …(else 块) End if 选择结构的简单示例: 编程实现:从键盘输入任意实数x,输出它的绝对值y。 关系运算 关系运算也称“比较运算”, 将两个量进行大小比较,其结果为一逻辑型常量。 Fortran提供了6种关系运算符: 关系运算符 英文含义 代表的数学符号 .lt. 或 Less than .le. 或 = Less than or equal to ≤ .eq. 或 == Equal to = .ne. 或 /= Not equal to ≠ .gt. 或 Greater than .ge. 或 = Greater than or Equal to ≥ 注意:字母形式的关系运算符两侧的圆点 ’ . ’ 不可遗漏! 关系表达式的一般形式为: 算术量1 关系运算符 算术量2 其中,“算术量”通常可以是 数值型(常量、变量、函数) 字符型 算术表达式。 例如: 32,a+b==c , sin(x) .eq. 0, abs(a-c)1e-6 等, 都是合法的关系表达式 关系表达式中的“算术量”还可以是字符, 这时就相当于它的ASCII码(整数)参与运算,例如: Logical :: c2= ‘A’‘B’ Print*, c2, ‘A’‘B’ 算术表达式可以赋给某个逻辑型的变量,例如: Logical :: L Print*, L = 32 这时, L的值将为:.False. 注意事项: 在一个关系表达式中,可以同时包括算术运算和关系运算。 先进行算术运算,再进行关系运算。例如:“a1+a2 = x1+x2” 等价于‘(a1+a2) = (x1+x2)’。 关系表达式中,算术量1和算术量2可以是不同类型的量。实型量与整型量进行比较时,先将低级类型(整型)转化成高级类型(实型),而后比较。 因此,理论上相等(或不等)的量,在比较时可能出现错误,例如: Print*, 10.0 * 0.01 == 0.1; 程序运行结果为: 解决方案:判断两实型数据是否相等的办法是:他们之差的绝对值是否足够小,如: Print*, abs(10.0*0.01 -0.1 ) 1.0e-6 结果为 计算关系表达式时, 会因计算机的“存储误差”而产生问题: 实型(real)数据在计算机中的存储总是有误差的!例如: Print’(f30.20)’ , 0.1, 2.3 的运行结果是: 采用大的种别参数值可以提高精度,但仍有误差,例如: Print’(f30.20)’ , 0.1_8, 2.3_8 的运行结果是: 逻辑运算 逻辑运算符 含义 .not. 逻辑非 .and. 逻辑与 .or. 逻辑或 .eqv. 逻辑等 .neqv. 逻辑不等 .xor. 逻辑异或 六种逻辑运算符 逻辑运算真值表 a b .not.a a.and.b a.or.b a.eqv.b a.neqv.b a.xor.b 真 真 F T T T F F 假 假 T F F T F F 假 真 T F T F T T 真 假 F F T F T T 注:.neqv.和.xor. 本质上是相同的运算符。 关系表达式只能表达简单的条件关系,例如 x=5 但有时会遇到更为复杂的条件,例如: 5 = x = 10 这时可将其看作x=5和x=10两个简单条件的组合。 这种组合条件,其实是对x=5和x=10两者进行逻辑运算,需要采用逻辑表达式,结果的类型为逻辑型。 逻辑表达

文档评论(0)

希望之星 + 关注
实名认证
文档贡献者

我是一名原创力文库的爱好者!从事自由职业!

1亿VIP精品文档

相关文档