25.06.2013 Views

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

2.2 Istruzioni di diramazione 93<br />

ENDIF<br />

luna= 44-epact<br />

IF (luna31) THEN<br />

luna = luna - 31<br />

WRITE(*,’(A11,I4)’) " Nell’anno ", year<br />

WRITE(*,’(A27,/,1X,I2,A7)’) &<br />

" la Pasqua cade il giorno: ",luna, " Aprile"<br />

ELSE<br />

WRITE(*,’(A11,I4)’) " Nell’anno ", year<br />

WRITE(*,’(A27,/,1X,I2,A7)’) &<br />

" la Pasqua cade il giorno: ",luna, " Marzo"<br />

ENDIF<br />

STOP<br />

END PROGRAM Pasqua<br />

Un esempio di impiego di questo programma può servire a testare la bontà del codice:<br />

Inserire l’anno (successivo al 1582):<br />

2002<br />

Nell’anno 2002<br />

la Pasqua cade il giorno:<br />

31 Marzo<br />

Con il prossimo programma, infine, si vuole fornire un ultimo esempio di costrutto IF THEN<br />

ELSE, questa volta, però, caratterizzato da diverse clausole ELSE. Esso rappresenta una generalizzazione<br />

dell’esempio già proposto in precedenza e concepito per il calcolo delle radici di una<br />

equazione di secondo grado. In questo caso, in aggiunta, viene gestita anche la possibilità di<br />

trovare radici complesse e coniugate:<br />

PROGRAM eq_2<br />

IMPLICIT NONE<br />

REAL :: a, b, c, d ! coefficienti dell’equazione e discriminante<br />

COMPLEX :: x1, x2 ! radici complesse dell’equazione<br />

! lettura dei coefficienti<br />

PRINT*, "Coefficiente a: "<br />

READ(*,*) a<br />

PRINT*, "Coefficiente b: "<br />

READ(*,*) b<br />

PRINT*, "Coefficiente c: "<br />

READ(*,*) c<br />

! calcolo del discriminante

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!