Informatika1-2014/Gyakorlat5

A MathWikiből
(Változatok közti eltérés)
(Függvények használata függvényekben)
(Ismétlés a feladatok elõtt)
59. sor: 59. sor:
  
 
Használhatunk minden általunk definiált függvényt a függvényinkben, csak korábban kell definiálni, mint hogy használnánk. Pl:
 
Használhatunk minden általunk definiált függvényt a függvényinkben, csak korábban kell definiálni, mint hogy használnánk. Pl:
 +
 +
Collatz sejtés [https://cleancoders.com/ clean code] stílusban:
  
 
<python>
 
<python>

A lap 2014. október 14., 01:05-kori változata

Tartalomjegyzék

Listákról még

  • Listák a listában (mátrix):
M = [[1,2,3],[4,5,6],[7,8,9]]
  • Ennek elsõ eleme:
print M[0]    # [1,2,3]
  • Tehát M elemei listák, így ezeknek is lekérhetjük az elemeit:
print M[0][2]    # 3
  • Ugyanúgy adhatunk hozzá elemeket, mint korábban:
M.append([10,11,12])
print M    # [[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
  • A belsõ listák hossza eltérhet:
N = [[1,2,5],[4],[3,2,1,4]]
  • Bár ez ritka, de keverten szinte bármit tárolhatunk listákban:
H = ["kutya", [1, 5, "macska"], [3, [5, 3]], 5.3]

Listaértelmezések

[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.

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

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

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

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

Pl:

[x ** 2 for x in [1, 2, 3, 4]]  # [1, 4, 9, 16]
[x for x in [-1, 2, -3, 4] if x > 0]  # [2, 4]


Ismétlés a feladatok elõtt

Függvények használata függvényekben

Használhatunk minden általunk definiált függvényt a függvényinkben, csak korábban kell definiálni, mint hogy használnánk. Pl:

Collatz sejtés clean code stílusban:

def paros(n):
    if n % 2 == 0:
        return True
    else:
        return False
 
def collatz_lepes(n):
    if paros(n):
        return n / 2
    else:
        return n * 3 + 1
 
def collatz(n):
    while n != 1:
        n = collatz_lepes(n)
        print n

CloudCoder feladatok

Személyes eszközök