L’istruzione if nel Fortran rappresenta una struttura per il controllo del flusso di informazioni che ci permette di valutare un’espressione logica e di eseguire un blocco di programma nell’ipotesi tale espressione risulti vera, mentre l’opzione else ci consente di eseguire un altro blocco di programma nel caso la condizione imposta da if non si avveri.
La forma più generale del costrutto IF-THEN-ELSE-END IF è la seguente:
IF (espressione-logica) THEN
blocco1
ELSE
blocco2
END IF
dove le blocco1 e blocco2 sono sequenze di istruzioni eseguibili, e espressione-logica è ovviamente un’espressione logica. L’esecuzione di questo costrutto va come segue:
- l’espressione logica viene valutata, ottenendo un valore logico
- se il risultato è. TRUE., le dichiarazioni contenute nella blocco1 vengono eseguite
- se il risultato è. FALSE., le dichiarazioni contenute nella blocco 2 sono eseguiti
- dopo il termine dell’esecuzione di istruzioni in blocco 1 o blocco 2, la seguente dichiarazione END IF viene eseguita.
Esempio di codice fortran
Il seguente codice prima legge un intero e lo deposita in una variabile intera. Poi, se il numero può essere diviso per 2 (cioè, se il numero è un multiplo di 2), l’istruzione WRITE (*,*) contenuta tra IF e ELSE viene eseguita e dimostra che il numero è pari, altrimenti, l’istruzione WRITE (*, * ) contenuta tra ELSE END IF viene eseguita e mostra che il numero è dispari.
function MOD(x, y) !calcola il resto di x diviso y. INTEGER :: Number READ(*,*) Number IF (MOD(Number, 2) == 0) THEN WRITE(*,*) Number, ‘ pari’ ELSE WRITE(*,*) Number, ‘ dispari’ END IF end function
LINK DI APPROFONDIMENTO PER L’ARGOMENTO:
- Programmare con Fortran
- Le Procedure di Modulo nel Fortran
- I moduli nel Fortran
- Cicli a condizione iniziale nel Fortran
- Istruzione Select Case nel Fortran