Informatika1-2017/Gyakorlat11

A MathWikiből
(Változatok közti eltérés)
(Új oldal, tartalma: „Előző gyakorlat - Fel - Következő gyakorlat = Mátrixozás m…”)
 
3. sor: 3. sor:
 
= Mátrixozás még =
 
= Mátrixozás még =
  
== Emlékeztetõ és még pár dolog ==
+
== Emlékeztető és még pár dolog ==
  
Mátrixot megadhatunk a következõ módon:
+
Mátrixot megadhatunk a következő módon:
 
<python>
 
<python>
 
m = matrix([[1, 0], [0, 1]])
 
m = matrix([[1, 0], [0, 1]])
 
</python>
 
</python>
Ez a következõ mátrixot eredményezi:
+
Ez a következő mátrixot eredményezi:
 
  1 0
 
  1 0
 
  0 1
 
  0 1
  
Blokkmátrixot, csupa 1-es mátrixot, továbbá fõátlóval adott mátrixot is kényelmesen adhatunk meg:
+
Blokkmátrixot, csupa 1-es mátrixot, továbbá főátlóval adott mátrixot is kényelmesen adhatunk meg:
 
<python>
 
<python>
 
A = diagonal_matrix([1, 5])
 
A = diagonal_matrix([1, 5])
30. sor: 30. sor:
 
m.det()
 
m.det()
 
</python>
 
</python>
 
  
  
128. sor: 127. sor:
  
 
=== Oldjuk meg ===
 
=== Oldjuk meg ===
 
  
 
# Keressük meg az összes olyan 1000 alatti négyzetszámot, melynél eggyel nagyobb szám prím. Pl a 4 ilyen.
 
# Keressük meg az összes olyan 1000 alatti négyzetszámot, melynél eggyel nagyobb szám prím. Pl a 4 ilyen.
135. sor: 133. sor:
 
# Keressük meg az összes olyan 1000 alatti számot, melynek négyzete megegyezik az nálánál kisebb osztói köbeinek az összegével. (Egy kis csavar a [https://hu.wikipedia.org/wiki/T%C3%B6k%C3%A9letes_sz%C3%A1mok tökéletes számokon])
 
# Keressük meg az összes olyan 1000 alatti számot, melynek négyzete megegyezik az nálánál kisebb osztói köbeinek az összegével. (Egy kis csavar a [https://hu.wikipedia.org/wiki/T%C3%B6k%C3%A9letes_sz%C3%A1mok tökéletes számokon])
 
# Keressük meg az összes olyan 10000 alatti számot, mely legalább kétféleképpen írható fel 2 darab szám köbének összegeként.
 
# Keressük meg az összes olyan 10000 alatti számot, mely legalább kétféleképpen írható fel 2 darab szám köbének összegeként.
 +
 +
# Adjuk meg az '''cos(x)sin(x)x^2''' függvény első 10 deriváltját (beleértve a 0. deriváltat) a 0-ban egy tíz hosszú listaként.
 +
* Ábrázoljuk ezt a függvényt 4 deriváltjával együtt a '''[-2pi, 2pi]''' intervallumon!
 +
  
 
