Zaimplementuj program w C (potem przerobimy go na C++) realizujący losowanie k liczb z n bez zwracania zgodnie z ponizszym schematem.
Utwórz plik nagłówkowy beben.h z poniższą zawartością:
struct beben { int rozmiar; int *kule; char* opis; }; struct beben *utworz(int n); struct beben *wypelnij(struct beben *b); struct beben *mieszaj(struct beben *b); void wypisz(struct beben *b, int n); void zwolnij(struct beben *b);
Funkcje powinny realizować:
utworz - tworzy bęben mieszczący n kul i ustawia opis na „Beben stworzony”wypelnij - wypełnia bęben kulami od 1 do n i ustawia opis na „Beben gotowy do losowania”mieszaj - miesza zawartość bębna i ustawia opis na „Zawartosc wymieszana”wypisz - wypisuje opis oraz numery pierwszych n kulzwolnij - niszczy bęben,
Zdefiniuj powyższe funkcje w pliku źródłowym beben.c.
W osobnym pliku źródłowym program.cpp napisz program, który korzystając z tych funkcji przeprowadzi losowanie wykonując nastepujace kroki:
k, nn kul (tablica liczb całkowitych o rozmiarze n)nk pierwszych kul Przydatne funkcje:
Wyeliminuj z programu losującego elementy języka C na rzecz mechanizmów wykorzystywanych w C++
*.c na *.cppstruct przy deklaracjach zmiennych typu beben lub uczyń typ reprezentujący bęben klasąmalloc() i free() na wywołania operatorów new i delete (Zarządzanie pamięcią)std::cin i std::cout z biblioteki <iostream> do wczytywania danych i wyświetlania komunikatów (Strumienie)<string> zamiast tablic char* do reprezentowania napisów auto przy deklaracji obiektów i zmiennych (deklaracja typów auto)beben w klasę Beben, zadbaj o hermetyzację obiektu (pola klasy Beben powinny być prywatne, a ewentualny dostęp do nich powinien być realizowany przez metody dostępowe (tzw. gettery i settery), zastąp funkcje utworz, wypelnij, mieszaj, wypisz, zwolnij metodami klasy Beben.
Rozwiązanie w postaci plików nagłówkowych *.h i źródłowych *.cpp umieść w Moodle Zadanie 1