Informatika2-2021/Sz¼tGyak09

A MathWikiből
A lap korábbi változatát látod, amilyen Csonkab (vitalap | szerkesztései) 2021. április 12., 18:57-kor történt szerkesztése után volt.
(eltér) ←Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)

Tartalomjegyzék

Feladatok

Kitekintés

Mersenn prím

Írjuk meg a Mersenn-e() függvényt, melynek paramétere egy természetes szám és kimenetnek False vagy True értékkel térjen vissza attól függően Mersenn prím-e. A programot a logaritmus függvény használata nélkül írjuk meg.

Variadic

Sum

  1. Írjunk egy függvényt, aminek az első argumentuma n, egy int típusú változó. A függvény térjen vissza True-val, ha annyi extra paraméterrel hívták meg, mint az első bemeneti paraméter értéke, egyébként térjen vissza False-szal.
  2. Definiáljunk egy szumma függvényt, ami tetszőlegesen sok bemeneti paraméterének összegével tér vissza!
    1. Kezeljük le a kivételt, ha a paraméterek típusa nem azonos!
  3. Definiáljunk egy print_words függvényt, úgy, hogy a megadott (akármennyi) szavakat annyiszor írja ki, amennyit megadunk bemenetként (szavanként)!
    1. Kezeljük le kivételként, ha a bemeneten nem egész számot adtak meg a szó gyakoriságára!

= Legnagyobb közös osztó

Írjunk egy lnko() nevű függvényt, aminek a paramétere tetszőlegesen sok pozitív természetes szám és kiszámolja a legnagyobb közös osztójukat.

Mátrix rendezés

Adott a már házi feladatként megírt Matrix osztály:

class Matrix:
    def __init__(self,L):
        self.row = len(L)
        self.column = len(L[0])
        self.creator = L
    def __str__(self):
        k = ''
        for i in self.creator:
            for j in i:
                k = k + str(j).rjust(4)
            k += '\n'
        return k
    def __add__(self, k1):
        k = []
        for i in range(self.row):
            l = []
            for j in range(self.column):
                l.append(self.creator[i][j] + k1.creator[i][j])
            k.append(l)
        return Matrix(k)
    def __sub__(self, k1):
        k = []
        for i in range(self.row):
            l = []
            for j in range(self.column):
                l.append(self.creator[i][j] - k1.creator[i][j])
            k.append(l)
        return Matrix(k)
 
    def __mul__(self, k1):
        k = []
        if self.column != k1.row:
            return 'Nem összeszorozhatóak a mátrixaink! '
        for i in range(self.row):
            l = []
            for j in range(k1.column):
                a = 0
                for h in range(k1.row):
                    a += self.creator[i][h] * k1.creator[h][j]
                l.append(a)
            k.append(l)
        return Matrix(k)
<\python>
 
Egészítsük ki egy új függvénnyel, aminek két bemenete van: Egy Matrix osztálybeli elemekből álló lista, egy string (novekvo vagy csokkeno) és a listában lévő mátrixokat a diagonális rész összege szerint rendezi növekvő, illetve csökkenő sorrendben a második paraméter alapján. Úgy írjuk meg a függvényt, hogy ha második paraméternek nem adunk meg semmit, akkor automatikusan növekvő sorrendbe rendezze a mátrixokat.
Személyes eszközök