6.2.1. Arithmetische Operatoren (A)#
Die Multiplikation * wie auch die Potenz ** bezeichnen wir als arithmetische Operatoren, da sie numerische Werte (Zahlen) verarbeiten.
Es gibt jedoch noch eine ganze Reihe von weiteren arithmetische Operatoren:
Operator |
Beschreibung |
Beispiel |
Bedeutung |
|---|---|---|---|
|
Addition |
|
\(3 + 4\) |
|
Subtraktion |
|
\(3 - 4\) |
|
Multiplikation |
|
\(3 \cdot 4\) |
|
Division |
|
\(3 / 4\) |
|
Potenzierung |
|
\(3^4\) |
|
ganzzahlige Division |
|
\(\left \lfloor{3/4}\right \rfloor\) |
|
Modulo |
|
\(10 - (4 \cdot \left \lfloor{10/4}\right \rfloor)\) |
Jeder dieser Operatoren op erwartet zwei Zahlen, eine links und eine rechts von op.
Die Bedeutung der Modulo-Operation % sieht kompliziert aus, doch bedeutet dies schlicht, dass 10 % 4 der ganzzahlige Rest der Restwertdivision (Euklidische Division) ist.
Die ganzzahlige Division rundet das Ergebnis der Division auf die nächst kleinere ganze Zahl (Integer). Beachten Sie
-2 // 3
-1
ergibt -1 und
2 // 3
0
ergibt 0.
Arithmetische Operationen werden von der arithmetischen Einheit der CPU ausgewertet. Mit ihnen können wir numerische Gleichungen lösen aber auch Indices manipulieren.
Exercise 6.2 (Praxisaufgabe (PA-Kurz): %, // und ** ausprobieren)
Berechnen Sie für
a = 1999undb = 4den Rest (%) und die ganzzahlige Division (//).Prüfen Sie danach mit
==, ob beide Ergebnisse gleich sind.Untersuchen Sie, wie Python Potenzen auswertet:
2 ** 2 ** 3(Bindung/Assoziativität).
a = 1999
b = 4