PROGRAM ONE
IMPLICIT NONE
REAL::num1,num2,num3
READ(*,*)num1,num2
num3=num1+num2
WRITE(*,*)num3
STOP
END PROGRAM ONE
WRITE语句显示“num3”的实数。我该怎么做才能显示整数值,我不允许在声明中将其更改为整数。
答案 0 :(得分:5)
real
号可以使用integer
内在函数转换为int
个。
program one
implicit none
real :: num1, num2, num3
read (*, *) num1, num2
num3 = num1 + num2
write (*, *) int(num3)
end program one
请注意,int
函数只是截断其实参。更确切地说,当int(a)
类型为a
时,real
计算如下:
int(a)
的值为0; int(a)
是整数,其大小是最大整数,不超过a
的大小且其符号与a
的符号相同。如果这不是您所需要的,请考虑使用ceiling
或floor
或nint
内在代替。第一个返回大于或等于其实参数的最小整数,第二个返回小于或等于它的最大整数,而第三个 - 最接近的整数。