经典课件:符号常量及其定义方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.
10
(3) 函数的自变量是有类型的,函数值也是有类型的,例如 MOD(8,3)中自变量8和 3是整型,函数MOD(8,3)的值“2” 也是整型,如果写成MOD(8.0,3.0),自变量是实型的,
函数值也是实型的,其值为2.0。要特别注意,当自变量 的个数为两个或两个以上时,它们的类型必须一致,
否则出错。
2.5.1 算术表达式
(1) 算术运算符 FORTRAN规定可以使用五种算术运算符。它们是:
.
3
符号常量不能作为语句标号,也不能出现在 FORMAT语句中代替常数。除此以外,凡出现常数 处均可用符号常量代替。
.
4
2.4 FORTRAN内部函数
.
5
表1
.
6
下面举例说明函数的求值:
SIN(1.0) = sin(57.29578o) = 0.8414709
TAN(1.0) = tan(57.29578o) = 1.557408 ATAN(1.0) = arctan(1.0)=0.7853981(弧度)
LOG(3.0) = ln3 =1.098612 INT(8.6) = 8 INT(-8.6) = -8 MOD(8,3) = 2
.
7
SIGN(4.0,-0.5) = -4.0 SIGN (-4.0,0.5) = 4.0 REAL(8) = 8.0 MAX(8,6,7,15,-1) = 15 MIN(8,6,7,15,-1)= -1
.
14
利用这个函数可以检查A和B是否同符号。如果 SIGN(A,B) = A(即 SIGN(A,B)与A同符号),则说 明A与B同符号,而如果SIGN(A,B)与A不相等 (它 们符号不同),则说明A与B不同符号。当B的值为0 时,按正数处理。例如:SIGN(1,0) ,SIGN(-1,0) 的值都为1。
.
9
(2) 一个内部函数要求一个或多个自变量。从附录中可以查出 自变量(参数)的个数。例如,SQRT函数只能有一个自变量 (如SQRT(4.6)),MOD函数要求两个自变量 (如MOD (8, 3)),MAX和MIN函数要求两个以上自变量(如MAX(6,8, 10),MIN(-6, 8,0)等)。请注意,当自变量个数规定为2个 时,自变量的顺序不应任意颠倒,如MOD(8,3)表示8被3除 的余数,其值为2,而MOD(3,8)则表示3被8除的余数,其 值为3。当自变量个数为≥2时,自变量的顺序无关,如 MAX(6,8,10)和MAX(8,10,6)结果是一样的。
2.3 符号常量及其定义方法
FORTRAN 77允许用一个名字来代表一个常量, 例如,可以指定用PI来代表3.1415926,在本程序 单位用到PI时,它就代表3.1415926,这个PI就称为 “符号常量” (或“符号常数”),即用一个符号来代 表 一 个 常 量 。 FORTRAN 规 定 用 PARAMETER 语 句 来定义符号常量。例如:
可以用类型说明语句定义符号常量的类型。
.
2
注意:类型语句和参数语句的先后顺序,必须类型 语句在前,参数语句在后。
在一个参数语句中可以定义多个符号常量。
例如:PARAMETER (A=0.5,N=50,J=30) 用符号常量的好处是:如果需要改变某一常数时,
不需一一改变这个常数,只 需改变Baidu Nhomakorabea数语句中符号常量 的值即可。
.
13
(6) INT函数的作用是简单地截去小数部分,如 INT(8.6) = 8,INT(-8.5)= -8。
(7) SIGN函数的作用是“符号传送”。
SIGN(A,B)的作用是将B的符号传送给 A,例如,
SIGN(6.5,-8.3)的值为-6.5,它将第二项的 符号(负号)传送给第一项。 SIGN(-6.5,8.3)的值为6.5,因为第二个自 变量为正数。也就是说,函数值的符号与第二个 自变量的符号相同。
.
11
(4) 三角函数中角度的单位是“弧度”而不是“度”。 例如, SIN(1.0) = sin(57.29578o) =0.8414709 SIN(1.0)表示的不是sin l o,而是sin57.29578 o 1弧度 = 57.29578 o sin30 o应写成SIN(30*3.14159/180) ATAN(1.0) = 0.7853981(弧度)
PARAMETER (PI=3.1415926)
.
1
PARAMETER语句也称参数语句,它与赋值语句不 同,它是非执行语句,并且在程序中定义一个符号 常量后,不能再以任何形式改变它的值。这是符号 常量与变量的最大区别。
PARAMETER语句应写在所有执行语句之前。
符号常量的定名规则与定变量名规则相同。名 字本身隐含类型,也遵循I--N规则。
.
12
(5)自变量可以是常量,变量或表达式。
例如 SQRT(4.0),SQRT(A)和SORT (2.0+2.0) 均为合法。
自变量的值必须落在取值范围之内,例如, SQRT的自变量不得为负数,LOG、LOG10的自变量 必须大于0,MOD的第二个自变量不能为0等。
自变量的类型应符合要求。例如SQRT(1)就不合 法,因为1为整型变量,而SQRT函数的自变量不能是 整型量。
.
8
说明:
(1)FORTRAN 77 提 供 的 系 统 函 数 称 为 “ 内 部 函 数 ” 。 FORTRAN将这些函数分别编成一个个子程序,组成函数库, 存在于外部介质(如磁盘)上。在完成源程序的编译之后,用连 接命令实现连接,即将已翻译成二进制指令的目标程序与函 数库连接。也就是将程序中出现函数名的地方用函数库中相 应的一组指令代入之,组成一个统一的“可执行目标块”。 例如,程序中出现一个SIN函数,在连接时就将一组二进制指 令直接插入到程序中出现SIN的地方。由于是插入到程序内部 的,所以称为“内部函数”。
.
15
2.5 FORTRAN表达式和它的求值规则
表达式是指一个或多个运算的组合。FORTRAN 表达式是由运算符和圆括号将各类操作数(如常数、变 量、函数等)按照一定规则连接起来的有意义的式子。
FORTRAN有四种表达式:
算术表达式
关系表达式
逻辑表达式
字符表达式
它们各有自己的运算符和运算规则。
.
16