Rozdział 21. Liczby pseudolosowe
Ostatnio zmodyfikowano 2023-06-11 14:22
Gawel Temat założony przez niniejszego użytkownika |
Rozdział 21. Liczby pseudolosowe » 2023-06-10 19:01:54 Cześć, Mam problem z zadaniem z rozdziału o liczbach pseudolosowych. Nie mogę ustawić tablicy z liczbami losowymi. #include <iostream> #include <cstdlib> #include <ctime>
using namespace std;
int los() { return( rand() % 3 ) + 0; }
bool czyByla( int losowa, int tab[ ], int ktora ) { if( ktora <= 0 ) return false; int i = 0; do { if( tab[ i ] == losowa ) return true; i++; } while( i < ktora ); return false; }
int main() { srand( time( 0 ) ); int podanaLiczba[ 2 ]; cout << "Podaj 3 liczby do losowania: " << endl; int b = 0; do { cin >> podanaLiczba[ b ]; b++; } while( b <= 2 ); int tablicaLosow[ 1 ]; int liczbaLosow = 0; do { int liczba = los(); if( czyByla( liczba, tablicaLosow, liczbaLosow ) == false ) { tablicaLosow[ liczbaLosow ] = liczba; liczbaLosow++; } } while( liczbaLosow < 2 ); liczbaLosow = 0; do { cout << liczbaLosow + 1 << ". Los to: " << podanaLiczba[ tablicaLosow[ liczbaLosow ] ] << endl; liczbaLosow++; } while( liczbaLosow < 2 ); return 0; } |
|
pekfos |
» 2023-06-10 19:54:09 Masz za małe tablice. Tablica na 3 elementy ma [3] w definicji. |
|
Gawel Temat założony przez niniejszego użytkownika |
» 2023-06-11 13:22:47 Zwiększyłem tablicę i działa. Tylko nie rozumiem dlaczego. Skoro tablice zaczynają się od 0, to chcąc mieć dwa elementy zakładam tablica[1] i mam tablica[0] i tablica [1]. Dobrze to rozumiem? |
|
pekfos |
» 2023-06-11 14:22:16 Definiując tablicę podajesz jej rozmiar, nie największy oczekiwany indeks. |
|
« 1 » |