在这个Fortran代码中,我找不到我的错误

时间:2013-12-12 11:25:01

标签: fortran gfortran

当我在这段代码中使用INTEGER声明时,我对gfortran没有错误,但是当我在声明中使用REAL时,我有这个错误:

  

错误:在(1)处的参数'a'中键入不匹配;将INTEGER(4)传递给REAL(4)

这是我的代码:

Program workout
IMPLICIT none
REAL :: resultat

resultat = moyen(100,50)
WRITE(*,*) resultat

CONTAINS
  REAL FUNCTION moyen(a,b)
    IMPLICIT none
    REAL,INTENT(IN) :: a, b

    moyen = (a - b)/2
  END FUNCTION moyen

End Program workout

感谢您的时间

1 个答案:

答案 0 :(得分:2)

错误消息非常明确,您将integer参数传递给期望real参数的函数。你可以改变这一行

resultat = moyen(100,50)

resultat = moyen(100.0,50.0)

事实上,正如您所看到的,您在一行中两次犯同样的错误,编译器只是识别第一次出现。