Quale versione del fortran utilizzi?
A cura di Giuseppe Ciaburro
Pubblicato il 19/04/2007
Soluzione dell'equazione algebrica quadratica mediante la formula risolutiva
PROGRAM Eq_Quadratica_1
!--------------------------------------------------------------------
! Soluzione dell'equazione algebrica quadratica mediante la formula
! risolutiva
!--------------------------------------------------------------------
IMPLICIT NONE
REAL :: a, b, c, delta, x, x1, x2
WRITE(*,*) "Soluzione dell'eq. quadratica a*x^2 + b*x + c = 0"
WRITE(*,*) "Dammi i coefficienti a, b, c: "
READ(*,*) a, b, c
delta = b**2 - 4*a*c ! calcola il discriminante
! "**": operatore di elevamento a potenza
! Costrutto IF-THEN-ELSE
IF (delta < 0) THEN ! nessuna soluzione
WRITE(*,*) "Nessuna soluzione reale"
ELSE ! Anche questo va scritto su una riga!
! Costrutto IF-THEN-ELSE annidato
IF (delta == 0) THEN ! una soluzione
x = -b/2/a
! Ordine di esecuzione da sinistra a destra.
! L'espressione corrisponde a -(b/2)/a
! Pero': p**q**r corrisponde a p**(q**r) !!
WRITE(*,*) "La soluzione e'", x
ELSE ! due soluzioni
x1 = (-b + SQRT(delta)) / 2 / a
x2 = (-b - SQRT(delta)) / 2 / a
! SQRT: funzione intrinseca radice quadrata.
! Non accetta argomenti interi!
WRITE(*,*) "Le due soluzioni sono", x1, x2
END IF
END IF
! Ogni costrutto comincia con IF (...) THEN
! e deve essere chiuso da un END IF su riga separata.
STOP
END PROGRAM Eq_Quadratica_1