TI/Zadania2018

Z Brain-wiki
Wersja z dnia 09:14, 12 cze 2018 autorstwa Tgub (dyskusja | edycje) (Utworzono nową stronę "=Zadanie 1= Napisz klasę Kwadrat. Obiekty tej klasy powinny: *przechowywać długość boku kwadratu *posiadać reprezentację tekstową *posiadać metody zwracające p...")
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)

Zadanie 1

Napisz klasę Kwadrat. Obiekty tej klasy powinny:

  • przechowywać długość boku kwadratu
  • posiadać reprezentację tekstową
  • posiadać metody zwracające pole i obwód kwadratu
  • operator dodawania zdefiniowany tak, aby obiekt powstały w wyniku dodawania dwóch kwadratów miał pole równe sumie pól kwadratów składowych

Zadanie 2

Klasa „dziwnaLiczba” dziedziczy po klasie „int” (liczbach naturalnych). „Dziwność” polega na tym, że przy dodawaniu dwóch obiektów klasy „dziwnaLiczba” otrzymujemy obiekt klasy „dziwnaLiczbę” odpowiadający mniejszej z podanych liczb, a przy mnożeniu dwóch „dziwnychLiczb” otrzymujemy obiekt „dziwnaLiczba” odpowiadający większej z podanych liczb. Ponadto operatory > i < w klasie dziwna liczba są zamienione miejscami. Napisz klasę „dziwnaLiczba”.

Zadanie 3

Klasa „para” przechowuje dwie podane liczby. Dopisz do kodu klasy metodę zapewniającą tekstową reprezentację obiektu w postaci wypisania obu liczb oddzielonych średnikiem.

class para(object):
    def __init__(self,x,y)
        self.__a=x
        self.__b=y

Zadanie 4

Klasa „przedział” dziedziczy po klasie „para” z Zadania 3 i przechowuje 2 liczby będące krańcami przedziału, oraz dwie zmienne typu bool mówiące o tym czy przedział jest lewo i prawostronnie domknięty. Krańce odcinka (x i y) mają być przekazane do konstruktora klasy rodzica. Klasa ma mieć reprezentację tekstową w postaci [x;y] dla przedziału obustronnie domkniętego, (x;y) dla otwartego oraz (x;y] i [x;y) w p.p. Napisz klasę "przedział". Nie wolno odwoływać się do zmiennych prywatnych klasy rodzica.