#include <stdio.h>
#include <assert.h>
int fact(int n) {
if (n == 1 || n == 0) {
return 1;
} else {
return n * fact(n - 1);
}
}
int main(void) {
// fact tests
assert(fact(0) == 1);
assert(fact(1) == 1);
assert(fact(5) == 120);
return 0;
}