Questo sito contribuisce alla audience di

Programma in Fortran 90 per il calcolo di semplici espressioni algebriche

Programma in Fortran 90 che calcola espressioni algebriche espresse dalla grammatica

fortran 90,programmi fortran,fortran download,visual fortran,fortran tutorial

Programma in Fortran 90 che calcola espressioni algebriche espresse dalla grammatica a cura del Prof. Paolo Bison - Corso di Fondamenti di Informatica - Università di Padova.

! calc.f90
!
! programma che calcola espressioni algebriche
! espresse dalla grammatica:
!
! V={0,1,2,3,4,5,6,7,8,9,+,-,=}
! N={,}
! p={ ::= = | ,
! ::= |,
! ::= 0|1|2|3|4|5|6|7|8|9|0
! ::= +|- }
!
program calc
integer :: i
integer :: num1, num2
character (len=100) :: expr
character (len=1):: oper,ch
read *,expr
print *,”>”
print *,trim(expr)
num1=0
oper=”+”
i=0
do
i=i+1
if (i>len_trim(expr)) then
print *,”espressione non corretta”; stop
end if
ch = expr(i:i)
! lettura numero
num2 = 0
if (ch >=”0″ .and. ch< ="9") then
do
if (ch >=”0″ .and. ch<="9") then
num2 = num2*10 +ichar(ch)-ichar("0")
i = i+1; ch = expr(i:i)
else
exit
end if
end do
else
print *,"espressione non corretta"; stop
end if
! esegue operazione con numero precedente
select case (oper)
case ("+")
num1 = num1 + num2
case ("-")
num1 = num1 - num2
case default
print *,oper," non e' nel lessico"; stop
end select
! in ch c'e' un operatore o =
if (ch=="=") then
print *,num1; stop
else
oper=ch
end if
end do
end program calc

Link correlati