Fibonacci -sekvens C ++

Fibonacci -sekvens C ++
Fibonacci -serien/sekvensen er en serie med tall som er opprettet når neste nummer oppnås ved å ha en sum av de to siste tallene i en serie. De to første tallene er alltid 0 og 1. Fibonacci -serien kan fås på et hvilket som helst programmeringsspråk, men her vil vi bruke kildekoden på C ++ programmeringsspråket. I matematikk blir sekvensen av fibonacci forklart gjennom rekursjonsforhold med en prøveformel.

Fn = fn-1 + fn-2

Denne opplæringen vil inneholde forskjellige metodologier for å lage en sekvens av fibonacci -tall.

Eksempel 1

I dette eksemplet brukes først biblioteket med inngangs- og utgangsstrømmer for å mulig. Inne i hovedprogrammet vil vi ta to variabler av heltallstype og erklære dem null verdi. En annen nextterm -variabel brukes også som initialiseres som null og plassert for senere bruk. Vi vil be brukeren om å oppgi et nummer han krever i Fibonacci -serien. Med andre ord, antall linjer som vises som utgang, avhenger av brukerens inngang. Det spesifikke nummeret brukeren vil angi, resultatet vil inneholde svaret i disse linjene.

Vi trenger en 'for' -sløyfe for å iterere opp til det spesifikke nummeret som brukeren legger inn for å beregne sekvensen. Dette er en slags grense av flere linjer. En IF -uttalelse brukes til å sjekke nummeret; Hvis det er en, kan du vise den som det er uten noen endring. Tilsvarende vises det andre nummeret på samme måte. I Fibonacci -sekvensen vises de to første tallene. For å gå videre, har vi brukt fortsettelseserklæringen. For å beregne serien videre, vil vi legge til begge verdiene. Og denne vil være det tredje nummeret i serien. Etter at bytteprosessen starter, vil den første variabelen bli tildelt verdien av den andre variabelen, og den andre variabelen vil inneholde den tredje verdien som er lagret i nextTerm -variabelen.

NextTerm = T1 + T2;

T1 = T2;

T2 = NextTerm;

Nå vises hver verdi atskilt med komma. Utfør koden gjennom en kompilator. '-o' brukes til å lagre utdataene fra koden som er til stede i inndatafilen.

$ g ++ -o fib fib.c
$ ./fib

Du kan se at når programmet blir utført, vil brukeren be om å oppgi nummeret han har skrevet inn 7, så vil resultatet være av 7 linjer, uansett på hvilket tidspunkt Fibonacci -serien har nådd det syvende punktet.

Eksempel 2

Dette eksemplet vil inneholde beregningen av Fibonacci -serien ved å begrense den nextterm -verdien. Dette betyr at Fibonacci -serien kan tilpasses ved å oppgi et spesifisert nummer i hvilken grad du vil ha. I motsetning til det forrige eksemplet, avhenger ikke resultatet av antall linjer, men antall serier gitt av et tall. Vi starter fra hovedprogrammet, variablene er de samme, og tilnærmingen til brukerens engasjement er også den samme. Så de to første variablene initialiseres som null i starten, er den nextyTm -variabelen erklært null. Da vil brukeren oppgi nummeret. De to første begrepene vises deretter som alltid er 0 og 1.

NESTETERM -verdien vil bli tildelt verdien oppnådd ved å legge til tallene som er til stede i de to første variablene. Her brukes en stund loop til å bruke en betingelse for å opprette serien til verdien i nextTerm -variabelen er lik eller mindre enn tallet som brukeren gir.

Mens (NextTerm <= n)

Inne i dette mens Loop vil logikken bli brukt ved å bytte tall i bakoverretning. NESTETERM -variabelen vil igjen legge til verdiene til variabler.

NextTerm = T1 + T2;

Lagre nå filen og kompilere den for å utføre koden i terminalen.

Når du kjører koden, vil systemet kreve et nummer fra deg som må være et positivt tall. Da vil du se at ved beregning vises en serie med tall til det 55. tallet vises.

Eksempel 3

Denne kildekoden som vi vil nevne vil inneholde en annen metode for å beregne Fibonacci -serien. Til nå har vi beregnet serien inne i hovedprogrammet. Dette eksemplet bruker involvering av en egen funksjon for å beregne denne sekvensen av tall. Inne i funksjonen blir det gjort en rekursiv samtale for å fortsette prosessen. Derfor er det også et eksempel på rekursjon. Funksjonen vil ta nummeret i parameteren, som serien skal beregnes. Dette nummeret sendes fra hovedprogrammet. En IF -uttalelse brukes til å sjekke om tallet er mindre enn eller lik 1, og returner selve nummeret fordi vi trenger minimum to tall for å beregne serien. I det andre tilfellet, når tilstanden blir falsk og antallet er større enn 1, beregner du serien ved å gjentatte ganger bruke en rekursiv samtale til selve funksjonen.

FIB (N-1) + FIB (N-2);

Dette viser at i første del, ett tall før det totale antallet sendes til funksjonen, vil den verdien trekkes fra antallet oppnådd fra cellen som inneholder to tall før det totale antallet som en parameter.

Nå i hovedprogrammet tildeles nummeret til variabelen, og den første funksjonssamtalen blir gjort for å gi nummeret til funksjonen. Utfør nå filens kildekode i terminalen for å få svaret. Her vil du se at '13' er svaret, ettersom antallet som ble lagt inn var 7, så serien vil være 0+1+1+2+3+5+8+13.

Eksempel 4

Dette eksemplet involverer OOP (objektorientert programmering) tilnærming til å beregne Fibonacci-serien. En klasse GFG er opprettet. I sin offentlige del opprettes en funksjon for å ha en rekke som lagrer Fibonacci -serien.

F [n +2];

Her n er tallet erklært som 0 i starten.

F [0] = 0;

F [1] = 1;

Tallene ved indeks 0 og 1 er erklært som 0 og 1.

Etter det brukes en 'for' sløyfe der Fibonacci -serien vil bli beregnet. De to foregående tallene blir lagt til i serien og vil bli lagret.

F [i] = f [i -1] + f [i -2];

Etter det returneres det spesifikke tallet på en bestemt indeks.

En funksjonsanrop blir gjort ved å bruke objektet.

g.fib (n);

Nå utfør koden, så vil du se at ettersom tallet er 11, vil sekvensen være til det 11. sifferet.

Konklusjon

Denne artikkelen 'Fibonacci Sequence C ++' er en blanding av forskjellige tilnærminger som brukes til å lage en sekvens ved å legge til de to foregående tallene. Med en enkel byttingsteknikk, i tillegg til rekursjonsmetoden og ved hjelp av matriser, kan vi generere disse tallene i serie. For å opprette Fibonacci -serien, anbefales tallene å være i heltalldatatype. Vi kan beregne serien ved å bruke begrensninger på antall linjer og antall sekvens.