Okay, wir haben uns das letzte Mal, sozusagen das letzte der wirklich inherent wichtigen
Programmierstrukturen angeguckt. Das waren Schleifen. Meine Informatik-Didaktik-Kollegen
sagen mir immer, Schleifen sollte ich nicht benutzen, weil alle Leute dann an die Schuhschleife
denken und dann wäre es mehrere Eingänge und mehrere Kringeln und so weiter. Sondern ich finde
das Wort, was ich benutzen soll, so komisch, dass ich es mir auch nicht gemerkt habe, muss ich
gestehen. Ich spreche also trotzdem von Schleifen. Also Schleifen sind tatsächlich etwas, wo man im
Kringel durch den Code geht und immer an der oberen Stelle bei so einer Wileschleife nachguckt,
ist die Bedingung noch wahr? Und wenn ja, rüms gehe ich noch einmal durch die Schleife durch und
nein, springe ich ans Ende der Schleife und unten wieder raus. Das Ganze sieht in Python so aus.
Wir haben das Schlüsselwort while. Dann kommt wieder eine Bedingung, also irgendetwas, was war
oder falsch sein kann. Dann kommt ein Doppelpunkt, dann kommt eingerückt der Teil des Codes, den man
immer wieder und immer wieder durchläuft und da, wo die Einreckung aufhört, springt man hin,
wenn die Bedingung falsch wird. Das ist nur eine von zwei, so ganz nebenbei, nur eine von zwei
Arten von Schleifen. Diese Schleife guckt sozusagen, bevor man in den Kringel geht,
guckt nach, ob die Bedingung wahr ist. Man könnte auch sozusagen erst durchgehen oder am Ende nach
gucken, ob die Bedingung vielleicht falsch wird. Mit den Dingern kann man das Gleiche machen,
man muss nur so sozusagen unterschiedlich anfangen und so etwas. Das ist dann kein while loop,
sondern ein repeat until Schleife. Und fast alle Sprachen, ob es jetzt Java sei oder so etwas,
nein ich muss das einschlägen, fast alle imperativen Sprachen haben sowohl ein while als auch ein
repeat until. Mit verschiedener Syntax, mit Einrückungen, ohne, mit geschweiften Klammern,
alles was es so gibt. Und dann hatten wir noch so ein paar Sachen gesehen mit break und continue,
wie man aus dieser Schleife wieder raus kann oder irgendwelche Abkürzungen gehen kann. Gibt es zu
bedingte Ausführung, also verschiedene, dass man verschiedene Äste aufteilt und wieder zusammenkommt
oder schleifen, wo man so lange drin bleibt bis eine Bedingung falsch wird. Gibt es dazu noch Fragen?
Ja, da kommen wir heute noch zu. Sparen Sie sich das auf für später heute.
Ja, da gibt es so ein bisschen was zu sagen und ich würde das gerne tun, wenn ich das für die
anderen auch noch eingeführt habe. Noch mehr Fragen? Okay, dann möchte ich, bevor wir noch
mehr peißen lernen, noch so ein bisschen so ein paar allgemeine Gedanken noch mal in gewisser
Weise auf den Folien niederlegen, die wir eigentlich schon mal besprochen haben. Ich
hatte schon Sie darauf aufmerksam gemacht, dass Computer universelle Maschinen sind,
also Maschinen, die man sagen kann, was für ein Werkzeug sie sein sollen. Und das macht sie so
nützlich. Das ist auch der Grund, warum die Informatik und IT oder sowas sich wie so ein
Krebs durch alle anderen Gebiete durchwuchert, weil das eben universelle Maschinen sind. Und
die einzigen anderen universellen Maschinen, die wir kennen, Ribosome in unseren Zellen,
sind sehr klein oder sehr teuer, so Leute wie Sie. Viel teurer auf die Dauer als so ein lumpiger
Computer. Also insofern sind sie schon so ganz nützlich in der Mitte. Genau. Die sind sehr
nützlich, aber es gibt Dinge, die Programme nicht berechnen können. Ich sollte das etwas
einschränken, die Sie nicht in endlicher Zeit berechnen können. Also ein Programm. Es gibt
Fragen, für die wir kein Programm schreiben können, von denen wir garantieren können,
dass es in endlicher Zeit, das kann sein, dass es sehr, sehr, sehr, sehr lange dauert oder relativ
kurz oder so etwas, wo wir garantieren können, das wird irgendwann mal stoppen und dann eine
Antwort liefern. Das ist ein relativ tiefes Resultat. Also das ist auch vollkommen unabhängig
davon, ob Sie das in Java machen oder in Python oder so was. Das gilt für alle Programme gleichermaßen.
Und das kann man sich auch relativ einfach überlegen. Das will ich aber hier trotzdem
nicht tun, weil wir sind ja nicht theoretische Informatik. Ich will Ihnen nur einen kleinen
Brain Teaser geben, der Ihnen zeigt, in welcher Richtung so ein Argument liefern kann. Ich weiß
nicht, ob Sie es schon mal vom Barbier von Sevilla gehört haben. In der Stadt Sevilla gibt es eine
Regel, nämlich die sagt, der Barbier von Sevilla schneidet allen den Bart, die sich nicht selber
den Bart schneiden. Klingt irgendwie vernünftig, oder? Bis man sich anfängt zu überlegen,
wie ist das denn, schneidet er sich selber den Bart oder nicht? Und dann merkt man,
Presenters
Zugänglich über
Offener Zugang
Dauer
01:29:06 Min
Aufnahmedatum
2024-11-07
Hochgeladen am
2024-11-08 04:39:06
Sprache
de-DE