Wypełnienie tablicy wartościami powiększanymi o 3 dla każdego kolejnego elementu

0

Witam, mocne newbie z tej strony i chyba powoli dochodzę do wniosku, ze jestem już zmęczony...

Chcę aby do każdego kolejnego elementu tablicy zostało dodane 3. Zadeklarowałem pierwszy element tablicy jako jeden, stworzyłem pętlę zaczynającą się od drugiego elementu tablicy i chcę aby po kolei zostało dodane 3 do każdego elementu tablicy, aż do jej końca końca. Na czym polega problem w moim rozumowaniu? Co zrobiłem nie tak? Rzecz tak banalna do napisania, a dzieją się dziwne rzeczy po odpaleniu kodu. :(

Co się wyświetla:

1
4732447
4733739
9
4733739
4759771

Kod:

#include <iostream>
using namespace std;

int main()
{
    int tablica[100];
    tablica[0]=1;

     for (int i=1;i<100;i++)
                tablica[i]+=3;

     for (int j=0;j<100;j++)
                cout<<tablica[j]<<endl;

  return 0;
}
1

tablica[i] = i * 3 + 1;

2

@kauczuk: nie wypełniłeś pozostałych elementów tablicy liczbami, a próbujesz je inkrementować – w rezultacie inkrementujesz śmieci, stąd takie dziwne wartości. Jeśli już uprzeć się przy tej pętli to w taki sposób:

for (int i = 1; i < 100; i++)
  tablica[i] = tablica[i - 1] + 3;

Bierze się wartość poprzedniej komórki, do niej dodaje się 3 i wpisuje do bieżącej.

0

Super, dzięki wielkie, to wiele wyjaśnia

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.