Używanie zmiennej jako indexu tablicy

0

Log kompilacji :

In function 'int main()':|
error: variable-sized object 'liczba' may not be initialized|
error: ISO C++ forbids comparison between pointer and integer [-fpermissive]|
||=== Build failed: 2 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
 

Chce żeby wylosowane liczby były zapisywane do kolejnych zmiennych w tablicy. Pomożecie :) ?

// nie wiem co z nim nie tak :/
#include <iostream>
#include <cstdlib>
#include <ctime>

int main()
{
using namespace std; // przestrzeń nazw
int i; 
int tab[100]; // tablica jednowymiarowa, 100 zmiennych
for( i = 1; i <= 100; i++ ) // pętla for, wykona się 100 razy
{
srand( time( 0 ) );
int licznik = 0;
++licznik; // podnieś licznik o 1
int liczba[licznik] = ( rand() % 100 ) + 1; // losowanie, za każdym razem będzie podniesony numer tablicy czyli powinno zapisywać zawsze do innej zmiennej w tablicy - chyba tak :D
liczba == tab[licznik]; // przeniesienie wyniku do zmiennej 
cout << liczba << " "; // wyświetlenie wyniku
}
int czekaj; 
cin >> czekaj; // prymitywna forma wstrzymania programu :D
return 0; // no i koniec
} 
7

To jest niezły wyczyn zrobić tyle błędów w takim krótkim kodzie. Chylę czoła!

  1. srand wywołuje się raz a nie w każdym obiegu pętli
int licznik = 0;
++licznik; // podnieś licznik o 1

rozumiesz że w każdym obiegu pętli wykonasz te dwie operacje więc licznik zawsze będzie wynosił 1?
3.

int liczba[licznik] = ( rand() % 100 ) + 1;

to mam WTFa. Rozumiem że chciałes zrobić jednak

tab[licznik] = ( rand() % 100 ) + 1;

Żeby wpisywać liczby do tej twojej tablicy?
4.

liczba == tab[licznik];

operator == to porównanie a nie przypisanie.
5. Powinno to wyglądać tak:

int tab[100];
for(int i=0;i<100;i++){
    tab[i] = ( rand() % 100 ) + 1;
    cout<<tab[i]<<" ";
}
0

Haha to niezły ze mnie programista :) To tylko moja pierwsza próba wykorzystania tego co nauczyłem się z pewnego kursu - widać, że jeszcze dużo muszę się nauczyć. BTW podczas pisania tego 'programu' starałem się myśleć abstrakcyjnie - widać efekty :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1