Nieskończona pętla przy wykrywaniu powtórzonych wartości tablicy
Ostatnio zmodyfikowano 2017-11-26 22:57
Knyfel Temat założony przez niniejszego użytkownika |
Nieskończona pętla przy wykrywaniu powtórzonych wartości tablicy » 2017-11-26 14:40:31 Witam, nie mam pojęcia czemu, ale nie drukują mi się wyniki, ponieważ powstaje nieskończona pętla :( Ktoś ma jakiś pomysł czemu? Wszystko się kompiluje, ale wyników w konsoli brak. #include <iostream> #include <ctime> #include <cstdlib>
using namespace std;
int losuj( int p, int q ) { return p + rand() %( q - p + 1 ); }
void main() { int liczba, q, p; p = 1; q = 10; int tab[ 5 ] = { 0, 0, 0, 0, 0 }; bool binar; srand( time( NULL ) ); int n = 0; do { binar = true; liczba = losuj( p, q ); for( int i = 0; i < 5; i++ ) { if( tab[ i ] == liczba ) { i = 5; binar = false; } else tab[ n ] = liczba; } if( binar ) n++; } while( n < 5 ); for( int t: tab ) { cout << t << endl; } system( "pause" ); } |
|
pekfos |
» 2017-11-26 15:04:14 Nie wpisuj liczby do tablicy w trakcie sprawdzania, czy ta liczba tam jest. |
|
Knyfel Temat założony przez niniejszego użytkownika |
Dziękuję » 2017-11-26 22:57:11 Dziękuję! Zastosowałem się do tej porady i teraz działa. |
|
« 1 » |