PROGRAM Fact_Ext_Func

IMPLICIT NONE

 

INTERFACE

FUNCTION Fact(K)

INTEGER :: Fact

INTEGER, INTENT(IN) :: K

END FUNCTION Fact

END INTERFACE

 

INTEGER :: N

 

PRINT *, “Enter a positive integer N”

READ *, N

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

 

END PROGRAM Fact_Ext_Func

 

FUNCTION FACT(K)

            IMPLICIT NONE

            INTEGER :: FACT, I

            INTEGER, INTENT(IN) :: K

           

FACT=1

                        DO I=1, K

                                    FACT=FACT*I

                        END DO

END FUNCTION FACT