FORTRAN90第二章 选择结构程序设计PPT教学课件

合集下载

FORTRAN90第2章

FORTRAN90第2章
字母大小写等价 变量名中字符与字符之间不能有空格 取名时尽量“见名知意”,不使用关键字
2.3 变量
3.变量的类型 变量类型说明一般形式: 变量说明符[ [,属性] … :: ] 变量列表 类型说明符可以是固有的或派生的,基本类型变 量说明符: INTEGER REAL、DOUBLE PRECISION COMPLEX LOGICAL CHARACTER 通常要求::不省略
2.2 常量
主要了解: • 常量的概念 • 固有数据类型及其常量表示
2.2.1 固有数据类型
• 固有数据类型有五种:
– – – – – 整型( INTEGER) 实型(REAL) 复型(COMPLEX) 字符型(CHARACTER) 逻辑型(LOGICAL)
1、整型数据
• – – – – 整型表示: INTEGER INTEGER INTEGER INTEGER
2、实型数据
• 实型表示: – REAL或REAL ( 4 ) 表示单精度实数 – REAL ( 8 ) 或 DOUBLE PRECISION 表示双精度实数
2、实型数据
• 每种实型数据所占的字节和范围:
数据类型 REAL (4 ) REAL (8 ) 或
DOUBLE
字 节
精 度
范 围
负数: -3.40282347E+38~-1.17549435E-38 正数: +1.17549435E-38~+3.40282347E+38 负数: -1.7976931348623158D+308 ~ -2.2250738585072013D-308 正数: +2.2250738585072013D-308 ~+1.7976931348623158D+308

FORTRAN语言程序设计ppt课件

FORTRAN语言程序设计ppt课件

do i=1,10 !循环语句
s=s+i
!循环体
enddo
上述循环所要执行的重复操作是: s=s+i (即循环体),但每一次循环时,循环 体的操作数据s,i的值是不同的。
.
精选2021版课件
8
2.3 算法的表示方法
(1)传统流程图 即用有向线段将描述算法步骤的各功能框连接起来.如下图所示:
A B 图(a)顺序结构
1.逻辑常量仅有两个,.TRUE.(真)和.FALSE.(假)。注意:逻辑常量 两侧的两个小数点不能省略。逻辑型常量是具有逻辑型数据类型的非数 值数据,又称为逻辑值或布尔值。
2.对于逻辑值.TRUE.,在其存储单元字节内每位为“1”,可视为整数值 -1;对于逻辑值.FALSE.,在其存储单元字节内每位为“0”,可视为整数 值0,它们均能参与整数运算。如7+.FALSE.,结果仍为7。1+.TRUE., 结果则为0。
数组、函数、过程等实体的名称。
名称的定义(即语法描述):由英文字母开头的31个以内 的字母、数字、下划线(_)以及美元符字符序列组成。
例:NUMBER、x1、root_2、y$ _ab、5xy、x.y
5.2.2 保留字 一个语句中的特定单词,如PROGRAM、END、IF、ENDIF、
DO、ENDDO等,称为语句保留字。 说明: FORTRAN90程序中允许用保留字作为其它实体的名 称,但是一般不提倡。
1x10-10
注意:单独的指数部分不能构成一个实型常量。 例:E5
5.6.2.3 复型常量
表示普通代数中的复数。即: a ± bi(其中a是实部, b是虚部)
一般形式:(a,b)
例:(-3,5)
!表示复数:-3+5i

F90课件2

F90课件2

