/*
*	Recursive numerical functions
*	Created by: Jacob I. Torrey
*	Functions:
*		fib(int num) - calculates the Fibonacci number for the num number in the series
*		fact(int num) - calculates the factorial of num
*/

#include<stdlib.h>
#include<stdio.h>

int fib(int num);
int fact(int num);

int main(int argc, char *argv[]) {
	int num = atoi(argv[1]);
	int fibn = fib(num);
	int factn = fact(num);
	printf("The number is %i\n", num);
	printf("The fib is %i\n", fibn);
	printf("The factorial is %i\n", factn);
	return 0;
}

int fib(int num) {
	if(num == 0) {
		return 0;
	}
	if(num == 1 || num == 2) {
		return 1;
	}
	return fib(num - 1) + fib(num - 2);
}
int fact(int num) {
	if(num == 0) {
		return 1;
	}
	return num * fact(num - 1);
}
