fortran程序。定义了一个函数F(X),在主程序里调用时总出错。后来发现是自变量的类型之类的错误。

2024-12-13 12:47:46
推荐回答(3个)
回答1:

Real类型之间比较大小时,在你的例题里需要判断两个实数相等,判断两个实数相等经常会出现不稳定的情况。建议楼主将do while里的内容改为int(y)<=int(x)。这样将他们转换为整数后再比较大小更靠谱。
另外,像大家说的,函数里定义的数据类型要和调用时给的数据类型一致。
楼主试一试吧

回答2:

在子程序中X是实型变量,调用的时候也要用实型的。
所以用J(3.0)正确,用J(3)出现错误。
但是在主程序中写:
X=3 ! X是实型变量
Z = J(X)
则不会出现错误。

回答3:

因为你定义X是浮点数,而你输入X=3时候,会自动默认X为整数类型
所以通常输入代表整数的浮点数时,要加个形式上的小数点