#include <stdio.h>

#define TRUE	1

int factorial(int n);

int main() {
	int n;
	while(TRUE) {
		printf("Factorial de n. Intro n: ");
		scanf("%d", &n);
		printf("%d! =  %d\n", n, factorial(n));
	}
}

int factorial(int n) {
	int i, res;
	for(i=2, res=1;i<=n;i++) {
		res = res * i;
	}
	return res;
}

// Llamar a res factorial es una chapuzilla pero iria:
// La variable factorial seria del contexto factorial()
// La funcion factorial seria del contexto global
// Pero entonces no se podria implementar de manera recursiva

