4. házi feladat

A MathWikiből
(Változatok közti eltérés)
 
(egy szerkesztő 9 közbeeső változata nincs mutatva)
1. sor: 1. sor:
 
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  
 
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, ami a vektor értékeit tartalmazza. A listát az osztály __init__ függvényében állítsuk be.  
+
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:
 
Valósítsuk meg az osztály következő műveleteit:
 
+
* __init__: adjunk értéket a kord tagváltozónak.
 
* norma: térjen vissza a vektor hosszával.
 
* norma: térjen vissza a vektor hosszával.
 
* getDim: térjen vissza a vektor dimenziójával.
 
* getDim: térjen vissza a vektor dimenziójával.
 
* scalar: térjen vissza két vektor skaláris szorzatá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 kollineárisak, egyébként False-szal.
 +
+2 pont
  
 
Példa használatra:<br>
 
Példa használatra:<br>
>>> v = Vector([1.0, 2.5, 3.0])
+
>>> v = Vector([1.0, 2.5, 3.0])<br>
 
+
>>> print v.kord #  a kordináta lista kiíratása<br>
>>> print v.l #  a lista kiíratása
+
[1.0, 2.5, 3.0]<br>
 
+
>>> v.norm()<br>
[1.0, 2.5, 3.0]
+
4.0311288741492746<br>
 
+
>>> v.getDim()<br>
>>> v.norm()
+
3<br>
 
+
>>> v2 = Vector([-1.0, 0.0, 1.0])<br>
4.0311288741492746
+
>>> v.scalar(v2)<br>
 
+
2.0<br>
>>> v.getDim()
+
>>> v.cov(v2)<br>
 
+
0.350823207723<br>
3
+
>>> v.isCollinear(v2)<br>
 
+
False
>>> v2 = Vector([-1.0, 0.0, 1.0])
+
  
>>> v.scalar(v2)
+
A kollinearitás tesztelésére [http://info.ilab.sztaki.hu/~kisstom/info2_2011/4het/hazi itt] találtok még tesztkódot és kimenetet.
  
2.0
+
Határidő:<br>
 +
március 15. éjfél

A lap jelenlegi, 2011. március 15., 21:00-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:

  • __init__: adjunk értéket a kord tagváltozónak.
  • 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 kollineárisak, 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

A kollinearitás tesztelésére itt találtok még tesztkódot és kimenetet.

Határidő:
március 15. éjfél

Személyes eszközök