Witam.
Od kilku ładnych godzin męcze się z programem, który miał działać następująco:
- Wczytać 3 liczby podane przez użytkownika
- Wylosowac 2 z nich bez powtórzeń
- Wypisac wylosowane liczby na ekran
Aktualny problem polega na tym, iż po podaniu 3 liczb program nic nie robi. Oto kod:
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int wczytaj_liczby(int liczby[])
{
cout << "Podaj 3 liczby: " << endl;
int i = 0;
do
{
cin >> liczby[i];
i++;
}
while(i < 3);
return 0;
}
int losuj_liczby(int liczby[])
{
int n = 0;
do
{
int i;
i = (rand() % 3);
liczby[i];
n++;
}
while(n < 2);
return 0;
}
bool czy_byla_wylosowana(int liczby[], int wylosowane_liczby, int wylosowanych)
{
if(wylosowanych <= 0)
{
return true;
}
int i = 0;
do
{
if(liczby[i] == wylosowane_liczby);
{
return false;
i++;
}
}
while(i < wylosowanych);
return true;
}
int main()
{
srand(time(NULL));
int liczby[2];
int wylosowanych = 0;
wczytaj_liczby(liczby);
do
{
int wylosowane_liczby = losuj_liczby(liczby);
if(czy_byla_wylosowana(liczby, wylosowane_liczby, wylosowanych) == true)
{
liczby[wylosowanych] = wylosowane_liczby;
wylosowanych++;
}
}
while(wylosowanych < 2);
wylosowanych = 0;
do
{
cout << "Wylosowane liczby to: " << liczby[wylosowanych] << ' ';
wylosowanych++;
}
while(wylosowanych < 2);
return 0;
}
Z góry dziękuję za pomoc :)