import java.io.*; public class ResFatorial { static int leint() throws java.io.IOException { DataInputStream meuDIStream; meuDIStream = new DataInputStream(System.in); String linha = meuDIStream.readLine(); int i= Integer.valueOf(linha).intValue(); return i; } static long resIterativo(int n) { long res = 1; // calculo do fatorial de n if (n<0) res=-1; else if (n==0) res=1; else for(int i=1; i<=n; i++) res = res * i; return res; } static long resRecursivo(int n) { System.out.println("Chamada com n = "+n); if (n>0) return n*resRecursivo(n-1); else if (n==0) return 1; else return -1; } public static void main(String s[]) throws java.io.IOException { System.out.println("Nro inteiro para fatorial: "); int n = leint(); System.out.println("O resultadoI eŽ: "+resIterativo(n)); System.out.println("O resultadoR eŽ: "+resRecursivo(n)); } }