C++ Kurs

Grundrechenoperationen

Die Themen:

Grundrechenoperationen

Bringen wir nun etwas Leben in die bisher doch relativ einfachen Programme. In diesem Kapitel werden wir uns mit den Grundrechenoperationen befassen die C++ zur Verfügung stellt.

Für Berechnungen stehen die bekannten Rechenoperationen Addition +, Subtraktion  -, Multiplikation * und Division / zur Verfügung. Diese Operationen sind sowohl auf Ganzzahlen als auch auf Gleitkommazahlen anwendbar.

AchtungWird eine Division mit zwei Ganzzahlen durchgeführt, so ist das Ergebnis ebenfalls eine Ganzzahl. Es wird keine Rundung des Ergebnisses durchgeführt. Soll das Ergebnis der Ganzzahl-Division als Gleitkommazahl weiterverarbeitet werden, so muss mindestens einer der Operanden vor der Division in eine Gleitkommazahl konvertiert werden. Mehr dazu später bei den Typkonvertierungen.

Für Ganzzahlen steht ferner noch der Modulo-Operator % (das Prozentzeichen) zur Verfügung. Er berechnet den Rest einer Division von zwei Ganzzahlen (siehe Beispiel).

PgmHeader
#include <iostream>
using namespace std;

// Zwei Ganzzahl-Variablen definieren
auto var1=10, var2=3;

int main ()
{
   decltype(var1) result;
   // Division zweier Ganzzahlen
   result = var1/var2;
   cout << var1 << '/' << var2 << '=' << result << endl;
   // Modulo zweier Ganzzahlen
   result = var1%var2;
   cout << var1 << '%' << var2 << '=' << result << endl;
}
Programmausgabe 10/3=3
 10%3=1

Bei allen Operationen gilt stets: Punkt- vor Strichrechnung, d.h. Multiplikation, Division und Modulo vor Addition und Subtraktion. Dese Reihenfolge kann jedoch durch Setzen von entsprechenden Klammerebenen abgeändert werden. Mehr zur Reihenfolge der Operatoren folgt gleich noch.

Kurzschreibweisen

C++ stellt eine Reihe von Kurzschreibweisen für häufig benötigte Rechenoperationen bereit, die in der nachfolgenden Tabelle aufgeführt sind. Diese Kurzschreibweisen können sowohl auf Ganzzahlen als auch auf Gleitkommazahlen angewandt werden. Die einzige Ausnahme bildet hierbei der Modulo-Operator %=. Er ist, wie bereits erwähnt, nur für Ganzzahlen zugelassen.

x++ Erhöht x um 1 nach dessen Auswertung
++x Erhöht x um 1 vor dessen Auswertung
x-- Vermindert x um 1 nach dessen Auswertung
--x Vermindert x um 1 vor dessen Auswertung
x += y Addiert y zu x (x = x + y)
x -= y Subtrahiert y von x (x = x - y)
x *= y Multipliziert x mit y (x = x * y)
x /= y Dividiert x durch y (x = x / y)
x %= y Weist x den Rest der Division x/y zu (x = x % y)
PgmHeader
// Beispiele für Grundrechenoperationen

auto X = 10; // Initialisierung der Variablen
auto Y = 2;

X++;               // X = X+1 => 11

Y = X++;           // Zuerst Y = X => 11 und dann X = X+1 => 12

Y = ++X;           // Jetzt zuerst X = X+1 => 13 und dann Y = X => 13

X += Y;            // X = X+Y => 13+13 = 26

X %= 5;            // X = X%5 => 26%5 = 1

X += (--Y * 2);    // Zuerst Y = Y-1 => 12 und dann X = X+12*2 => 1+24
AchtungBeachten Sie den Unterschied zwischen X++ und ++X bzw. X-- und --X in den Berechnungen.

Beispiel und ÜbungUnd hier geht's zum Beispiel und zur Übung.