#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int wczytanie_liczb (int tab[], int ilosc,int od,int doo)
{
int nr_liczby=0;
cout << "Podaj liczby do losowania: " <<endl;
do
{
int iLiczba;
cin >> iLiczba;
if (iLiczba<=doo && iLiczba>=od)
{
tab[nr_liczby]=iLiczba;
nr_liczby++;
}
else
{
cout << "Podales inna liczbe niz z powyzszego zakresu"<<endl;
}
}while (nr_liczby<ilosc);
return 0;
}
bool sprawdzenie(int tab[],int losowana, int ilosc)
{
int i=0;
do
{
if(tab[i]==losowana)
{
return true;
}
i++;
}while(i<ilosc);
return false;
}
int losowanie (int od, int doo)
{
return (rand()%(doo+1-od))+od;
}
int main()
{
srand(time(NULL));
// Pobieranie przedziału //
int od;
int doo;
int ilosc=3;
int do_wylosowania=2;
cout << "Podaj z jakiego przedziału beda pochodzily liczby do losowania: "<<endl;
cout << "Od: ";
cin >> od;
cout << "Do: ";
cin >> doo;
int tablica[ilosc];
int wylosowane[do_wylosowania];
// Wczttywabue liczby //
wczytanie_liczb(tablica,ilosc,od,doo);
int i=0;
do
{
int los;
bool spraw;
//Losowanie liczby i jej sprawdzenie//
los = losowanie(od, doo);
spraw=sprawdzenie(tablica, los, ilosc);
int a = 0;
if(spraw==true)
{
wylosowane[a] = los;
a++;
}
i++;
}while(i<do_wylosowania);
cout << "Wylosowane liczby to:";
int b=0;
do
{
cout << wylosowane[b];
b++;
}while(b<do_wylosowania);
}
OPIS:
Program pobiera przedział z jakiego będą podawane liczby następnie prosi o podanie trzech liczb a na sam koniec losuje dwie z nich bez powtórzeń.
Niestety nie potrafię wyświetlić tych liczb. Proszę o pomoc.