2011年2月22日7时18分
2.2 关系表达式和逻辑表达式
练习表达式的写法 1、 数学式 A<B<C<D 、 2、 1<x2+y2<2 、 3、 M能被 整除 、 能被N整除 能被 4、 整数 、B之一为 但不同时为 、 整数A、 之一为 但不同时为0 之一为0 5、 A、B同时为正,或同时为负 、 、 同时为正 同时为正, 6、 逻辑型变量值为真(或为假) 、 逻辑型变量值为真(或为假)
2011年2月22日7时18分
输入N 输入N 假 打印奇数 结束 MOD(N,2)= =0 真 打印偶数
2.5 块IF语句 IF语句
[例]已知三实数:A、B、C,输入并按大小顺序打印输出。 已知三实数: C,输入并按大小顺序打印输出。 输入并按大小顺序打印输出 解:根据题意设计算法并画程序流程图,如图6-5所示。 根据题意设计算法并画程序流程图,如图6 所示。 程序: 程序: 输入: 输入:55.12,182.4,34.5 ↙ 输出: 输出: 182.40 55.12
2011年2月22日7时18分
2、ELSE嵌套 、 嵌套 IF(e1)THEN ( ) 语句体1 语句体 ELSE IF(E2)THEN ( ) 语句体21 语句体 ELSE 语句体22 语句体 ENDIF ENDIF
2.5 块IF语句 IF语句
输入一个整数,判断它是奇数还是偶数,并打印输出。 例 输入一个整数,判断它是奇数还是偶数,并打印输出。 解:根据题意设计算法并画程序流程图,如图6-4所示。 根据题意设计算法并画程序流程图,如图6 所示。 程序: 程序: 10 20 FORMAT(1X,I5,' IS A EVEN NUMBER.') FORMAT(1X,I5,' IS A ODD NUMBER.') NUMBER:‘ WRITE(*,*) 'PLEASE INPUT A NUMBER: READ(*,*) N IF(MOD(N,2)= =0)THEN WRITE(*,10) N ELSE WRITE(*,20) N END IF END 输入: 输入:77↙ 输出: 输出:77 IS A ODD NUMBER.

Fortran90 第2章

Fortran90 第2章

Selected_int_kind送回
表示十进制幂的范围由内在函数range送回的
在FORTRAN90中,也可以表示二进制、八进制、
十六进制形式的无符号整数。其形式如下:
二进制数:B‟101101‟ 或 B”101101” 八进制数:O‟76210‟ 或 O”76210” 十六进制数:Z‟1FA2‟ 或 Z”1FA2”
§2.2 FORTRA90源程序基本结构
例[2-1]: 见书P16页例题:已知华氏温度与摄氏温度之间的换 算公式为: 5
TC 9 (Th 32)
现输入某一华氏温度Th,请计算出相应的摄氏温度Tc。 PROGRAM H_TO_C
!Given the Fahrenheit temprature ,to caculate the Centigrade
2、主程序结构 [program 程序名称] IMPLICIT NONE [声明(说明)语句部分] [执行语句部分] END [program [程序名称]]
§2.3 语言元素
2.3.1 FORTRAN90字符集:
编写Fortran90程序时,允许使用的所有字符及符号。 ⑴ A~Z(a~z)程序中不区分大小写 26个
非0; 例:0.7436E-12,而 21.835E5、0.0023E4 × 2.数字部分有且仅有一位非零的整数。
例:7.123E24,而 345.2E7 ×
可以说明种别类型参数值:
REAL,PARAMETER::LONG=SELECTED_REAL_KIND(8,88) 说明的符号常量LONG提供了至少8位的精度,以及 -10

对于逻辑型数据,系统同样提供不同的种
别类型参数。表示方法的种别类型参数值 由函数KIND得到;

第2章Fortran程序设计基础.ppt

