Switch,for loop. random generator.
Ostatnio zmodyfikowano 2017-11-12 12:17
xxxxxxx Temat założony przez niniejszego użytkownika |
Switch,for loop. random generator. » 2017-11-12 10:36:21 #include <iostream> #include <cstdlib> #include <ctime>
using namespace std;
int main() { int w = 0, p = 0; srand( time( 0 ) ); int tab[ 5 ]; for( int i = 1; i <= 5; i++ ) { tab[ i ] = rand() % 2; switch( tab[ i ] ) { case 1: w++; break; case 0: p++; } cout << i << ". " << tab[ i ] << " " << w << " " << p << endl; } }
program losuje 5 liczb <0,1> . w momencie wylosowania 1 chce aby program przestal losowac i wyswietlil liczby do momentu wylosowania 1. |
|
xxxxxxx Temat założony przez niniejszego użytkownika |
» 2017-11-12 11:02:22 I co nikt nie wie? Niekt nie jest w stanie udzielić wskazówek, uwag? jak trzeba to zaplace. |
|
Kinexity |
» 2017-11-12 11:09:52 1. Co się tak niecierpliwisz. Może się nawet zdarzyć, że na odp możesz czekać do jutra. 2. To nie jest forum, na którym musisz zapłacić, żeby dostać pomoc. 3. break w switch'u nie przerywa pętli. 4. W pętli wychodzisz poza zakres tablicy. |
|
xxxxxxx Temat założony przez niniejszego użytkownika |
» 2017-11-12 11:15:08 waptpie; plemieniu zmijowemu placi sie za wszystko.
dziekkuje zegnam. to juz ostatni post. |
|
YooSy |
» 2017-11-12 11:15:15 wyswietlil liczby do momentu wylosowania 1. |
Może się zdarzyć, że program nigdy nie wylosuje jedynki. Opieranie programu na takim warunku jest ryzykowne. waptpie; plemieniu zmijowemu placi sie za wszystko. |
Nie za wszystko, ale nie ma co traktować "zmijowego plemienia" jak własnych lokajów, którzy tylko czekają, aż jaśniepan zada pytanie. Przez czas oczekiwania pewnie samemu rozwiązałoby się problem. |
|
Wuwus1 |
» 2017-11-12 12:17:49 Zmodyfikowałem twój program troszeczkę. Po pierwsze wywaliłem pętle for i wstawiłem pętle warunkową, która kończy się gdy program skończy pętle lub jeżeli zmienna end będzie równać się true. Zmienna end zmienia się na true jeśli program wylosuje 1 kończy pętle warunkową. Następna pętla for wypisuje wartości. #include <iostream> #include <cstdlib> #include <ctime>
using namespace std;
int main() { const int SIZE = 5; int w = 0, p = 0; srand( time( 0 ) ); int tab[ SIZE ]; int i = 0; bool end = false; while( i <= SIZE - 1 && end == false ) { tab[ i ] = rand() % 2; switch( tab[ i ] ) { case 1: w++; end = true; break; case 0: p++; break; } i++; } for( int j = 0; j < i; j++ ) cout << j + 1 << ". " << tab[ j ] << " " << w << " " << p << endl; return 0; }
Wynik 1. 0 1 2 2. 0 1 2 3. 1 1 2
. |
|
« 1 » |