Determinare il primo termine della serie di Fibonacci maggiore di un

Algoritmi numerici con struttura ciclica
Determinare il primo termine della
maggiore di un dato numero N >=2
serie
di
Fibonacci
Nota : La serie di Fibonacci è una successione di numeri in cui ogni termine è
ottenuto dalla somma dei due termini precedenti. I primi due termini sono 0
ed 1.
0
1
1
2
3
5
8
13 21 34 55 89 ...
Esempio di “Realizzazione di un flow-chart” a cura del Prof. Salvatore DE GIORGI
Pag. 1
Algoritmi numerici con struttura ciclica
¾ Analisi dei dati
Identificatore
Descrizione
Tipo
Input
Output
si
si
Lavoro
N
numero da sottoporre al
vincolo richiesto dalla
traccia
intero
S
termine della serie di
Fibonacci
intero
P
comodo : termine
precedente della serie
intero
si
A
comodo : termine attuale
intero
della serie
si
si
#include <iostream>
using namespace std;
// Determinare il primo termine della serie di Fibonacci
// maggiore di un dato numero N >=2
int main (int argc, char *argv[])
{
char quit;
quit = '\0';
int N,p,a,s;
while (quit != 'q')
{
do{
cout << "inserire il numero ......:" ;
cin >> N ;
}while(N<2);
p=0;
a=1;
do{
s=a+p;
p=a;
a=s;
}while(s<=N);
cout << "termine Fibonacci : " << s<<endl;
// ====================================================
// termine programma con richiesta di uscita
cout << "Premere q per uscire ";
cin >> quit;
}
return 0;
}
Esempio di “Realizzazione di un flow-chart” a cura del Prof. Salvatore DE GIORGI
Pag. 2