Witam, osiagnalem pewien poziom w programowaniu proceduralnym w C++ i teraz chcialem sprobowac programowania obiektowego w C++. Zaczynam je od zera. Przeczytalem cale dwa tomy Symfonii Grebosza i wszystko tam rozumialem(nie twierdze, ze sam bym wszystko napisal bez problemu, ale rozumialem). Moja metoda nauki to programowanie na Spoju. Mam zaliczone wiekszosc programow na poziomie Latwy na Spoju i chcialem przerabiac je na obiektowe dla nauki tego podejscia. Pierwsze 10 zadan napisalem tworzac tylko jeden rodzaj obiektu w kazdym zadaniu i sam nie wiem, czy za latwo to poszlo, czy te programy wiecej nie wymagaja. Ale przy tym zadaniu naszly mnie powazne watpliwosci: https://pl.spoj.com/problems/GLUTTON/ Otoz nie chcialbym pisac obiektowo byle jak, ze jak dziala, a pewnie jest pelno bledow w strukturze programu, to nic. Uwazam, ze utrwalanie blednych programow jesli chodzi o architekture/strukture mija sie z celem. Myslac nad tym zadaniem wpadlem na kilka roznych pomyslow i nie wiem, ktory jest najblizszy poprawnego podejscia.
Prosze o wskazanie numeru, ktore podejscie wydaje sie najlepsze/poprawne z jakims chociaz krotkim wytlumaczeniem dlaczego albo przedstawienie swoich propozycji, jesli zadne:
- Wyodrebnienie trzech klas: obzartuchy, ciastka i pudelka. Tworzenie kolejnych obiektow obzartuchy ze zmienna czasZjedzeniaCiastka; zmienna statyczna w obzartuchy lacznaIloscZjedzonychCiastek oraz metoda statyczna sumujaca je, tak samo ze zmienna lacznaIloscZuzytychPudelek. Obiekt ciastko wewnatrz klasy pudelka. Tworzenie obiektu pudelko dla kazdego obzartucha i obliczanie w nim ilosci ciastek i ilosci pudelek dla konkretnego obzartucha.
- Wyodrebnienie jednej klasy obzartuch z danymi skladowymi:czasZjedzeniaCiastka, stala iloscSekundWDobie, zmienne: iloscCiastek, iloscPudelek, dana skladowa statyczna lacznaIloscCiastek, dana skladowa statyczna lacznaIloscPudelek oraz metody. Tworzenie nowego obiektu dla kazdego obzartucha i na koniec utworzenie obiektu obzartuch z zsumowanymi wartosciami ilosc ciasteczek i ilosc pudelek, wyliczanych sumujac zmienne z obiektow obzartuchy.