Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // totolotek - dla wielu gier
- #include <cstdlib>
- #include <ctime>
- #include <iostream>
- using namespace std;
- bool czy_juz_jest(short* tablica, short n, short liczba)
- {
- for(short i = 0; i < n; ++i)
- if(tablica[i] == liczba)
- return true;
- return false;
- }
- void wylosuj(short* tablica)
- {
- srand(time(nullptr));
- short losowana;
- for(unsigned i = 0; i < 6; ++i)
- {
- do
- {
- losowana = 1 + rand() % 49;
- }
- while(czy_juz_jest(tablica, i, losowana));
- tablica[i] = losowana;
- }
- }
- void wypisz(short* tablica)
- {
- for(unsigned i = 0; i < 6; ++i)
- cout << tablica[i] << '\t';
- cout << endl;
- }
- void wypisz(unsigned N, short** tablica)
- {
- for(unsigned i = 0; i < N; ++i)
- {
- for(short j = 0; j < 6; ++j)
- cout << tablica[i][j] << '\t';
- cout << endl;
- }
- }
- void zwolnij(unsigned N, short** tablica)
- {
- for(unsigned i = 0; i < N; ++i)
- delete[] tablica[i];
- delete[] tablica;
- }
- void pobieranie_liczb(short** &tablica, unsigned N)
- {
- tablica = new short*[N];
- short liczba;
- for(unsigned i = 0; i < N; ++i)
- {
- cout << "Podaj liczby do zakladu nr " << i + 1 << ": ";
- tablica[i] = new short[6];
- for(short j = 0; j < 6; ++j)
- {
- cin >> liczba;
- while(liczba < 1 || liczba > 49 || czy_juz_jest(tablica[i], j, liczba))
- {
- if(liczba < 1 || liczba > 49)
- cout << "Podales liczbe poza zakresem. Wpisz liczbe z przedzialu od 1 do 49: ";
- else
- cout << liczba << " juz znajduje sie na tym kuponie, wpisz inna liczbe: ";
- cin >> liczba;
- }
- tablica[i][j] = liczba;
- }
- }
- }
- void sprawdzenie(unsigned N, short* losowane, short** typowane, short* wyniki)
- {
- short wynik;
- for(unsigned i = 0; i < N; ++i)
- {
- wynik = 0;
- for(short j = 0; j < 6; ++j)
- if(czy_juz_jest(losowane, 6, typowane[i][j]))
- ++wynik;
- wyniki[i] = wynik;
- }
- }
- void totalizator()
- {
- cout << "Podaj liczbe zakladow, ile chcesz grac: ";
- unsigned N;
- cin >> N;
- short** tablica = nullptr;
- pobieranie_liczb(tablica, N);
- short tab_losowana[6];
- wylosuj(tab_losowana);
- cout << "Twoj kupon:\n";
- wypisz(N, tablica);
- cout << "Wylosowano liczby:\n";
- wypisz(tab_losowana);
- cout << "W poszczegolnych kuponach uzyskales(as) nastepujaca liczbe trafien:\n";
- short* wyniki = new short[N];
- sprawdzenie(N, tab_losowana, tablica, wyniki);
- for(unsigned i = 0; i < N; ++i)
- cout << wyniki[i] << '\t';
- cout << endl;
- delete wyniki;
- zwolnij(N, tablica);
- }
- int main()
- {
- totalizator();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment