C-Kurs/Fibonacci-Folge/Musterlösung: Unterschied zwischen den Versionen
< C-Kurs | Fibonacci-Folge
Nighoo (Diskussion | Beiträge) K (verschob „Ckurs2009/Fibonacci-Folge/Musterlösung“ nach „Ckurs/Fibonacci-Folge/Musterlösung“) |
PaulG (Diskussion | Beiträge) K (verschob „Ckurs/Fibonacci-Folge/Musterlösung“ nach „C-Kurs/Fibonacci-Folge/Musterlösung“) |
(kein Unterschied)
| |
Aktuelle Version vom 5. März 2013, 17:37 Uhr
Musterlösung Fibonacci-Folge
#include <stdio.h>
#include <stdlib.h>
/* hier sollten alle verwendeten Funkltionen deklarariert werden ( insbesondere die fib() Funktion ) */
int fib(int);
int main(int argc, char *argv[])
{
/* hier wird der Kommandozeilenparameter ausgelesen und in der Integer-Variablen 'n' gespeichert */
if(argc != 2 ){
printf("usage: './fib n' where n is a number \n");
}else{
int n = atoi(argv[1]);
/* hier wird der Integer-Variablen 'result' das Ergbniss der Funktion fib zugewiesen.*/
int result = fib(n);
/* wenn das Ergebnis der Rechung weiterhin in der Integer-Variablen 'result' gespeichert ist wird deren Wert hier auf der Konsole ausgegeben. */
printf("%d \n",result);
}
return 0;
}
/* diese Funktion berechnet das n-te Folgebglied der Fibonacci-Folge */
int fib(int n){
if( n == 0){ /* das 0-te Folgenglied ist per Definition 0 */
return 0;
}
if( n == 1){ /* das 1-te Folgenglied ist per Definition 1 */
return 1;
}
if( n > 1){ /* alle weiteren Folgenglieder werden aus den jeweiligen Vorgaengern berechnet */
return fib(n-1)+fib(n-2);
}
return 0;
}