第2章Fortran程序设计基础.ppt
第6章 子程序
• 子程序是构造大型程序的有效工具,一个实用程序(不 管是系统程序还是应用程序),一般都含有多个子程序。
• FORTRAN 90 中的子程序按子程序完成的功能划分有子 例行程序、函数子程序、数据块子程序等,按是否定义 在某个特定的程序单元内部来划分有程序单元子程序、 模块子程序以及内部(INTERNAL)子程序等,这些通称为 子程序。
FUNCTION SM(M,N,L) SM=0 DO I=M,N
IF (L>0) THEN SM=SM+I**L
ELSE
PROGRAM EXAM2
!开始主程序单元定义
WRITE(*,*)'S1=',SM(1,100,2) !调用函数子程序SM完成S1的计算
WRITE(*,*)'S2=',SM(100,140,3)
PROGRAM EXAM1B
INTEGER X
6.2 函数子程序
语句函数由于要求在一个语句中完成函数的定义,因而它只能解决一些较 简单的问题,当函数关系比较复杂,用一个语句无法定义时,语句函数就 无能为力了,这时需要用到函数子程序。
6.2.1 函数子程序的定义
函数子程序是以保留字 FUNCTION 开头,并以保留字 END结束的 一个程序段,该程序段可以独立存储为一个文件,也可以和调用 它的程序单元合并存储为一个程序文件。函数子程序的定义格式 是:
INTEGER F(X,Y)=X**2+Y**2 ! 定义了一个整型函数F
NF(X,Y)=X**2+Y**2 F
! 也同样定义了一个整型函数
2.语句函数的虚参
在语句函数定义语句中的函数参数称为虚参,他们本身是没有值的,只有在 函数调用时才用实际参数(称为实参)代替。实参或是常数、或是一个有确定 值的变量、或是一个可以计算值的表达式。虚参在形式上与普通变量相同, 一个语句函数中的虚参不能同名。不同语句函数中的虚参可以同名,虚参也 可以和程序中的变量同名。

第2章 Fortran程序设计基础PPT课件

第2章 Fortran程序设计基础PPT课件

SUBRO UTINE 、MO NEY 、< = 都是非法的。
一般情况下,记号之间需留有空格。例如:100CONTINUE 是非法的, 因为标号100 和关键字 CONTINUE 是两个独立的记号。
有的记号间的空格是可选的,例如:END PROGRAM 和 ENDPROGRAM是 合法的。
四. 注释
END
注释行
注:其中处于同一水平位置的各语句之间没有严格的前后 顺序,而不同的行则表示了严格的在程序当中出现的前后 顺序。
语句顺序的一般原则:
程序段的段头语句,只能ຫໍສະໝຸດ 现在每个程序段开始的位置。如: PROGRAM、FUNCTION、SUBROUTINE、BLOCK、DATA、MODULE等;
如果出现USE语句,则只能出现在段头语句之后、其他语句之前; IMPLICIT NONE语句应紧跟在USE语句之后,在其他说明语句之前; FORMAT语句和DATA语句也可以放置在可执行语句中间,不过把DATA
* 固定格式是为配合早期使用穿孔卡片输入程序所发明的 格式, 这里介绍固定格式,只是让大家对 Fortran 77 程序有所了解,建议大家在编写程序时采用前述地自由 格式。
* 固定格式尽管有其过多的限制,但由于具有一定的规范 性,方便程序的编写和检查。
二、自由格式
自由格式是Fortran 90之后的新写法,是目前最流行的书写格 式,取消了许多限制。没有规定每行的第几个字符有什么作用。
固定格式说明:
一行共80列,分为4个区: 第1-5列,标号区,可以空白,也
可以出现符号;
第6列,续行标志区,可以空白( 无续行),非0字符(续行 );
第7-72列,语句区,语句区的书写 可以从任意一列开始,空白 编译时被忽略,一行只能书 写一个语句;

第二章 Fortran90编程简介

第二章 Fortran90编程简介

