Slik formaterer Fibonacci tall i C ++
Fibonacci-sekvensen ble oppdaget av Leonardo Fibonacci i det 12. århundre. Det er annerledes enn de fleste geometriske og aritmetiske sekvenser. Fibonacci-sekvensen ikke finne neste sikt ved å legge til eller multiplisere med en konstant. I stedet er den nte termen resultatet av å legge til (N-1) th og (N-2) th sikt - dette fører også sekvensen til å trenge to "frø" tall. Implementering av denne sekvensen på C ++ er en god øvelse for å trene bruk av pekere, arrays og konstanter.
Bruksanvisning
1 Sett opp et program med C ++. Inkluder iostream biblioteket for å håndtere konsollen inngang og utgang.
Dette er koden:
inkluderer <iostream>
bruker namespace std;
int main ()
{
2 Erklærer variabler. Bruk to konstanter for de første vilkårene i sekvensen (null og en), til en variabel for brukerens input og en peker variabel skape den dynamiske array.
Dette er de erklæringer:
const int seed1 = 0; // I "frø" av sekvensen
const int seed2 = 1;
int * pos; // Dette peker på en rekke som vil holde serien
int valg; // Brukerens input
3 Be om brukerundersøkelser og teste om brukerundersøkelser er riktig. For dette programmet, vil en korrekt inngang være "3" eller mer. Her er koden:
cout << "Tast inn numrene av vilkårene for å vise:"; // lese brukerundersøkelser
cin >> valg;
if (valg <3) // hvis brukeren inngangen er mindre enn 3, avbryt
{
cout << "\nWrong number of terms. Program will terminate\n";
avkastning (1);
}
4 Lag dynamisk array å lagre vilkårene i Fibonacci-sekvensen. Initial den første og andre periode i matrisen til null og én (seed1 og seed2). Bruk en kontrollert loop ( "for" loop) for å lage de andre vilkårene i sekvensen på dynamisk array. Bruk følgende kode:
pos = new int [valg]; // Skape en dynamisk array, til å lagre bare vilkårene etterspør
pos [0] = seed1;
pos [1] = seed2;
for (int index = 2; indeks == (valg-1); index ++) // skape betingelsene etterspør
{
pos[index]= pos[index-1] + pos[index-2];
}
5 Lag en andre styrt "for" loop til utgangs vilkårene i rekken. Etter å ha vist fem vilkår, gå til neste linje. Her er koden:
for (int disp = 0; disp == (valg-1); disp ++) // disply vilkårene
{
cout & lt; & lt; pos [DISP] & lt; & lt; "";
if (disp == 5) // etter fem vilkår, hoppe til neste linje
cout & lt; & lt; endl;
}
6 Avslutt programmet ved å legge til noen flere linjer mellomrom, og returnerer en verdi. Her er koden:
cout << endl << endl; // Avslutte programmet
avkastning (0);
}
7 Kopier og lim inn hele koden inn i C ++ editor. Her er den komplette koden:
inkluderer <iostream>
bruker namespace std;
int main ()
{
const int seed1=0; //the 'seeds' of the sequence
const int seed2 = 1;
int * pos; // Dette peker på en rekke som vil holde serien
int valg; // Brukerens input
cout & lt; & lt; "Fyll inn tallene fra vilkårene for å vise:"; // lesebrukerundersøkelser
cin >> valg;
if (valg & lt; 3) // hvis brukeren inngangen er mindre enn 3, avbryt
{
cout & lt; & lt; "\ NWrong rekke begreper Program vil avslutte \ n.";
avkastning (1);
}
pos = new int [valg]; // Skape en dynamisk array, til å lagre bare vilkårene etterspør
pos [0] = seed1;
pos [1] = seed2;
for (int index = 2; indeks == (valg-1); index ++) // skape betingelsene etterspør
{
pos [index] = pos [indeks 1] + pos [index-2];
}
for (int disp = 0; disp == (valg-1); disp ++) // disply vilkårene
{
cout & lt; & lt; pos [DISP] & lt; & lt; "";
if (disp == 5) // etter fem vilkår, hoppe til neste linje
cout & lt; & lt; endl;
}
cout & lt; & lt; endl & lt; & lt; endl; // Avslutte programmet
avkastning (0);
}