Lekcja 21 zadanie 1 Problem z wylosowaniem
Ostatnio zmodyfikowano 2012-05-11 15:21
Robson Temat założony przez niniejszego użytkownika |
Lekcja 21 zadanie 1 Problem z wylosowaniem » 2012-05-11 14:15:42 Witam. Czy mógłby mi ktoś jakoś wytłumaczyć, jak z tablicy, w której mam wpisane 3 liczby, wylosować 2 spośród TYCH liczb, a nie jakichś z kosmosu? Nie ogarniam tego niestety. W niektórych tych kodach, które ludzie wrzucali na forum są błędy, a ja z nich nie mogę tego ogarnąć. 3 dzień analizuję te ich kody i jakoś mam taki niedosyt.
Nie proszę o kod, tylko o wytłumaczenie. Dziękuję z góry, Robson. |
|
czosnek17 |
» 2012-05-11 14:20:21 Masz 3 liczby. Przypisujesz je do tablicy i losujesz dwa razy liczbę z przedziału od 1 do 3. Losowaną liczbę zapisuj od razu do zmiennej, którą wstawisz w licznik tablicy. |
|
pekfos |
» 2012-05-11 14:21:02 Masz tablice z wynikami int tab[ 3 ] = { x, y, z };
Dostępne pod indeksami 0, 1, 2. Losuj indeks: i drugi: int j = i; while( j == i ) j = rand() % 3;
i wyniki masz pod indeksami i oraz j. |
|
Robson Temat założony przez niniejszego użytkownika |
» 2012-05-11 14:52:55 Dobra czaję już, ale tego co Pekfos napisałeś na końcu to jakoś nie bardzo. i drugi: int j = i; while( j == i ) j = rand() % 3;
i wyniki masz pod indeksami i oraz j. |
|
SeaMonster131 |
» 2012-05-11 14:57:34 No skoro musisz wylosować 2 indeksy, to nie miałoby to sensu, gdyby były takie same. |
|
RazzorFlame |
» 2012-05-11 15:00:28 int index1 = 0; int index2 = 0;
index1 =( rand() % 2 ) + 0; while( index2 == index1 ) index2 =( rand() % 2 ) + 0;
cout << tablica[ index1 ] << "\n" << tablica[ index2 ] << endl;
|
|
SeaMonster131 |
» 2012-05-11 15:21:18 ( rand() % 2 ) to Ci wylosuje albo 0 albo 1. rand()%n -> losuje liczbę do n-1. |
|
« 1 » |