-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathex09_11.c
43 lines (37 loc) · 857 Bytes
/
ex09_11.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
* pr_pset09_11:
*
* Write and test a Fibonacci() function that uses a loop instead of recursion
* to calculate Fibonacci numbers.
*/
#include <stdio.h>
void fibonacci(int);
int main(void)
{
int numbers;
printf("Enter a number of the Fibonacci numbers to find: ");
while (scanf("%d", &numbers) == 1)
{
if (numbers <= 0)
{
printf("Retry with positive integer: ");
continue;
}
fibonacci(numbers);
printf("Enter new value (q to quit): ");
}
printf("Done.\n");
return 0;
}
void fibonacci(int sequence)
{
for (int i = 0, sum = 0, number = 0; i < sequence; i++)
{
sum += number;
number = sum - number;
if (i == 1)
sum = 1;
printf("%d", sum);
i + 1 < sequence ? printf(", ") : printf("\n");
}
}