2-2-1两个子集语言:ELF90和F 两个子集语言:ELF90和
ELF90的编译器是v4.0,而且是Windows环境下 ELF90的编译器是v4.0,而且是Windows环境下 的编译器是v4.0 Windows 的版本, 是有多个平台的版本。 的版本,而F是有多个平台的版本。 两者的共同之处: 两者的共同之处: 确保是F90的真子集语言,用它们写出的代码用任 的真子集语言, 确保是 的真子集语言 何F90全集语言编译器都可以顺利地编译运行; 全集语言编译器都可以顺利地编译运行; 全集语言编译器都可以顺利地编译运行 去除冗余特性和重复功能,保留精华; 去除冗余特性和重复功能,保留精华; 强迫程序员采用更严格的、更规则的编程风格; 强迫程序员采用更严格的、更规则的编程风格; 不考虑与F77的兼容性 的兼容性 不考虑与
1.F90增加了很多语言特性和功能,这就使得F77的 1.F90增加了很多语言特性和功能,这就使得F77的 增加了很多语言特性和功能 F77 特性变得冗余和过时; 特性变得冗余和过时; 2.另一方面,为了保持和F77的兼容性, 2.另一方面,为了保持和F77的兼容性,而没有删掉 另一方面 F77的兼容性 这些特性,这就导致了F90的语言集合的强大, F90的语言集合的强大 F这些特性,这就导致了F90的语言集合的强大,使 用不方便。 用不方便。 3.为了克服这种现状,提取出了F90的精致子集语言。 3.为了克服这种现状,提取出了F90的精致子集语言。 为了克服这种现状 F90的精致子集语言 举例: 举例:ANSYS
在所有派生类型(type)定义的语句中,必须用双冒 在所有派生类型(type)定义的语句中, 号分隔符(::)。 号分隔符(::)。 在程序单元的end end语句中要求后跟程序单元的类型和 在程序单元的end语句中要求后跟程序单元的类型和 名称。 名称。 在end type 语句中要求后跟类型的名称。 语句中要求后跟类型的名称。 对于顺序文件,open语句中必须包含position项 语句中必须包含position 对于顺序文件,open语句中必须包含position项。 default语句必须置于case分支的最后 语句必须置于case分支的最后。 case default语句必须置于case分支的最后。 program前必须有stop语句以表示停止执行 前必须有stop语句以表示停止执行。 End program前必须有stop语句以表示停止执行。 子过程中必须有return语句,以表示返回。 return语句 子过程中必须有return语句,以表示返回。 数组哑元要求是假定形状的, 数组哑元要求是假定形状的,或者有固定的维数和大 字符哑元要求是假定长度的。 小。字符哑元要求是假定长度的。 )并且 并且call s(),即必须有括号。 (),即必须有括号 subroutine s( )并且call s(),即必须有括号。

Fortran选择结构PPT教学课件

Fortran选择结构PPT教学课件

逻辑表达式的运算次序(运算符的优先级别)
运算类别
运算符
优先级
括号
()
1
算术运算
关系运算 逻辑运算
**
2
*/
3
+-
4
.GT. .LT . .GE. .LE. .EQ. 5
.NE.
.NOT.
6
.AND.
7
.OR.
8
.EQV. .NEQV.
9
注意:
1.关系运算符的运算对象是数值量,运算结果是逻辑量 2.逻辑运算符的运算对象是逻辑量,运算结果是逻辑量 3.一个算术运算量只能和一个关系运算符相连
A.NE.B
应改写为 ABS(A-B).GT.1E-6
(5)字符关系表达式,将两个字符量进行比较。
逻辑运算 逻辑运算符
逻辑运 算符 .AND.
.OR.
含义
逻辑与 逻辑或
逻辑运 算例子 A.AND.B
A.OR.B
例子含义
A,B同时为.TRUE.时结果为真 A,B之一为.TRUE.时结果为真
.NOT.
逻辑非
.NOT.A
A为.TRUE.时,结果为假
.EQV.
逻辑等
.NEQV. 逻辑不等
A.EQV.B A.NEQV.B
A,B为同一逻辑常量.时,结果为真 A,B为不同逻辑常量值时,结果为真
逻辑表达式的值是 .TRUE. .FALSE.
逻辑表达式形式:<逻辑量><逻辑运算符><逻辑量>
逻辑量有三种:逻辑常量、逻辑型变量、关系表达式
块1
ELSE 块2
END IF
IF (G<60) THEN WRITE(*,*) “不及格”

Fortran选择结构---精品资料PPT文档共32页

Fortran选择结构---精品资料PPT文档共32页
n选择结构---精品资料
11、用道德的示范来造就一个人,显然比用法律来约束他更有价值。—— 希腊
12、法律是无私的,对谁都一视同仁。在每件事上,她都不徇私情。—— 托马斯
13、公正的法律限制不了好的自由,因为好人不会去做法律不允许的事 情。——弗劳德
14、法律是为了保护无辜而制定的。——爱略特 15、像房子一样,法律和法律都是相互依存的。——伯克
谢谢
11、越是没有本领的就越加自命不凡。——邓拓 12、越是无能的人,越喜欢挑剔别人的错儿。——爱尔兰 13、知人者智,自知者明。胜人者有力,自胜者强。——老子 14、意志坚强的人能把世界放在手中像泥块一样任意揉捏。——歌德 15、最具挑战性的挑战莫过于提升自我。——迈克尔·F·斯特利

