lehrkraefte:snr:informatik:python:funktionen

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lehrkraefte:snr:informatik:python:funktionen [2021/11/02 18:47]
Olaf Schnürer [Funktionen]
lehrkraefte:snr:informatik:python:funktionen [2021/11/04 18:09] (current)
Olaf Schnürer [Funktionen]
Line 59: Line 59:
 </WRAP> </WRAP>
  
-<WRAP center round todo 60%+<WRAP round todo> 
-Du kannst einer Funktion auch eine Liste als Parameter übergeben. Schreibe ein Programm, das dies ausnutzt! - Etwa ein Programm, das die Elemente einer so übergebenen Liste ausgibt.+Du kannst einer Funktion auch eine Liste als Parameter übergeben. Schreibe ein Programm, das dies ausnutzt! - Etwa ein Programm, das den Durschnitt einer Liste von Zahlen ausrechnet.
 </WRAP> </WRAP>
  
Line 67: Line 67:
 Verbessere das Programm (es genügt, vier Zeichen (und eventuell Leerzeichen) zu ergänzen)! Verbessere das Programm (es genügt, vier Zeichen (und eventuell Leerzeichen) zu ergänzen)!
  
-Bemerkung: Sobald die ''return''-Anweisung in einer Funktion aufgerufen wird, wird die weitere Ausführung der Funktion unterbrochen.+Bemerkung: Sobald die ''return''-Anweisung in einer Funktion aufgerufen wird, wird die weitere Ausführung der Funktion abgebrochen.
  
 (Hierbei steht ''sqrt(...)'' für "square root", Quadratwurzel und ''int(...)'' macht aus einer Kommazahl eine ganze Zahl.) (Hierbei steht ''sqrt(...)'' für "square root", Quadratwurzel und ''int(...)'' macht aus einer Kommazahl eine ganze Zahl.)
Line 116: Line 116:
 </hidden> </hidden>
 </WRAP> </WRAP>
 +
 +<WRAP round todo>
 +ACHTUNG, ICH HATTE LEIDER ZUNÄCHST DAS AUSRUFEZEICHEN IN DER ZWEITEN ZEILE VERGESSEN!
 +
 +Versuche die folgende Definition der Fakultätsfunktion
 +
 +{{:lehrkraefte:snr:informatik:python:fakultaet-definition.png?300|}}
 +
 +in ein Programm zu übersetzen.
 +
 +Wenn dir das gelingt, hast du "selbst" entdeckt, was //Rekursion// ist: Eine Funktion, die sich selbst (oft auch mehrfach) aufruft - aber so, dass das Programm nicht unendlich lange läuft.
 +
 +Die obige Definition ist übrigens die sogenannte //induktive// oder //rekursive// Definition der Fakultätsfunktion.
 +</WRAP>
 +
  
  
Line 185: Line 200:
  
  
 +
 +
 +
 +===== Einige Lösungsvorschläge =====
 +<hidden Fakultät>
 +<code python>
 +def fakultaet(x):
 +    wert = 1
 +    for i in range(1, x + 1):
 +        wert = wert * i
 +    return(wert)
 +
 +print(fakultaet(5))
 +
 +for k in range(10):
 +    print("%d! = %d" % (k, fakultaet(k)))
 +</code>
 +</hidden>
  
  
  • lehrkraefte/snr/informatik/python/funktionen.1635875271.txt.gz
  • Last modified: 2021/11/02 18:47
  • by Olaf Schnürer