Zad. 4.1

W oparciu o klasę bazową Figura zaproponuj implementację klasy Trojkat reprezentującej dowolny trójkąt.

class Figura:
    def __init__(self):
        raise NotImplementedError()
    def powierzchnia(self):
        '''oblicza pole powierzchni figury'''
        raise NotImplementedError("powierzchnia() must be implemented")
    def obwod(self):
        '''oblicza obwód figury'''
        raise NotImplementedError("obwod() must be implemented")

Zad. 4.2

W oparciu o klasę bazową Figura zaproponuj implementację klasy Elipsa reprezentującej dowolną elipsę.

Zad. 4.3

Zastanów się czy klasę Koło można zaimplementować jako klasę potomną klasy Elipsa? Jeśli tak, zaproponuj odpowiednią implementację.

Zad. 4.4

Przygotuj moduł Pythona o nazwie figury zawierający implementację klas Prostakat, Kwadrat, Koło, Elipsa i Trójkąt

In [ ]:
import figury

Zad. 4.5

W oparciu o model symulacyjny systemu kolejkowego omówiony na wykładzie wyświetl histogram czasu oczekiwania w kolejce

Zad. 4.6

W symulacji z Przykładu 1 wprowadź możliwość otrzymania z założonym prawdopodobieństwem przez klienta oczekującego w kolejce 'pilnego telefonu', powodującego natychmiastowe opuszczenie kolejki lub stanowiska obsługi.

Zad. 4.7

W symulacji z przykładu 3 wprowadź następujące zmiany:

  • dodaj kolejnego mechanika
  • zastąp deterministyczne czasy naprawy losowymi z wybranego rozkładu
  • w komunikatach wyjściowych zaokrąglij raportowane czasy zdarzeń do 4 miejsc dziesiętnych