MODULE base IMPLICIT NONE CONTAINS FUNCTION SomPro(a,b,c) RESULT(r) IMPLICIT NONE REAL, INTENT(IN) :: a,b,c REAL :: r r = a + (b*c) RETURN END FUNCTION END MODULE base PROGRAM SomProSca USE base IMPLICIT NONE REAL :: x=1.0,y,z DO WHILE(x /= 0.0) PRINT*,"Trasmetti 3 valori reali x, y, z:" READ*,x,y,z PRINT*,"x + y*z = ",SomPro(x,y,z) END DO STOP END PROGRAM SomProSca