MODULE Fact_Module
IMPLICIT NONE
CONTAINS
FUNCTION FACT(K)
INTEGER :: FACT, I
INTEGER, INTENT(IN) :: K
FACT=1
DO I=1, K
FACT=FACT*I
END DO
END FUNCTION FACT
END Fact_Module
PROGRAM Use_Fact_Module
Use Fact_Module
IMPLICIT NONE
INTEGER :: N
PRINT *, “Enter a positive integer N”
READ *, N
PRINT *, N,”!= “, Fact(N)
END PROGRAM Use_Fact_Module