FORTRAN语言第2章(共8章)PPT课件

FORTRAN语言第2章(共8章)PPT课件

Fortran对于关键字不予保留,即允许其关键 字作为其他实体的名称。但是,不主张这样做,因 为使用关键字作为实体名称会到导致程序难以理解 和阅读。
例如:用户可以将自己的变量名、数组名等命 名为read、print、end、integer、program、 print、do等关键字,编译程序会根据上下文来识 别一个字符串究竟是关键字还是实体名称。
型。 Fortran常量包括整型、实型、复型、字符型和逻辑型
五种内部类型常量和一种特殊的常量——符号常量,下面
分别介绍它们的表示方法及其注意事项。
第一节 FORTRAN常量
三、FORTRAN常量 1、整型常量
整型常量由0~9的一系列数字组成,包括正数、负数 和0。如125,-258,+28等。注意:
n代表整数部分,
m代表小数部分,不允许出现非数值 字符(如逗号、顿号和空格等)。
第一节 FORTRAN常量
三、FORTRAN常量 2、实型常量
指数形式:用来表示一个绝对值非常大或非常小的数。 指数形式的实数三部分组成:有效数字、E(或e)和指数。
例如: +0.125E+2、-132.48e-1、243E-3、 .12e+2,1.2e+1
Fortran 95规定:标识符只能由字母、数字、 下划线和美元符号“$”组成,且起始字符必须是 英语字母。
Fortran的关键字
关键字是Fortran95中的一种特定字符串。 如 read*,a,b
read是关键字。 类似的关键字有:print、write、program、 integer、do、if、then、end、subroutine、 function等。 在编译环境中正确的关键字会以蓝色字符显示。 关键字都有特定的含义,在程序中有具体的位置要求, 不能随意改变,否则将产生一个语法错误。

Fortran讲义第二章汇总课件

Fortran讲义第二章汇总课件

优先级(最好加括号) : ①括号 ②函数 ③** ④*、/ ⑤单目+、- 双目+、-
类型转换(向高看齐),int, nint, real, dble, cmplx
复数运算
exam_2_5
表达式和赋值语句
❖ 字符表达式 ①
子字符串 字符串的连接 相关内部函数
exam_2_6

❖ 关系表达式: ②
内部过程或模块过程
END
Fortran源程序的书写格式
❖ 固定格式(*.for或*.f)
Fortran源程序的书写格式
Fortran源程序的书写格式
lists.for
Fortran源程序的书写格式
❖ 自由格式(*.f90)和固定格式的比较
exam_2_1
固定格式
自由格式
每行字符数 80
132(VF 中几乎不限制)
Fortran的名称
❖ 用来标识程序中的实体(变量、子程序、函数…)
❖ <名称>→<英文字母>{<英文字母>|<数字>|_|$}
❖ 名称长度不能超过6(FORTRAN77) 31(Fortran90) 63(Visual Fortran)
Fortran的名称
program X-Y-Z Find_it 1A _program $total
注释
第一列: c *
任意位置: !
73-80列
任意位置:!(第六列除外)
每行语句数 多条,用;隔开
多条,用;隔开
(FORTRAN77只能有1条)
续行
第六列,非0非空格 最多续19行
& 最多续39行
Visual Fortran允许续511行

fortran90程序设计chapter2

fortran90程序设计chapter2

fortran90程序设计chapter2第二章DigitalViualFORTRAN5.0入门FORTRAN语言是最早出现的计算机高级程序设计语言,它对程序设计语言的研究和发展产生了极其深刻的影响。

随着计算机科学技术的飞速发展,FORTRAN语言也不断得到完善和充实,从传统FORTRAN,到结构化FORTRAN,再到具有现代特征的DigialViualFORTRAN5.0。

