fibonacci tal række

Tags:    c++

Hej udviklere!

Jeg står og mangler en der kan noget c++, som kan lave et lille simpelt program for mig. Jeg skal bruge et program der kan spytte fibonacci talrække ud.

Funktioner:
Mulighed for at sætte min/max værdi for hvor den skal gå til
Mulighed for at sætte et specifikt "nummer" ind som man vil have oplyst eksempelvis F13(fibonacci tallet nr. 13) = 233

Går udfra dette er et ligetil projekt, og ikke det sværeste. Jeg har kigget lidt rundt på google og fundet et hav af nogle der er kodet, men kan ikke få dem compilet og ved ikke hvordan jeg gør. Derfor jeg søger hjælp her.

Håber der er en der kan hjælpe ;)

//Morten Klim Sørensen



75 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 6 karma
Sorter efter stemmer Sorter efter dato
woops, der var lige en lille fejl i beregningen. Den hvor man skal finde et bestemt fibonacci nummer altså F(n), tror jeg du har glemt 1 og 1

For den siger det første fibonacci tal er 2.

I den hvor men får en hel talrække, har du glemt et enkelt 1 tal, de 2 første den spytter ud skal være værdien 1.

Det er fordi at
F0 = 0
F1 = 1
F2 = 1
F3 = 2
F4= 3
F5= 5
F6= 8
osv.

Her er et link, hvis det bedre illustrere hvad jeg mener: http://milan.milanovic.org/math/Math.php?akcija=SviFibo



//Morten Klim Sørensen



Indlæg senest redigeret d. 16.03.2010 17:14 af Bruger #15687
Glad for at kunne hjælpe!:D
Prøv at se om den virker nu
0 er første værdi.
her er den sig hvis håber ikke at jeg har taget fejl af dig.:D
håber den kan bruges (og du får 12)
og tak for pointene
Fold kodeboks ind/udKode 


Hovsa skulle lige redigere noget nu tror jeg den er det:D



Indlæg senest redigeret d. 16.03.2010 18:22 af Bruger #15732
Jeg oplever desvære stadig samme fejl.

I både række ( mulighed 1 ) og bestemt tal(mulighed 0 ) er det som om den er 2 trin foran.

Den spyter disse tal ud:

F10 = 144 (FORKERT BEREGNING)

Hvilket i virkeligheden er 55

144 = F12 (RIGTIG)

F12 = 377 (FORKERT BEREGNING)

Hvilket i virkeligheden er 144

377 = F14 (RIGTIGE)


Den første beregning den skal lave i mulighed 1, hvor den skriver rækken, er 0 + 1 derefter 1 + 1, 1 + 2, 2 + 3 osv.





Jeg vil kigge på det igen:D



Har du kørt den nye kode? har opdateret den
I min er 9 55 fordi den starter fra 0



Indlæg senest redigeret d. 16.03.2010 18:05 af Bruger #15732
Har du kørt den nye kode? har opdateret den
I min er 9 55 fordi den starter fra 0


Nå, nu viser den noget andet. Mærkeligt, men det er dog stadig ikke korrekt.

F9 = 34

Hvor som du skriver den viser 55

Da jeg ikke er så hård til C++, kan jeg ikke se hvordan den beregner talene. Men hvis du kan skrive det, kan jeg måske forklare hvad der går galt.

Det er stadig som om den er et tal foran.

Her er det den gerne skulle vise.

0. number = 0
1. number = 1
2. number = 1
3. number = 2
4. number = 3
5. number = 5
6. number = 8
7. number = 13
8. number = 21
9. number = 34
10. number = 55
11. number = 89
12. number = 144


//Morten Klim Sørensen



Hmmm min viser 55 ved 9.
denne kode virker ved mig har ændret lidt på den
Fold kodeboks ind/udKode 

Kan ikke forstå hvad der ellers er galt. Hvad tal starter du den fra?
kommer ikke på igen idag men skriv bare jeg svarer igen i morgen eller senere



Indlæg senest redigeret d. 16.03.2010 19:01 af Bruger #15732
Hmmm min viser 55 ved 9.
denne kode virker ved mig har ændret lidt på den
Fold kodeboks ind/udKode 

Kan ikke forstå hvad der ellers er galt. Hvad tal starter du den fra?
kommer ikke på igen idag men skriv bare jeg svarer igen i morgen eller senere


Tror vi misforstår hinanden lidt :P

At den viser 55 ved 9 er også forkert, den skal vise 34.

Jeg starter den fra 0 til 200

Kan være du bare skal tilføje 0 + 0 så den starter med at regne det ud



Indlæg senest redigeret d. 16.03.2010 19:14 af Bruger #15687
Men det er jo fordi den starter fra 0
første værdi er 0 i datatabellen
1 værdi er aden osv.



Den her linie i koden dur ikke:
int fibonacciData[];



t