Rodzdział 2.21 Nie działa poprawnie kod sprawdzający czy liczba została wylosowana
Ostatnio zmodyfikowano 2018-07-08 15:10
HudyWeas Temat założony przez niniejszego użytkownika |
Rodzdział 2.21 Nie działa poprawnie kod sprawdzający czy liczba została wylosowana » 2018-07-08 13:43:18 Jak w tytulew programie nie działa kod, który powinien sprawdzać czy liczba została już wcześniej wylosowana i nie potrafię tego naprawić. #include "stdafx.h" #include <iostream> #include <cstdio> #include <ctime> using namespace std;
int wpisywanieLiczby() { int a; cin >> a; return a; }
bool czyBylaWylosowana( int iLiczba, int t[], int ile ) { if( ile <= 0 ) return false; int i = 0; do { if( t[ i ] == iLiczba ) return true; i++; } while( i < ile ); return false; }
int los( int t[] ) { int losowa =(( rand() % 3 ) + 0 ); return t[ losowa ]; }
void wypisywanie( int t[], int ile ) { int i = 0; do { cout << "Wylosowana liczba to: " << t[ i ] << endl; i++; } while( i < ile ); }
int main() { srand( time( NULL ) ); int wpisaneLiczby[ 3 ]; int wpisanych = 0; cout << "Wpisz 3 liczby" << endl; do { wpisaneLiczby[ wpisanych ] = wpisywanieLiczby(); wpisanych++; } while( wpisanych < 3 ); int zapisanych = 0; int doWypisania[ 2 ]; do { int liczba = los( wpisaneLiczby ); if( czyBylaWylosowana( liczba, wpisaneLiczby, zapisanych ) == false ) { doWypisania[ zapisanych ] = liczba; zapisanych++; } } while( zapisanych < 2 ); wypisywanie( doWypisania, 2 ); return 0; } |
|
pekfos |
» 2018-07-08 14:05:24 if( czyBylaWylosowana( liczba, wpisaneLiczby, zapisanych ) == false ) { doWypisania[ zapisanych ] = liczba; zapisanych++; } |
Jaka tablica przechowuje wylosowane liczby? A w jakiej sprawdzasz? |
|
HudyWeas Temat założony przez niniejszego użytkownika |
» 2018-07-08 15:10:12 Faktycznie, sprawdzałem w tabeli, w której są liczby wpisane przez użytkownika. Dzięki |
|
« 1 » |