4. házi feladat
A MathWikiből
(Változatok közti eltérés)
21. sor: | 21. sor: | ||
>>> v2 = Vector([-1.0, 0.0, 1.0])<br> | >>> v2 = Vector([-1.0, 0.0, 1.0])<br> | ||
>>> v.scalar(v2)<br> | >>> v.scalar(v2)<br> | ||
− | 2.0 | + | 2.0<br> |
− | >>> v.cov(v2) | + | >>> v.cov(v2)<br> |
− | 0.350823207723 | + | 0.350823207723<br> |
+ | >>> v.isCollinear(v2)<br> | ||
+ | False |
A lap 2011. március 4., 16:11-kori változata
Készítsünk egy Vector nevű osztályt, ami n dimenziós valós vektorok reprezentálására alkalmas. Az osztálynak legyen egy lista tagváltozója (kord), ami a vektor kordinátáit tartalmazza. A listának az osztály __init__ függvényében adjunk értéket. Valósítsuk meg az osztály következő műveleteit:
- norma: térjen vissza a vektor hosszával.
- getDim: térjen vissza a vektor dimenziójával.
- scalar: térjen vissza két vektor skaláris szorzatával.
- cov: térjen vissza a vektorokkal egyirányú egységvektorok skaláris szorzatával.
(ez így 6 pont)
- isCollinear: térjen vissza True-val, ha a paraméter vektorok párhuzamosak, egyébként False-szal.
+2 pont
Példa használatra:
>>> v = Vector([1.0, 2.5, 3.0])
>>> print v.kord # a kordináta lista kiíratása
[1.0, 2.5, 3.0]
>>> v.norm()
4.0311288741492746
>>> v.getDim()
3
>>> v2 = Vector([-1.0, 0.0, 1.0])
>>> v.scalar(v2)
2.0
>>> v.cov(v2)
0.350823207723
>>> v.isCollinear(v2)
False