本章将介绍FORTRAN语言的发展历史、DigitalViualFORTRAN5.0简介、MicrooftDeveloperStudio开发环境、FORTRAN90语言书写格式,以及FORTRAN90程序的编辑、创建、打开、保存、编译、连接和运行等内容。

2.1FORTRAN语言发展概述FORTRAN是英文“FORmulaTRANlator”的缩写,译为“公式翻译器”,它是世界上最早出现的计算机高级程序设计语言,广泛应用于科学和工程计算领域。

FORTRAN语言以其特有的功能在数值、科学和工程计算领域发挥着重要作用。

早在1951年,美国IBM公司约翰·贝克斯(JohnBacku)针对汇编语言的缺点着手研究开发FORTRAN语言,并于1954年在纽约正式对外发布。

称约翰·贝克斯提出的FORTRAN语言为FORTRANⅠ,FORTRANⅠ虽然功能简单,但它的开创性工作,在社会上引起了极大的反响。

到1957年第一个FORTRAN编译器在IBM704计算机上实现,并首次成功运行了FORTRAN程序。

在1958年,对FORTRANⅠ进行了扩充和完善,引进了子函数等概念,推出了商业化的FORTRANⅡ版本。

之后,FORTRAN语言发展迅速,多种版本相继在其它计算机上实现。

在1962年,推出了FORTRANⅣ。

FORTRANⅣ没有充分考虑兼容性,导致FORTRANⅡ程序不能在FORTRANⅣ系统中运行,使其应用受到了很大限制,这时语言不兼容性问题和影响被突出表现出来。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
五种逻辑运算符中,逻辑非、逻辑与、逻辑或是 基本的。其它两种可以由它们组合得到,例如: A.EQV.B 等价于(注意逻辑运算符两边小圆点)
A.AND.B .OR. .NOT.A.AND..NOT.B A.NEQV.B 等价于 A.AND..NOT.B .OR. .NOT.A.AND.B
2020/12/10
E1与E2为算术量或字符型的量
关系表达式的值是逻辑量:真或假
2020/12/10
3
算术运算符的优先级别高于关系运算符: 3+5.GT.SQRT(49.0)-3 =8.GT.4,真
实数的运算与存储都有误差,对实数进行==或/= 运算时要特别当心。一般用两者之差的绝对值作 为判断的依据。
用ABS(A-B)<1E-6来代替A==B 用ABS(A-B)>1E-6来代替A/=B 对于整型数,可直接用==,/=来判断.
2020/12/10
10
例如求函数
X
X<0
Y=
X+5
X≥0
IF(X<0)Y=X
Y=X
也可写为
IF(X>=0)Y=X+5
IF(X>=0)Y=X+5

IF(X>=0)Y=X+5 是错误的.
Y=X
2020/12/10
11
§2.2.2 块IF
IF(E) THEN(块IF语句) 一条或多条执行语句(THEN块)
…… …… ELSE
一条或多条执行语句 ENDIFIFFra bibliotek假 真E
E
IF块

ELSEIF块
假 假
E
真 ELSE块
ELSEIF块
2020/12/10
EndIf
13
块if语句和end if 语句分别标志块IF的开始和结束。 每个块IF都有且仅有一条块if语句、end if 语句
块IF中每个块都可以省略,表示那种情况下什么也 不做。
7
关系表达式不可连写:A<B≤C 不能写成 A.LT.B.LE.C 须用逻辑表达式A.LT.B.AND.B.LE.C
2020/12/10
8
§2.2块IF结构与IF语句
FORTRAN 90有三种方法实现选择结构:IF语 句、块IF结构和CASE结构。
§4.2.1逻辑IF语句
§4.2.2 块IF结构
ELSE(ELSE语句) 一条或多条执行语句(ELSE块)
ENDIF(ENDIF语句)
N-S 图为:

E

IF块 ELSE块
E


