![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 15.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Od pewnego czasu ucze się programowania obiektowego i natrafiłem na takie zadanie : "Utwórz klasę "rozwiazanie", która będzie mogła wykonać operacje arytmetyczne na takich tablicach jak array(5, "plus", 4), oraz array(2, "razy", 8) i wykonaj na nich działanie arytmetyczne. Pamiętaj, że środkowa wartość w tablicy jest również nazwą klasy - zaimplementuj ją. W przyszłości może być potrzeba obsługi innej operacji arytmetycznej bez potrzeby zmiany kodu". Trochę nie rozumiem po co mam tworzyć jedną klasę "rozwiazanie", która i tak będzie musiała za pomocą funkcji array_search szukać takich słów jak plus, razy, minus, podzielić i wykonać operację na pozostałych wartościach. Jaki jest sens i potrzeba tworzenia kolejnych klas? Jeżeli ktoś może mi to wytłumaczyć to będe bardzo wdzięczny za pomoc. Nie jestem w stanie nawet zrobić sobie szkicu takiego rozwiązania jak to miałoby wyglądać. Pozdrawiam, |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Najprościej jak można:
Oczywiście trzeba wrzucić jeszcze ładowanie klas (include) przy odpowiednim założeniu co do nazewnictwa. Osobiście dorzuciłbym do tego jeszcze interfejs:
i wymusł jego używanie przy klasach typu Rozwiazanie_[operacja]:
aby było jasne jaką metodę mają posiadać klasy do operacji arytmetycznych... A co do tego że to nietypowe zadanie - nietypowe jest dla mnie przekazywanie tej tablicy (IMG:style_emoticons/default/smile.gif) - dziwne (IMG:style_emoticons/default/tongue.gif) EDIT: acha i teraz jak chcesz dodać nową operację arytmetyczną na przykład potęgę to wystarczy dać napisac nową klase:
Ten post edytował Sephirus 15.03.2012, 14:28:37 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 00:59 |