Python2019/labs03/zadania_06.py
2019-02-09 08:54:14 +01:00

57 lines
2.1 KiB
Python

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
zad.1
Przepisz poniższy kod tak, aby korzystał z list składanych.
"""
elems = list(range(1024))
fives = []
for elem in elems:
if elem % 5 == 0:
fives.append(elem)
"""
zad. 2 - klasy
- Stwórz klasę Point2D, która będzie reprezentować punkt na płaszczyźnie.
- Napisz inicjalizator, który będzie przyjmować 2 parametry: x i y, a następnie
przypisze te wartości do pól: self.x i self.y
- Stwórz obiekt typu Point2D, przekazując dowolne wartości.
- Napisz metodę `dist(self, point)`, gdzie point to będzie obiekt tupy Point2D,
która obliczy odległość pomiędzy tymi punktami.
- Zaimplementuj metodę `__len__(self)`, która zwróci liczbę 2.
- Zaimplementuj metodę `__str__(self)`, który pozwoli na wyświetlenie w
czytelny sposób obiektu.
- Zaimplementuj metodę `__add__(self, point)`, gdzie point jest typu Point2D,
a która zwróci nowy punkt, powstanie z dodania współrzednych obu punktów.
- stwórz listę 4 punktów o współrzędnych: (0,0), (0, 5), (5,5), (5, 0)
- Oblicz sumę wszystkich odległości pomiędzy tymi punktami. Spróbuj wykorzystać
funkcje `sum` i `map`
"""
"""
zad. 3 Klasa wielokąt
- Zaimplementuj klasę wielokąt, która będzie reprezentować zbiór punktów na
płaszczyźnie.
- Napisz inicjalizator `__init__(self, points)`, który będzie przyjmować jako
argument listę punktów typy Point2D.
- napisz metodę, która zwróci punkt środkowy figury, tj. punkt o współrzednych
równych średnią z punktów wielokąta.
- Stwórz przykładowy wielokąt z punktów (0,0), (0, 5), (5,5), (5, 0) i
oblicz jego punkt środkowy.
- Korzystając funkcji min, napisz metodę która zwróci punkt najbardziej
wysunięty na lewo.
- Napisz metodę, która zwróci obwód figury: spróbuj wykorzystać funkcję sum.
"""
"""
zad. 4
- rozdziel kod w tym pliku, aby każda klasa znalazła się w osobnym pliku.
- Zaimportuj moduły z klasami tak, aby ten plik uruchamiał się normalnie.
- Przerób ten plik, aby wykorzystywał dyrektywe : if __name__ == '__main__'
"""