THEN 块
ELSE 块
2020/12/10
12
§2.2.2 块IF
IF(E) THEN 一条或多条执行语句
ELSEIF(E)THEN 一条或多条执行语句
ELSEIF(E)THEN 一条或多条执行语句
2020/12/10
14
§2.2.2.1 块IF的几种形式
因各个块都可省略,块IF常以较简单的形式出现
形式一:只有IF块 IF(E) THEN

E假
IF块
一条或多条执行语句
END IF
形式二:只有ELSE块 IF(E) THEN ELSE
一条或多条执行语句 ENDIF
2020/12/10
真E假
ELSE块
FORTRAN用五种逻辑运算符表示布尔运算:
.NOT.逻辑非 .AND.逻辑与 .OR.逻辑或
.EQV.逻辑等 .NEQV.逻辑不等
.NEQV.也可用 .XOR.表示。
布尔运算按照数学上的规定进行。要在理解的基
2020础/12/上10 掌握逻辑运算的“真值表”
5
逻辑表达式的格式: E1逻辑运算符 E2 E1与E2为逻辑型的量,可以是: 逻辑变量、逻辑常量、关系表达式、逻辑表达式、 整型量 逻辑表达式的值也是逻辑量:真或假
§2 选择结构程序设计
§2.1 关系表达式与逻辑表达式 §2.2 块IF结构与IF语句 §2.3 CASE结构 §2.4 选择结构程序设计举例 §2.5 小结
2020/12/10
1
§2.1关系表达式与逻辑表达式
算法中经常要根据某种逻辑判断的结果 来决定下一个步骤应该做什么。这就是带分 支选择的算法。选择结构是结构化算法中一 种基本结构。 实现选择结构的前提是进行关系运算和逻辑 判断。
2020/12/10
2
§2.1.1 关系表达式
算术量A与B之间存在六种关系: A>B A≥B A≠B A=B A≤B A<B FORTRAN用六种关系运算符表示它们:
>(.GT.)表示> >=(.GE.)表示≥ /=(.NE.)表示≠ ==(.EQ.)表示= <=(.LE.)表示≤ <(.LT.)表示< ()中是早期版本的写法,不提倡使用。 格式: E1关系运算符 E2
15
形式二实际是形式一的变种
IF(.NOT.E) THEN
.NOT.E
一条或多条执行语句 ENDIF
THEN块真

2020/12/10
16
§2.2.2.2 块IF编程例题
2020/12/10
17
例:输入三条边的长度,计算三角形面积。
逻辑运算符优先级别: .NOT.高于.AND.高于.OR.高于.EQV.和 .NEQV.
逻辑表达式运算次序: 括号>函数>算术表达式>关系表达式>逻辑运算 同一级别的运算,从左至右进行
2020/12/10
6
当逻辑运算符作用于整型量时,执行整数的按位 操作,结果是一个整数而不是逻辑型数据。
3.XOR.5=6 3.and.5 = 5 3.or.5=7
2020/12/10
9
§2.2.1 逻辑IF语句
逻辑IF语句也称为行IF语句。 格式: IF (E) 可执行语句
例:IF(X>0) PRINT *, X IF(X>0.and.Y>0) PRINT *,‘第一象限’
逻辑IF语句本身仅仅是一条语句,当条件为真时,也 只执行一条语句,而不可能执行多条语句,与下面要 介绍的块IF有明显的区别。
每个块IF至多有一条ELSE语句和一个ELSE块。 没有ELSE块的时候,ELSE语句可有可无。
一个块IF中可以没有也可以有一条或多条Else if语 句,省略ELSEIF块时,Else if语句可有可无。
被省略的块也可以理解为空块。
块IF中最多只有一个块被执行,在省略ELSE语句 的情况下,有可能什么也不做。
2020/12/10
4
§2.1.2 逻辑表达式
逻辑型变量:可以将关系表达式的结果赋值给一 个变量,该变量的值只能是真或假,类型是逻辑型
LOGICAL A,B,L1
A=3+5.GT.SQRT(49.0)-3 逻辑赋值语句
判断几个条件是否同时满足,数学上可以用布尔 运算,FORTRAN用逻辑表达式表示。
相关文档
最新文档