1

私は小さなプログラムで苦労しています、私は1つの間違いを修正する方法を見つけることができません。

私のプログラム:

program calcul

! ce programme permet d'effectuer des opérations mathématique de base

IMPLICIT NONE

REAL::x,y

character(len=1)::op

character(len=16)::op_msg

write(*,*)"entrer le type d'opération à effectuer(+,-,/,x,*)"       

read(*,*)op

write(*,*)"entrer le premier nombre de l'opération"

read(*,*)x

write(*,*)"entrer le deuxième nombre de l'opération"

read(*,*)y

if(op=="+") then

  write(*,*)x,"plus",y,"egale",x+y

    else if(op=="-")then

      write(*,*)x,"moin",y,"egale",x-y

    else if ((op==("*").or.("x")) then

      write(*,*)x,"multiplie par",y,"egale",x*y

        else if (op=="/")then

          write(*,*)x,"divise par",y,"egale",x/y

else

write(*,*)"erreur:operation incorrecte"

end if

end program calcul

エラーメッセージ:

calculette.f90:21.26:

 else if ((op==("*").or.("x")) then

                                     1

Error: Invalid character in name at (1)

何か案が?「x」が無効な文字である理由がわかりませんか?

4

1 に答える 1

1
else if ((op==("*").or.op==("x")) then

2つの別々の条件を評価しているため、それぞれに「左側」と「右側」が必要です。

于 2012-05-06T16:45:08.197 に答える