• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Ciąg Fibonacciego w tablicach

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
1,951 wizyt
pytanie zadane 14 grudnia 2016 w C i C++ przez Warcin Mójcik Użytkownik (730 p.)
edycja 14 grudnia 2016 przez Eryk Andrzejewski

Mam za zadanie napisać Ciąg Fibonacciego. Wykładowca chce by poczatkowe liczby czyli 1 oraz 1 się pokazywały na ekranie. Próbuję na różne sposoby ale jak w pętli zmniejszam wartość początkową "i" to mi wyskakują z kosmosu liczby. Wszystko ma się znajdować w pętli. Jakieś pomysły?

 

#include <iostream>
#include <math.h>

using namespace std;

int main(void)
{
    
 int i=0;
 int tab[10]={1,1};
 
 
 for(i=2;i<=10;i++)
    {
      tab[i]=tab[i-1]+tab[i-2];
     
      cout<<tab[i]<<endl;
    }    
    
    
return 0;
}

 

komentarz 14 grudnia 2016 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Witaj, jesteś użytkownikiem tego forum nie od dziś i chyba powinieneś wiedzieć o wstawianiu kodu w bloczek :)

3 odpowiedzi

0 głosów
odpowiedź 14 grudnia 2016 przez Przemek Gaduła (3,600 p.)
wybrane 16 grudnia 2016 przez Warcin Mójcik
 
Najlepsza
Jak chcesz to w pętli to se walnij na jej początku warunek jeżli i = 0 lub 1 to wypisz tab[0] itd. a potem continue
komentarz 14 grudnia 2016 przez Przemek Gaduła (3,600 p.)
 for(i=0;i<=10;i++)
    {
      if(i == 0 || i == 1){
             cout << tab[i] << endl;
             continue;
      }
      tab[i]=tab[i-1]+tab[i-2];
      cout<<tab[i]<<endl;
    }    

 

komentarz 14 grudnia 2016 przez Przemek Gaduła (3,600 p.)
poza tym twoja pęta ma warunek i<=10 czyli jeżeli i będzie równe 10 to pętla wykona się dla 11 elementu tablicy a tablice masz tylko na 10
0 głosów
odpowiedź 14 grudnia 2016 przez ribeiro Stary wyjadacz (11,440 p.)
0 głosów
odpowiedź 14 grudnia 2016 przez MyWash Bywalec (2,640 p.)
Nie bardzo rozumiem problem, czemu nie możesz przed pętlą wypisać cout<<tab[0]; cout<<tab[1]; i potem petla?
komentarz 14 grudnia 2016 przez Warcin Mójcik Użytkownik (730 p.)
Wykładowca powiedział żeby wszystko było w pętli zawarte bo się tak da.
komentarz 14 grudnia 2016 przez MyWash Bywalec (2,640 p.)
#include <iostream>
#include <math.h>

using namespace std;

int main()
{

	int i = 0;
	int tab[10];
	tab[0] = 1;
	tab[1] = 1;


	for (int i = 2; i < 10; i++)
	{
		if (i <3)
		{
			cout << tab[0] << endl;
			cout << tab[1] << endl;
		}


		tab[i] = tab[i - 1] + tab[i - 2];

	
	}


	return 0;
}


Rozwiązanie moim zdaniem mało majestatyczne, ale jeśli dobrze rozumiem, to powinno być tak jak chcesz.

Podobne pytania

+5 głosów
3 odpowiedzi 12,687 wizyt
0 głosów
1 odpowiedź 348 wizyt
pytanie zadane 20 maja 2023 w C i C++ przez Igaiga Nowicjusz (120 p.)
0 głosów
1 odpowiedź 848 wizyt
pytanie zadane 15 listopada 2019 w C i C++ przez wonsz123 Nowicjusz (120 p.)

93,088 zapytań

142,047 odpowiedzi

321,473 komentarzy

62,435 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...