(1)处的不可分类声明?(Fortran)
我正在通过剑桥自学指南2学习fortran编程。在第11页中,我们可以找到以下程序:(1)处的不可分类声明?(Fortran),fortran,Fortran,我正在通过剑桥自学指南2学习fortran编程。在第11页中,我们可以找到以下程序: program projectile implicit none ! define constants real, parameter :: g = 9.8 real, parameter :: pi = 3.1415927 real :: a, t, u, x, y real :: theta, v, vx, vy ! Read values for a, t, and u from terminal r
program projectile
implicit none
! define constants
real, parameter :: g = 9.8
real, parameter :: pi = 3.1415927
real :: a, t, u, x, y
real :: theta, v, vx, vy
! Read values for a, t, and u from terminal
read(*,*) a, t, u
! convert angle to radians
a = a * pi / 180.0
x = u * cos(a) * t
y = u * sin(a) * t – 0.5 * g * t * t
vx = u * cos(a)
vy = u * sin(a) - g * t
v = sqrt(vx * vx + vy * vy)
theta = atan(vy / vx) * 180.0 / pi
write(*,*) 'x: ',x,'y: ',y
write(*,*) 'v: ',v,'theta: ',theta
end program projectile
但它在第16行生成了一个“不可分类语句(1)”,有人能帮我吗?thx在您的线路中
y = u * sin(a) * t – 0.5 * g * t * t
您有一个看起来像减号(-
)但不是的字符-它是一个短划线(-
)。是的,它们看起来几乎一样。不,你不能用一个代替另一个。在你的行中
y = u * sin(a) * t – 0.5 * g * t * t
您有一个看起来像减号(
-
)但不是的字符-它是一个短划线(-
)。是的,它们看起来几乎一样。不,你不能用一个代替另一个。哦,这让我想起了。我年轻得多的时候也上过这门课
我不知道你是怎么输入的,但是你的减法运算符是什么
y=u*sin(a)*t–0.5*g*t*t
用错误的符号写的。您需要使用-,而不是en-dash。你是不是直接从讲稿上抄的公式
另外,如果你不介意我这么说的话,你对
g
的定义与你的其他变量相比,精度不够。哦,这让我回想起。我年轻得多的时候也上过这门课
我不知道你是怎么输入的,但是你的减法运算符是什么
y=u*sin(a)*t–0.5*g*t*t
用错误的符号写的。您需要使用-,而不是en-dash。你是不是直接从讲稿上抄的公式
另外,如果你不介意我这么说的话,你对
g
的定义与你的其他变量相比精度不够。错误陈述中有泄露gfortran
在错误消息y=u*sin(a)*t\xE2\x80\x93 0.5*g*t*t
之前打印它正在读取的行的版本。所有这些十六进制代码都是公认的ASCII码,这意味着文本文件中出现了问题。经过投票,我意识到你比我早回答了这么多分钟-我在choo-choo上,所以没有看到这个答案。在错误声明中给出了答案gfortran
在错误消息y=u*sin(a)*t\xE2\x80\x93 0.5*g*t*t
之前打印它正在读取的行的版本。所有的十六进制代码都是公认的ASCII码,这意味着文本文件中出现了问题。经过投票,意识到你比我早回答了这么多分钟-我在choo-choo上,所以没有看到这个答案。你用Word写文本了吗?你用Word写文本了吗?