Informatika2-2020/Gyak06
A MathWikiből
(Változatok közti eltérés)
(Új oldal, tartalma: „előző fel következő = Feladatok = == Komplex == A feladat az előadáson elkezdet…”) |
a |
||
12. sor: | 12. sor: | ||
self.re = real | self.re = real | ||
self.im = imaginary | self.im = imaginary | ||
− | + | ||
def __add__(self, k2): | def __add__(self, k2): | ||
uj_re = self.re + k2.re | uj_re = self.re + k2.re | ||
30. sor: | 30. sor: | ||
k3 = k1 + k2 | k3 = k1 + k2 | ||
− | print k3 | + | print(k3) |
</python> | </python> | ||
− | * Valósítsuk meg a kivonás, szorzás és osztás műveleteket. (__sub__, __mul__, | + | * Valósítsuk meg a kivonás, szorzás és osztás műveleteket. (__sub__, __mul__, __truediv__) Az osztás előtt érdemes lehet a következő részt megoldani először. |
* Valósítsuk meg a <tt>norm</tt> metódust, mely a komplex szám hosszát adja meg. | * Valósítsuk meg a <tt>norm</tt> metódust, mely a komplex szám hosszát adja meg. | ||
* Javítsuk ki a __str__ metódust, hogy szépen írja ki a számokat, pl: | * Javítsuk ki a __str__ metódust, hogy szépen írja ki a számokat, pl: |
A lap 2020. március 25., 16:51-kori változata
Feladatok
Komplex
A feladat az előadáson elkezdett Komplex osztályt befejezni:
class Komplex(object): def __init__(self, real, imaginary): self.re = real self.im = imaginary def __add__(self, k2): uj_re = self.re + k2.re uj_im = self.im + k2.im return Komplex(uj_re, uj_im) def __str__(self): s = "" s += str(self.re) s += " + " s += str(self.im) s += "i" return s k1 = Komplex(4, 3) k2 = Komplex(-2, 1) k3 = k1 + k2 print(k3)
- Valósítsuk meg a kivonás, szorzás és osztás műveleteket. (__sub__, __mul__, __truediv__) Az osztás előtt érdemes lehet a következő részt megoldani először.
- Valósítsuk meg a norm metódust, mely a komplex szám hosszát adja meg.
- Javítsuk ki a __str__ metódust, hogy szépen írja ki a számokat, pl:
2 - 4i 5i 2
Teszteléshez használhatjuk pl ezt a kódot, de írjunk saját teszteket is!
k1 = Komplex(4, 3) k2 = Komplex(-2, 1) k3 = Komplex(4, 1) print k1 + k2 print k1 - k3 print k2 * k1 print k3 / k1 print k1.norm()
hazi@math.bme.hu
foglalas_1 foglalas_2 foglalas_3 foglalas_4 foglalas_5 kinyer_metodus