#include <stdio.h>
void fibonnaci(int fib_ptr[], int size){
if(size < 1)
return;
fib_ptr[0] = 0;
if(size == 1)
return;
fib_ptr[1] = 1;
if(size == 2)
return;
fib_ptr = &fib_ptr[2];
for (int i = 2; i < size; ++i){
*fib_ptr = *(fib_ptr-1) + *(fib_ptr-2);
fib_ptr++;
}
}
int sum(int array[], int size){
int sum = 0;
for (int i = 0; i < size; ++i)
sum += array[i];
return sum;
}
int main (void){
int fib[20];
fibonnaci(&fib[0], 20);
int s = sum(&fib[0], 20);
printf("The first 20 Fibonnaci numbers are : \n"); for(int i = 0; i < 20; ++i)
printf("The sum of these numbers is : %d\n", s
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIGZpYm9ubmFjaShpbnQgZmliX3B0cltdLCBpbnQgc2l6ZSl7CglpZihzaXplIDwgMSkKCQlyZXR1cm47CglmaWJfcHRyWzBdID0gMDsKCWlmKHNpemUgPT0gMSkKCQlyZXR1cm47CglmaWJfcHRyWzFdID0gMTsKCWlmKHNpemUgPT0gMikKCQlyZXR1cm47CglmaWJfcHRyID0gJmZpYl9wdHJbMl07CgoJZm9yIChpbnQgaSA9IDI7IGkgPCBzaXplOyArK2kpewoJICAgICpmaWJfcHRyID0gKihmaWJfcHRyLTEpICsgKihmaWJfcHRyLTIpOwoJICAgIGZpYl9wdHIrKzsKCX0KfQoKaW50IHN1bShpbnQgYXJyYXlbXSwgaW50IHNpemUpewoJaW50IHN1bSA9IDA7CgoJZm9yIChpbnQgaSA9IDA7IGkgPCBzaXplOyArK2kpCgkJc3VtICs9IGFycmF5W2ldOwoKCXJldHVybiBzdW07Cn0KCmludCBtYWluICh2b2lkKXsKCWludCBmaWJbMjBdOwoKCWZpYm9ubmFjaSgmZmliWzBdLCAyMCk7CgoJaW50IHMgPSBzdW0oJmZpYlswXSwgMjApOwoKCXByaW50ZigiVGhlIGZpcnN0IDIwIEZpYm9ubmFjaSBudW1iZXJzIGFyZSA6IFxuIik7Cglmb3IoaW50IGkgPSAwOyBpIDwgMjA7ICsraSkKCQlwcmludGYoIiVkIFxuIiwgZmliW2ldKTsKCXByaW50ZigiVGhlIHN1bSBvZiB0aGVzZSBudW1iZXJzIGlzIDogJWRcbiIsIHMpOwoKCXJldHVybiAwOwp9