C++-Programmierung/ Einführung in C++/ Ein Taschenrechner wird geboren

Aus Wikibooks

Wechseln zu: Navigation, Suche


In diesem Kapitel wollen wir einen kleinen Taschenrechner für die Kommandozeile schreiben. Dieser wird in späteren Kapiteln noch verbessert, aber fürs Erste lernt er nur die vier Grundrechenarten und kann auch nur mit je 2 Zahlen rechnen.

[Bearbeiten] Die Eingabe

Ein Aufgabe besteht aus zwei Zahlen, die durch ein Rechenzeichen getrennt sind. Für die Zahlen verwenden wir den Typ double. Das Rechenzeichen lesen wir als char ein. Außerdem brauchen wir noch eine Variable in der wir das Ergebnis speichern. Diese soll ebenfalls vom Typ double sein.

Crystal Clear app terminal.png
double zahl1, zahl2, ergebnis;
char rechenzeichen;

cin >> zahl1 >> rechenzeichen >> zahl2;

[Bearbeiten] Die 4 Grundrechenarten

Wie sicher jeder weiß, sind die 4 Grundrechenarten Addition ( +), Subtraktion ( -), Multiplikation ( *) und Division ( /). Da die Variable rechenzeichen vom Typ char und char ein ganzzahliger Typ ist, bietet es sich an, die switch-Anweisung zu verwenden um die richtige Rechnung zu ermitteln und durchzuführen. Wenn ein ungültiges Rechenzeichen eingegeben wird, geben wir eine Fehlermeldung aus und beenden das Programm.

Crystal Clear app terminal.png
switch(rechenzeichen){
    case '+': ergebnis = zahl1+zahl2; break;
    case '-': ergebnis = zahl1-zahl2; break;
    case '*': ergebnis = zahl1*zahl2; break;
    case '/': ergebnis = zahl1/zahl2; break;
    default: cout << "unbekanntes Rechenzeichen...\n"; return 1;
}

Der Rückgabewert 1 - ausgelöst von return 1; - beendet das Programm, die 1 (und jeder andere Wert ungleich   auch) sagt dabei aus, dass im Programm ein Fehler auftrat.

[Bearbeiten] Das ganze Programm

Hier ist noch einmal eine Zusammenfassung unseres Taschenrechners:

Crystal Clear app terminal.png
#include <iostream>

using namespace std;

int main(){
    double zahl1, zahl2, ergebnis;                // Variablen für Zahlen
    char rechenzeichen;                           // Variable fürs Rechenzeichen

    cout << "Geben Sie eine Rechenaufgabe ein: "; // Eingabeaufforderung ausgeben
    cin >> zahl1 >> rechenzeichen >> zahl2;       // Aufgabe einlesen

    switch(rechenzeichen){                        // Wert von rechenzeichen ermitteln
        case '+': ergebnis = zahl1+zahl2; break;  // entsprechend dem
        case '-': ergebnis = zahl1-zahl2; break;  // Rechenzeichen
        case '*': ergebnis = zahl1*zahl2; break;  // das Ergebnis
        case '/': ergebnis = zahl1/zahl2; break;  // berechnen
        // Fehlerausgabe und Programm beenden, falls falsches Rechenzeichen eingegeben wurde
        default: cout << "unbekanntes Rechenzeichen...\n"; return 1;
    }

    // Aufgabe noch mal komplett ausgeben
    cout << zahl1 << ' ' << rechenzeichen << ' ' << zahl2 << " = " << ergebnis << '\n';
}
Crystal Clear app kscreensaver.png
Ausgabe:
Geben Sie eine Rechenaufgabe ein: <Eingabe>99 / 3</Eingabe>
99 / 3 = 33


Persönliche Werkzeuge