Witam mam problem z kodem w języku c++.
Planowałem napisać dosyć prosty kod mający na celu weryfikacje losowanych liczb, aby losowanie odbywało się bez powtórzeń, jednak pomimo wielu prób i poprawek nie jestem w stanie dojść do powodu nieprawidłowego działania kodu. Losowanie zwyczajnie odbywa się z powtórkami. Kod wygląda następująco:
int suma=0;
int wynik2[ile];
if(powtorka==2)
{
for(int j=0; j<ile; j++)
{
wynik2[j]= calkowite(ood,doo);
int i=j;
while(i>0)
{
while(wynik2[j]==wynik2[i-1])
{
wynik2[j]=calkowite(ood,doo);
}
i--;
}
}
}
for(int j=0; j<ile; j++)
` {
cout<< wynik2[j]<< " \a";
Sleep(1000);
suma+=wynik2[j];
}
cout<<endl<<"Suma: "<<suma<< "\a";
gdzie zmienna:
ile- liczba wszystkich losowanych liczb
powtorka- zwyczajna zmienna odpowiedzialna za decyzje odnośnie obecności "powtórek" w kodzie
calkowite(ood,doo)- funkcja losująca liczby całkowite w konkretnym przedziale
wynik2[]- tablica z wylosowanymi liczbami
Dolna pętla służy jedynie do liczenia sumy liczb, oraz wypisywania daych na ekran, nie sądze by była ona istotna w tym wątku ale dla pewności wolałem i ją tutaj umieścić. Jest to kod wewnątrz mej własnej funkcji do której wprowadziłem potrzebne dane. Problem, o którym już wyżej wspomniałem to zwyczajnie losowanie z powtórzeniami nawet w przypadku gdy powinno odbywać się bez nich. Bardzo proszę o pomoc, męczę się z tym kodem już kilka dni i skończyły mi się pomysły. W załączniku dodaję cały program, domyślam się, że spojrzenie z perspektywy całego programu jest znacznie prostsze. Z góry bardzo wszystkim dziękuję za poświęcony czas!