24.10.2018 – Funktionen und Kontrollstrukturen

In dieser Sitzung besprochene Inhalte

  • Namensräume: namespace std;
  • Zeichen (char) vs. Zeichenkette (string)
  • Schleifen: for, while
  • Auswahlanweisungen: if / else, switch / case
  • Gültigkeitsbereich von Variablen

Code

#include <iostream>

// Um nicht immer std:: vor cout oder endl schreiben zu müssen:
// Angeben, dass wir uns im Standard-Namensraum befinden:
using namespace std;

int main() {

    // Debugging

    // "\n" -> Zeilenumbruch, Sonderzeichen
    cout << "1" << "\n";
    cout << "2" << endl;
    cout << "3" << endl;
    cout << "4" << endl;
    cout << "5" << endl;
    cout << "6" << endl;
    cout << "7" << endl;
    cout << "8" << endl;
    cout << "9" << endl;
    cout << "10";

    cout << endl;
    
    // Refactoring
    // I. std:: entfernen
    // II. Schleife verwenden:
    // Pseudocode:
    
    // Solange die ausgegebene Zahl kleiner gleich 10 ist:
    //  Gebe die aktuelle Zahl aus
    //  Erhöhe den Zähler um eins

    // Schleifen:
    // - while
    // - do while
    // - for

    // for: Schlüsselwort
    // for (Initialisierung; Bedingung; Inkrementierung des Var.-Wertes)

    // Inkrementierung:
    // i++ Kurzform für:
    // i = i + 1;
    // alternativ: i += 1;

    // Bedingungen:
    // < kleiner als
    // <= kleiner oder gleich
    // > größer als
    // >= größer oder gleich

    // Einfache Anführungszeichen: Ein (!) ASCII-Zeichen (char, 8 Bit)
    // 1 Bit, 1 Byte = 8 Bit
    // Doppelte Anführungszeichen: Text (String)

    for (int i = 1; i <= 10; i++) {

        // Gültigkeitsbereich der Variable i ist lokal, auf for-Schleife beschränkt
        cout << "for: " << i << endl;
    }

    // Codestyle-Guide

    cout << endl;

    // Variablen haben bestimmte Gültigkeitsbereiche
    // Variablendefinition
    int i;

    while (i <= 10) {

        cout << "while: " << i << endl;
        i++;
    }

    // Bedingungen
    // if / else
    // switch / case

    // Anforderung: Unsere Anwendung soll bei der Zahl 3 ein "Hurra!" und bei
    // der Zahl 15 ein "Jippie!" ausgeben.
    for (int zaehler = 1; zaehler < 16; zaehler++) {

        cout << "for: " << zaehler << endl;

        if (zaehler == 3) {
            cout << "Hurra!" << endl;
        } else if (zaehler == 15) {
            cout << "Jippie!" << endl;
        } else {
            cout << "Tüdelütütütüt!" << endl;
        }
    }

    for (int zaehler = 1; zaehler < 16; zaehler++) {

        cout << "for und switch / case: " << zaehler << endl;

        switch (zaehler) {

            case 3:
                cout << "Hurra!" << endl;
                break;
            case 15:
                cout << "Jippie!" << endl;
                break;
            default:
                cout << "Tüdelütütütüt!" << endl;
        }
    }

    return 0;
}