Witam. Jestem nowy i mam nadzieję, że może na tym forum uzyskam jakąś pomoc. Uczę się c++ i jestem jak na razie początkujący. Uczę się z kursu, w którym miałem polecenie do wykonania, które brzmi:
Napisz program, który wczyta 3 liczby podane przez użytkownika do tablicy, a następnie wylosuje 2 z nich bez powtórzeń. Wynik wypisz na ekran. Postaraj się napisać ten program w oparciu o funkcje.
Kod który napisałem to:
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
bool czyBylaWylosowana(int liczba, int tablica[], int ile)
{
if(ile<=0)
return false;
int i=0;
do
{
if(tablica[i] == liczba)
return true;
}while(i<ile);
return false;
}
int losuj()
{
return (rand()%2)+1;
}
int main()
{
srand(time(NULL));
int liczby[3];
int wylosowane[2];
int wylosowanych = 0;
cout << "Podaj 3 liczby:" << endl;
int i=0;
do
{
cin >> liczby[i];
i++;
}while(i<3);
do
{
int liczba=losuj();
if(czyBylaWylosowana(liczba, wylosowane , wylosowanych) == false)
{
wylosowane[wylosowanych] = liczba;
wylosowanych++;
}
}while(wylosowanych<2);
cout << endl << "Wylosowalem 2 liczby z twoich ktorymi sa: ";
int a=0;
do
{
cout << liczby[wylosowane[a]];
i++;
}while(wylosowanych<2);
return 0;
}
Kompilator nie wyrzuca mi żadnych błędów bo tak to jakoś bym się z tym uporał ale program tak jak by się zapętlał po podaniu tych 3 liczb. Z góry dzięki za pomoc :)