cobol学习——算术运算
Posted 天庸
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cobol学习——算术运算相关的知识,希望对你有一定的参考价值。
1.四舍五入运算
使用ROUNDEDD选项对运算结果进行四舍五入处理,处理结果为整数。
例:
MOVE 12.3 TO NUM1.
MOVE 45.6 TO NUM2.
ADD NUM1 TO NUM2
GIVING REAL-RESULT.
MOVE REAL-RESULT TO REAL-DISPLAY.
DISPLAY ‘REAL RESULT :‘REAL-DISPLAY.
ADD NUM1 TO NUM2
GIVING RESULT .
DISPLAY ‘WITH OUT ROUNDED RESULT :‘RESULT. //结果:57
ADD NUM1 TO NUM2
GIVING RESULT ROUNDED .
DISPLAY ‘WITH OUT ROUNDED RESULT :‘RESULT. //结果:58
2.运算结果溢出ON SIZE ERROR
当运算结果数据的长度超过保存结果的变量所定义的长度时。称为结果溢出。
可以使用ON SIZE ERROR
例:
ADD NUM1 TO NUM2
GIVING FRESULT
ON SIZE ERROR
DISPLAY ‘OVER FLOW!‘
PERFORM OVER-FLOW-ROUTINE.
IF OVER-FLOW-FLAG = ‘N‘
DISPLAY ‘CORRECT RESULT:‘,FRESULT
END-IF.
OVER-FLOW-ROUTINE.
MOVE ‘Y‘ TO OVER-FLOW-FLAG.
DISPLAY ‘TRUNCATED RESULT:‘,FRESULT.
3.算术加运算
例:
ADD NUM1 NUM2 TO NUM3
ON SIZE ERROR
DISPLAY ‘OVER FLOW!‘
可以将多个参数进行相乘。结果存放在NUM3中:
ADD NUM1 NUM2 TO NUM3
GIVING FRESULT
ON SIZE ERROR
DISPLAY ‘OVER FLOW!‘
使用GAVING 可以将多个参数进行相加。结果存放在FRESULT中:
4.算术运算SUBTRACK语句
例:
SUBTRACT NUM1 NUM2 TO NUM3 //值分别为2,3,9
END-SUBTRACT.
5.MULTIPLY
MULTIPLY NUM1 BY NUM2
ON SIZE ERROR
DISPLAY ‘OVER FLOW!‘
可以将多个参数进行相加。结果存放在NUM2中:
MULTIPLY NUM1 BY NUM2 TO
GIVING FRESULT
ON SIZE ERROR
DISPLAY ‘OVER FLOW!‘
使用GAVING 。结果存放在FRESULT中:
5.DIVIDE
DIVIDE NUM1 INTO NUM2
END-DIVIDE.
可以将多个参数进行除法运算。结果存放在NUM2中:
DIVIDE NUM1 BY NUM2 TO
ROUNDED
END-DIVIDE.
使用ROUNDED进行四舍五入 。结果存放在NUM2中:
DIVIDE NUM2 BY NUM1 GAVING QUOT
REMAINDER REMAIND
END-DIVIDE.
结果存放在QUOT中,余数放在REMAIND中:
7.乘方运算 COMPUTE
算术运算符为:‘**’ 左侧的数为乘方的底数,右侧的数为乘方的幂。
例:
COMPUTE RESULT = NUM1 ** NUM2
ON SIZE ERROR
DISPLAY ‘OVER FLOW‘
END-COMPUTE.
8.复合运算
COMPTE A = (B + C + D) / F
操作数和运算符之间用空格隔开,括号与包含内容之间不要有空格。
注意:运算顺序
括号 > ** > * / > + -
9.算术统计运算 COMPUTE
统计运算:总和,中位数,平均数
计算总和:COMPUTE sum-name = FUNCTION SUM(name1 name2 name3)
计算中位数:COMPUTE midle-name = FUNCTION MEDIAN(name1 name2 name3)
计算平均数:COMPUTE average-name = FUNCTION MEAN(name1 name2 name3)
1.关系运算
=
>
<
>=
<=
NOT =
NOT >
NOT <
注意:不能将字符和数字进行比较
2.逻辑运算符
与运算:AND
或运算:OR
非运算:NOT
以上是关于cobol学习——算术运算的主要内容,如果未能解决你的问题,请参考以下文章