[[Informatika1-2017/Gyakorlat10|Előző gyakorlat]] - [[Informatika1-2017#Gyakorlatok|Fel]] - [[Informatika1-2017/Gyakorlat12|Következő gyakorlat]]
 
[[Informatika1-2017/Gyakorlat10|Előző gyakorlat]] - [[Informatika1-2017#Gyakorlatok|Fel]] - [[Informatika1-2017/Gyakorlat12|Következő gyakorlat]]

A lap 2017. november 20., 13:36-kori változata

Előző gyakorlat - Fel - Következő gyakorlat

Tartalomjegyzék

Mátrixozás még

Emlékeztető és még pár dolog

Mátrixot megadhatunk a következő módon:

m = matrix([[1, 0], [0, 1]])

Ez a következő mátrixot eredményezi:

1 0
0 1

Blokkmátrixot, csupa 1-es mátrixot, továbbá főátlóval adott mátrixot is kényelmesen adhatunk meg:

A = diagonal_matrix([1, 5])
B = ones_matrix(2, 2)
block_matrix([[A, -1*A], [A^(-1), B]])

Ez a következõ mátroxot eredményezi:

 1   0| -1   0
 0   5|  0  -5
------+-------
 1   0|  1   1
 0 1/5|  1   1

Egy mátrix determinánsát kiszámolhatjuk a det metódussal:

m.det()


Feladatok

Blokkmátrix

Számoljuk ki a determinánsát a következõ blokkmátrixnak:

X I
O X

ahol I a 3x3-as egységmátrix és O a 3x3-as csupa 0 mátrix, X pedig a következõ:

 0 -1 -1
-1  0 -1
-1 -1  0

Egyenlet megoldás

Oldjuk meg az Ax = b alakú egyenletrendszert, ahol A és b rendre:

 1 -1  0  |  1
 3  1 -1  |  1
-2  0  1  |  2

Használjuk az elõadáson tanult solve_right metódust!

Ha megkaptuk az eredményt, akkor állítsuk át a mátrixot, hogy GF(3) felett legyen értelmezve (a change_ring metódussal) és nézzük meg így is a megoldást.

Összefüggõ

Határozzuk meg, hogy az alábbi mátrix sorai (vagy oszlopai) milyen x értékekre lesznek összefüggõk. (Használjuk a solve parancsot a fentiekkel együtt.)

x  0  1
0  2  x
1  x -1



Listaértelmezések

Emlékeztetõ

[kifejezés for elem in bejárható_objektum]

Egy olyan listát hoz létre melyben a kifejezés szerepel a bejárható_objektum minden elemére. Bejárható objektum például egy lista, az is amit a range függvény hoz létre.

[kifejezés if feltétel else kifejezés_alt for elem in bejárható_objektum]

Mint az elõzõ, de csak azok az elemek lesznek benne melyekre teljesül a feltétel.

[kifejezés if feltétel1 else kifejezés_alt for elem1 in bejárható_objektum1 
           for elem2 in bejárható_objektum2
           for elemN in bejárható_objektumN]

Több feltétel és ciklus is írható akár.

Pl:

[n^2 for n in range(1, 5)]  # [1, 4, 9, 16]
[n for n in [-1, 2, -3, 4] if n > 0]  # [2, 4]

Feladatok

Mit csinál?

Futtassuk le az alábbi példákat és értelmezzük õket mi is történik bennük és hogyan érjük ezt el.

[n for n in range(1, 10)]
[(n, m) for n in range(1, 10) for m in range(1, 5)]
[n for n in range(1, 10) if is_prime(n)]
[n for n in range(1, 100) if n % 5 == 0 and n % 7 == 1]
[(n, m) for n in range(1, 5) for m in range(n, 5)]
[(m, n) for n in range(1, 10) for m in range(n, 10) if m % n == 0]
sorted([(m, n) for n in range(1, 10) for m in range(n, 10) if m % n == 0])
sum([n for n in range(1, 10) if is_prime(n)])

Az utolsóhoz egy kis spoiler, ha nem menne: spoiler

[n for n in range(1, 100) if n == sum([m for m in range(1, n) if n % m == 0])]

Oldjuk meg

  1. Keressük meg az összes olyan 1000 alatti négyzetszámot, melynél eggyel nagyobb szám prím. Pl a 4 ilyen.
  2. Keressük meg az összes olyan 100 alatti számpárt, melyekre igaz, hogy mindkettő prím és az egészosztással vett eredményük is prím. Pl (11, 2) ilyen.
  3. Keressük meg az összes egy jegyű számhármast, mely egymás után írva megegyezik a köbeik összegével. Ilyen például az 1, 5, 3, mert 1^3 + 5^3 + 3^3 == 153
  4. Keressük meg az összes olyan 1000 alatti számot, melynek négyzete megegyezik az nálánál kisebb osztói köbeinek az összegével. (Egy kis csavar a tökéletes számokon)
  5. Keressük meg az összes olyan 10000 alatti számot, mely legalább kétféleképpen írható fel 2 darab szám köbének összegeként.
  1. Adjuk meg az cos(x)sin(x)x^2 függvény első 10 deriváltját (beleértve a 0. deriváltat) a 0-ban egy tíz hosszú listaként.
  • Ábrázoljuk ezt a függvényt 4 deriváltjával együtt a [-2pi, 2pi] intervallumon!


Előző gyakorlat - Fel - Következő gyakorlat

Személyes eszközök