Bringen wir nun etwas Leben in die bisher doch relativ einfachen Programme. In dieser Lektion 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 Operatoren gelten sowohl für Ganzzahlen wie auch für Gleitkommazahlen.
|
|
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).
|
#include <iostream> using namespace std; // Zwei Ganzzahl-Variablen definieren short var1=10, var2=3; int main () { short result; // Division zweier Ganzzahlen result = var1/var2; cout << var1 << '/' << var2 << '=' << result << endl; // Modulo zweier Ganzzahlen result = var1%var2; cout << var1 << '%' << var2 << '=' << result << endl; } |
|
10/3=3 |
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 später noch.
C++ stellt noch 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 wie 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) |
|
// Beispiele für Grundrechenoperationen int X = 10; // Initialisierung der Variablen int 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 |
|
|
|
|
66.00 EUR bei 3.00% nach 5.00 Jahren 9.90
EUR Zinsen |
|
// Beispiel zu Grundrechenoperationen // Zuerst Dateien iostream und iomanip einbinden #include <iostream> #include <iomanip> using std::cout; using std::endl; // Konstante für Betrag definieren const double betrag = 66.0; // Zinssatz (in %) definieren und Anfangswert initialisieren double zinssatz = 3.0f; // Variable für aktuelles Jahr definieren und initialisieren double jahre = 5.0f; // Variable für Zinsen definieren double zins; // main() Funktion int main () { // Anzahl der Nachkommastellen auf 2 begrenzen cout << std::setprecision(2) << std::fixed; // Zinsen nach 5 Jahren berechnen zins = (betrag * zinssatz * jahre) / 100.0; cout << betrag << " EUR bei " << zinssatz << "% nach " << jahre << " Jahren " << zins << " EUR Zinsen\n"; // nun Zinsen nach 6 Jahren berechnen jahre++; zins = (betrag * zinssatz * jahre) / 100.0; cout << betrag << " EUR bei " << zinssatz << "% nach " << jahre << " Jahren " << zins << " EUR Zinsen\n"; // jetzt bei 3.25% Zinsen zinssatz += 0.25; zins = (betrag * zinssatz * jahre) / 100.0; cout << betrag << " EUR bei " << zinssatz << "% nach " << jahre << " Jahren " << zins << " EUR Zinsen\n"; } |
Nun einmal etwas aus der Welt der Technik:
Berechnen Sie den elektrischen Widerstand (in Ohm) für folgende Kupferleitungen:
Die Formel zur Berechnung des Leitungswiderstands lautet:
Leitungswiderstand = Kupferwiderstand * Länge / Querschnitt
Für den Kupferwiderstand hat die Konstante 0.0172. Die Angabe der Länge innerhalb der Formel erfolgt in m und des Querschnitts in mm2.
Wenn Sie die Berechnungen richtig durchgeführt haben, so sollten Sie die unten angegebenen Werte erhalten.
|
Widerstand bei 10.00 m und 1.00 qmm: 0.17 Ohm |