Come formattare i numeri di Fibonacci in C ++

May 2

Come formattare i numeri di Fibonacci in C ++


La sequenza di Fibonacci è stato scoperto da Leonardo Fibonacci nel 12 ° secolo. E 'diverso rispetto alla maggior parte delle sequenze geometriche e aritmetiche. La sequenza di Fibonacci non trova il prossimo mandato aggiungendo o moltiplicando per una costante. Invece, il termine Nth è il risultato della somma del (N-1) -esimo e (N-2) esimo termine - questo provoca anche la sequenza di bisogno due numeri "seme". L'implementazione di questa sequenza su C ++ è un buon esercizio per praticare l'uso di puntatori, array e costanti.

istruzione

1 Impostare un programma con C ++. Includere la libreria iostream per gestire l'input e l'output della console.

Questo è il codice:

includere <iostream>

using namespace std;

int main ()

{

2 Dichiarare variabili. Utilizzare due costanti per le condizioni iniziali della sequenza (zero e uno), una variabile per l'input dell'utente e una variabile puntatore per creare la matrice dinamica.

Queste le dichiarazioni:

const int seed1 = 0; // I "semi" della sequenza

const int seed2 = 1;

int * pos; // Questo punta a una matrice che conterrà la serie

int scelta; // L'input dell'utente

3 Richiedere l'input dell'utente e verificare se l'input dell'utente sia corretto. Per questo programma, un ingresso corretto sarà "3" o più. Ecco il codice:

cout << "Inserire il numero di termini per visualizzare:"; // l'input dell'utente leggere

cin >> scelta;

if (scelta <3) // se l'input dell'utente è inferiore a 3, annullare

{

cout &lt;&lt; "\nWrong number of terms. Program will terminate\n";

ritorno (1);

}

4 Creare l'array dinamico per memorizzare i termini della successione di Fibonacci. Inizializzare il primo e il secondo termine della matrice a zero e uno (seed1 e seed2). Utilizzare un ciclo controllato ( "per" loop) per creare gli altri termini della successione sulla matrice dinamica. Utilizzare il seguente codice:

pos = new int [scelta]; // Crea una matrice dinamica, per memorizzare solo i termini richiesti

pos [0] = seed1;

pos [1] = seed2;

for (int index = 2; indice == (scelta-1); indice ++) // creare le condizioni richieste

{

pos[index]= pos[index-1] + pos[index-2];

}

5 Creare una seconda controllato "per" ciclo di produzione i termini della matrice. Dopo la visualizzazione di cinque termini, passare alla riga successiva. Ecco il codice:

for (int DISP = 0; disp == (scelta-1); disp ++) // disply i termini

{

cout & lt; & lt; pos [DISP] & lt; & lt; "";

if (DISP == 5) // dopo cinque termini, passare alla riga successiva

cout & lt; & lt; endl;

}

6 Terminare il programma con l'aggiunta di alcuni spazi linea più, e restituire un valore. Ecco il codice:

cout << endl << endl; // Terminare il programma

ritorno (0);

}

7 Copiare e incollare il codice completo nel vostro editor C ++. Ecco il codice completo:

includere <iostream>

using namespace std;

int main ()

{

const int seed1=0; //the 'seeds' of the sequence

const int seed2 = 1;

int * pos; // Questo punta a una matrice che conterrà la serie

int scelta; // L'input dell'utente

cout & lt; & lt; "Si prega di inserire il numero di termini per visualizzare:"; // l'input dell'utente lettura

cin >> scelta;

if (scelta & lt; 3) // se l'input dell'utente è inferiore a 3, annullare

{

cout & lt; & lt; "\ Numero Nwrong di termini di programma terminerà. \ N";

ritorno (1);

}

pos = new int [scelta]; // Crea una matrice dinamica, per memorizzare solo i termini richiesti

pos [0] = seed1;

pos [1] = seed2;

for (int index = 2; indice == (scelta-1); indice ++) // creare le condizioni richieste

{

pos [index] = pos [index-1] + pos [index-2];

}

for (int DISP = 0; disp == (scelta-1); disp ++) // disply i termini

{

cout & lt; & lt; pos [DISP] & lt; & lt; "";

if (DISP == 5) // dopo cinque termini, passare alla riga successiva

cout & lt; & lt; endl;

}

cout & lt; & lt; endl & lt; & lt; endl; // Terminare il programma

ritorno (0);

}