/****************************************************************/ /*** Caluclates Fibonacci numbers ***/ /*** Rechnergestütztes Wissenschaftliches Rechnen ***/ /*** University of Goettingen, Germany 2004 ***/ /****************************************************************/ #include #include int num_calls = 0; /* global variable for debugging */ /** calculates Fibonacci number of 'n' recursively **/ double fib(int n) { num_calls++; if(n <= 2) return(1.0); else return(fib(n-1)+fib(n-2)); } int main(int argc, char *argv[]) { int n; n = atoi(argv[1]); printf("fib(%d)=%e\n", n, fib(n)); printf("%d\n", num_calls); return(0); }