Benutzer-Werkzeuge

Webseiten-Werkzeuge


schule:rekursion

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
schule:rekursion [2017-12-11 19:09]
marco.bakera [Übung Streckenalgorithmus] +python algo
schule:rekursion [2021-06-10 07:15] (aktuell)
pintman [Beispiel: Anzahl Elemente einer Liste]
Zeile 37: Zeile 37:
  
 <code python> <code python>
-anzahl(liste):+def anzahl(liste):
   anzahl = 0   anzahl = 0
   for element in liste:   for element in liste:
Zeile 48: Zeile 48:
  
 <code python> <code python>
-anzahl(liste):+def anzahl(liste):
   if liste ist leer:   if liste ist leer:
     return 0     return 0
  
   else:   else:
-    liste_kleiner = liste.entferneErstesElement()+    liste_kleiner = liste[1:]  #  entferne erstes Element
     return 1 + anzahl(liste_kleiner)     return 1 + anzahl(liste_kleiner)
 </code> </code>
 +
 +Erinnerung: mit ''liste[a:b]'' wird der Teil von Index a bis zum Index b-1 aus einer Liste ausgelesen. 
 +Wird a oder b weggelassen, werden der Anfang Anfang bzw. das Ende der Liste verwendet. Dies nennt man
 +[[https://www.learnbyexample.org/python-list-slicing/|list slicing]].
  
  
Zeile 112: Zeile 116:
 {{:schule:prog:strecke_zwischen_zwei_punkten.png?direct|}} {{:schule:prog:strecke_zwischen_zwei_punkten.png?direct|}}
  
-In den [[https://tbs1.de/owncloud/index.php/s/al3BJaHnhXS7WlM|Materialien]] findest du Informationen darüber, wie eine Strecke zwischen zwei Punkten A und B mit einem rekursiven Verfahren auf dem Bildschirm ausgegeben werden kann. +Bei den Materialien findest du Informationen darüber, wie eine Strecke zwischen zwei Punkten A und B mit einem rekursiven Verfahren auf dem Bildschirm ausgegeben werden kann. 
  
 Wie sieht der einfache Fall aus? Wie sieht der einfache Fall aus?
Zeile 119: Zeile 123:
  
 <code python> <code python>
-from tkinter import *+from tkinter import Tk, Canvas
  
 class App: class App:
Zeile 185: Zeile 189:
  
 </code> </code>
- 
-===== Live Coding mit Fluxus ===== 
- 
-Die Programmierumgebung [[live_coding#teil_1fluxus|Fluxus]] kann für das Live-Coding verwendet werden und nutzt in der Programmiersprache rekursive Mechanismen. 
- 
-<html> 
-<iframe width="560" height="315" src="https://www.youtube.com/embed/sS7WpYWm8PQ?rel=0" frameborder="0" allowfullscreen></iframe> 
-</html> 
  
 ===== Übung Grundrechenarten ===== ===== Übung Grundrechenarten =====
Zeile 258: Zeile 254:
 [3, 2, 1] [3, 2, 1]
 </code> </code>
 +
 +===== Live Coding mit Fluxus =====
 +
 +Die Programmierumgebung [[live_coding#teil_1fluxus|Fluxus]] kann für das Live-Coding verwendet werden und nutzt in der Programmiersprache rekursive Mechanismen.
 +
 +<html>
 +<iframe width="560" height="315" src="https://www.youtube.com/embed/sS7WpYWm8PQ?rel=0" frameborder="0" allowfullscreen></iframe>
 +</html>
 +
  
 ===== Probleme rekursiver Algorithmen ===== ===== Probleme rekursiver Algorithmen =====
Zeile 276: Zeile 281:
 ===== Links ===== ===== Links =====
  
-  * [[https://tbs1.de/owncloud/index.php/s/al3BJaHnhXS7WlM|Materialien]] 
   * [[https://www.youtube.com/watch?v=gYpMz63WAjM|Ein Kran trägt einen Kran trägt einen Kran (Video)]]   * [[https://www.youtube.com/watch?v=gYpMz63WAjM|Ein Kran trägt einen Kran trägt einen Kran (Video)]]
schule/rekursion.1513015795.txt.gz · Zuletzt geändert: 2017-12-11 19:09 von marco.bakera