PROGRAM Fact_Int_Func

IMPLICIT NONE

INTEGER :: N

PRINT *, “Enter a positive integer N”

READ *, N

PRINT *, N,”!= “, Fact(N)

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 PROGRAM Fact_Int_Func