Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- double inp()
- {
- double ac;
- printf("Input accuracy\n");
- while(scanf("%lf", &ac) != 1)
- {
- while(getchar() != '\n');
- printf("ERROR\n");
- }
- return ac;
- }
- int fib(int n)
- {
- int i;
- int f1=0;
- int f2=1;
- int f3=1;
- for (i=3; i<=n+1; i++)
- {
- f3= f1+f2;
- f1= f2;
- f2= f3;
- }
- return (f3);
- }
- double result(double ac)
- {
- int i=1;
- double r;
- int fib1, fib2, fib3;
- do
- {
- fib1=fib(i);
- fib2=fib(i+1);
- fib3=fib(i+2);
- r=fabs(((double)fib3/(double)fib2)-((double)fib2/(double)fib1));
- i++;
- }
- while(r>ac);
- return ((double)fib3/(double)fib2);
- }
- main(void)
- {
- double ac;
- ac=inp();
- printf("%.7lf\n", result(ac));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement