Klasy i ich konstruktory

Klasa i obiekty klas

deklaracje klas

funkcje składowe (metody) i pola

tworzenie obiektów

wskaźnik this

zakresy: private, public, protected

Konstruktor i desktruktor

konstruktor domniemany

konstruktor kopiujący

instrukcje inicjalizujace

Klasa: Bęben

Zaimplementuj klasę Beben realizującą bęben maszyny losującej, która pozwoli przeprowadzać losowanie k liczb z n bez zwracania (identycznie jak w zadaniu z poprzednich zajęć). Zdefiniuj konstruktor, destruktor, pola i funkcje składowe:

pole prywatne int rozmiar

pole prywatne int *kule

pole prywatne string opis

publiczny konstruktor inicjujący bęben o podanym rozmiarze n, który tworzy bęben mieszczący n kul i ustawia opis na „Beben stworzony”

destruktor - sprzątanie (zwalnianie pamięci)

metodę publiczną Wypelnij(), która wypełnia bęben kulami od 1 do n i ustawia opis na „Beben gotowy do losowania”. Metoda zwraca referencję do zainicjowanego bębna.

metodę publiczną Mieszaj(), która miesza zawartość bębna i ustawia opis na „Zawartosc wymieszana”. Metoda zwraca referencję do wymieszanego bębna.

metodę publiczną Wypisz(int k), która wypisuje opis oraz numery pierwszych k kul

dociążoną metodę publiczna Wypisz(), która wypisuje cała zawartość bębna

Napisz program, który przetestuje działanie klasy Beben i przeprowadzi losowanie k liczb z n, gdzie wartości k i n podaje użytkownik.

Zadanie 2: klasa Bęben

Uzupełnij implementację klasy Beben o następujące elementy:

konstruktor domniemany Beben(), tworzący bęben o rozmiarze 49

konstruktor kopiujący Beben(const Beben& b)

Napisz program, który przeprowadzi n losowań Lotto (6 liczb z 49) i wypisze wyniki na ekranie w taki sposób:

wczytaj wartość n

stwórz dynamicznie tablicę zawierającą n obiektów Beben o domniemanych wartosciach (rozmiar 49)

wypełnij wszystkie bębny, wymieszaj i wypisz wynik (wylosowane 6 liczb z 49)

Rozwiązanie w postaci plików nagłówkowych *.h i źródłowych *.cpp umieść w Moodle Zadanie 2