% Given an input number:

factorial(0,1). 

factorial(N,F) :-  
   ?- write(25),nl.
   N>0, 
   N1 is N-1, 
   factorial(N1,F1), 
   F is N * F1.
   ?- F

halt.