Mathematik-Grundbegriffe für Programmierer

Auswertungsregeln bei zusammengesetzten Ausdrücken

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Bei der Programmierung werden in Ausdrücken oft mehrere Operanden verknüpft. Dann muss man sich Gedanken um die Reihenfolge der Auswertung machen. Dabei spielen die Position der Operanden und Operatoren im Ausdruck (die Reihenfolge), aber auch die Priorität der Operatoren eine Rolle. Die technische Umsetzung fußt auf zentralen Konzepten der Algebra – dem Assoziativgesetz, dem Kommutativgesetz und dem Distributivgesetz.
06:20

Transkript

In der Programmierung werden in Ausdrücken sehr oft mehrere Operanden miteinander verknüpft. Dann muss man sich Gedanken machen, um die Reihenfolge der Auswertung und dabei spielen die Position der Operanden, der Operatoren, aber auch die Priorität eine Rolle. Die technische Umsetzung führt zu mathematischen Konzepten, auf denen diese Auswertung beruht, Das ist das Kommutativgesetz, das Assoziativgesetz und das Distributivgesetz Mit diesen Gesetzen wollen wir uns in diesem Video beschäftigen. Betrachten wir mal diesen Ausdruck hier: 2 plus 3 mal 4. Wenn wir den auswerten, was ist das Ergebnis? 20, natürlich, oder sind Sie nicht einverstanden? 2 plus 3 ist 5, 5 mal 4 ist 20, Die meisten werden widersprechen, denke ich. Ich hoffe, eigentlich alle. Warum? Was ist denn mit 14 als Ergebnis? Wenn ja, warum ist 14 das richtige Ergebnis, und nicht 20? Sie werden sich an die Punkt- vor Strichrechnung erinnern, aus der Schule, denke ich. Also, man wird zuerst 3 mal 4 nehmen, ist 12, 12 plus 2, das ist 14. Nun wird in der Programmierung ein Ausdruck immer von links nach rechts ausgewertet. Das heißt, man könnte schon auf die Idee kommen, zuerst 2 +3 zu rechnen und dann das Ergebnis mal 4 zu nehmen. Aber es gibt eben besagte Punkt vor Strichrechnung, Teil eines größeren Konzeptes natürlich, aber diese Punkt- vor Strichrechnung bei diesen einfachen Ausdruck sagt, dass eben zuerst multipliziert wird und dann addiert. Technisch wird das so umgesetzt, dass die Operatoren in einer Programmiersprache unterschiedlich gewichtet werden. Der Multiplikations-Operator hat eine höhere Priorität, als der Additions-Operator Aber das ist, wie gesagt, nur die technische Umsetzung von mathematischen Gesetzen. Betrachten wir nochmal einen weiteren Ausdruck. Was ist denn das Ergebnis hiervon? Auch hier haben wir wieder 2 plus 3 mal 2 plus 2. Natürlich gilt wieder Punkt- vor Strichrechnung. Und das heißt, wir müssen hier 3 mal 2 nehmen, also 6, und dann fangen wir von links an, 2 plus 6 ist 8, und dann nehmen wir 8 plus 2 das ist halt 10. Die eigentliche Frage, die ich mit diesem Ausdruck verbinden möchte, ist, ist das jetzt das Gleiche? Das heißt, haben wir hier auch 10 als Ergebnis. Natürlich gilt wieder Punkt- vor Strichrechnung, aber ist denn 2 mal 3 das gleiche wie 3 mal 2? Das ist nicht ganz so trivial, denn es gibt mathematische Konzepte, wo a mal b nicht b mal a ist. Das Stichwort ist beispielsweise Matrizen-Multiplikation. Auch diese Umsetzung muss in einem mathematischen Gesetz festgelegt werden. Oder schauen wir uns einmal diesen Ausdruck an. 2 a plus 2 b wollen Sie auswerten. Was halten Sie davon? Sie klammern die 2 aus. Sie erinnern sich vielleicht an die Schulmathematik, dass es so etwas gibt, was man als Ausklammerungsgesetz bezeichnet. Auch das ist nur ein Spezialfall eines allgemeineren Gesetzes. Nach diesen vielen Beispielen möchte ich nun das Distributivgesetz das Assoziativgesetz und das Kommutativgesetz, für diese Beispiele ins Spiel bringen und sagen, welche dieser Gesetze überhaupt den Umgang mit den Ausdrücken so ermöglicht hat. Das Kommutativgesetz erlaubt es, Operanden zu vertauschen. Das heißt: 3 mal 2 ist das gleiche wie 2 mal 3. Ich betone noch einmal dass es Fälle gibt, wo wir nicht kommuntative Verknüpfungen haben, beispielsweise die Matrizen-Multiplikation. Das Assoziativgesetz wird auch Verknüpfungsgesetz oder Verbindungsgesetz genannt. Eine zweistellige Verknüpfung ist assoziativ, wenn die Reihenfolge der Ausführung keine Rolle spielt. Wenn Sie etwa 1 plus 2 plus 3 haben, als Ausdruck, ist es egal, ob Sie 1 plus 2 und dann plus 3 rechnen oder erst 2 plus 3 und dann noch 1 drauf addieren. Sie können hier auch klammern, und deswegen nennt man das Assoziativgesetz auch Klammergesetz. Mit den Klammern würden Sie die Reihenfolge beeinflussen, aber es hätte keinerlei unterschiedliches Ergebnis zur Folge. Beachten Sie, dass ich in dem Falle mit plus "gleich priorisierte Operatoren" verwende. Also Operatoren, die sich nicht wie bei Punkt- vor Strichrechnung schon über die Priorität unterscheiden. Bleibt noch das Distributivgesetz. Das Distributivgesetz ist eine Regel, wie bei zweistelligen Verknüpfungen Klammern benutzt werden können, um beispielsweise hier aus so einer Summe eine Zahl ausklammern zu können. Das Auflösen von Klammern durch Anwendung des Distributivgesetzes wird als "ausmultiplizieren" bezeichnet. Also in diesem Fall der umgekehrte Weg. Alle drei behandelten Gesetze habe ich hier nur in einer recht einfachen Variante vorgestellt, aber das ist es, was man bei der Programmierung der meisten Ausdrücke beachten muss. Die komplexeren Anwendungen sind eigentlich nur für höhere Mathematik von Interesse. Fassen wir zusammen. Bei zusammengesetzten Ausdrücken werden sehr oft Regeln des Distributivgesetzes, des Assoziativgesetzes und das Kommutativgesetzes verwendet.

Mathematik-Grundbegriffe für Programmierer

Lernen Sie die Themenbereiche und Verfahren aus der Mathematik kennen, die bei der täglichen Programmierarbeit zum Einsatz kommen.

2 Std. 54 min (40 Videos)
Derzeit sind keine Feedbacks vorhanden...
Exklusiv für Abo-Kunden
Erscheinungsdatum:03.10.2016
Aktualisiert am:19.12.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!