Dunque io devo fare questo:
Far calcolare ad un programma quanti termini sono necessari perche'
|a(n-1)/a(n) -g | < epsilon con:
epsilon = 1.E-5
e a(n-1)/a(n) che è il rapporto tra il valore i-esimo di fibonacci e il suo precedente.
io ho fatto il codice C cosi':
Ho fatto la funzione iterativa per il calcolo del valore di fibonacci e il suo precedente, e ho provato a fare il while per fare il confronto con il segno < e fare un count per aumentare di 1 ad ogni valore minore dell'epsilon dal primo valore della successione... solo che nn riesco ad andare avanti
Help Me pls
Far calcolare ad un programma quanti termini sono necessari perche'
|a(n-1)/a(n) -g | < epsilon con:
epsilon = 1.E-5
e a(n-1)/a(n) che è il rapporto tra il valore i-esimo di fibonacci e il suo precedente.
io ho fatto il codice C cosi':
codice:
#include <stdio.h> #include <stdlib.h> #include <math.h> #define epsilon 1.e-12 int fibonacci_iterativo(int val); int main() { double a, b, c, g; int i, val, count; printf("Epsilon vale: %.12lf \n", epsilon); g = (sqrt(5.0) - 1 )/2; printf("G Vale: %.12f \n", g); i=1; a = fibonacci_iterativo(i); b = fibonacci_iterativo(i-1); c = ((b)/a); while ((abs(c-g)) < epsilon ) { count = count +1; i=i+1; a = fibonacci_iterativo(i); b = fibonacci_iterativo(i-1); c = ((b)/a); } printf("Contatore: %d\n", count); } /*Funzione Iterativa Fibonacci*/ int fibonacci_iterativo(int val) { int d, e, f; d=0; e=1; while (val > 0) { f = d + e; d = e; e = f; val = val-1; } return (d); }
Help Me pls
Commenta