Alle paar Jahre erliege ich wiederholt der Vorstellung, ich könne eine Programmiersprache lernen. In all meiner Nerdhaftigkeit hatte ich nie genug Geduld, dies bis zum Ende durchzuziehen. Und erneut denke ich: diesmal klappt es.
Derzeit versuche ich, C++ zu lernen. Dazu habe ich mir das Buch „Einführung in die Programmierung mit C++“ von Bjarne Stroustrup, dem Erfinder von C++, besorgt und gehe es schon eine Weile durch. Ich bin zwar völlig überfordert, es macht jedoch Spaß, zu sehen, wie es für ein Problem unterschiedliche Lösungen geben kann.
Gestern zum Beispiel löste ich die Aufgabe 4.4, in der es darum geht, eine gedachte Zahl zwischen 1 und 100 zu erraten. Hier ist meine Lösung:
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cmath>
using namespace std;
int main()
{
int guess = 50;
int zuwachs = 50;
char antwort {};
bool success = 0;
int zug = 0;
int gedacht{};
while (!success)
{
cout << "Ist die gedachte Zahl (h)öher, (g)leich oder (k)leiner als " << guess << '\n';
cin >> antwort;
switch (antwort) {
case 'h':
if (zuwachs > 1)
zuwachs = zuwachs/2;
guess += zuwachs;
zug++;
break;
case 'g':
success = 1;
gedacht = guess;
zug++;
break;
case 'k':
if (zuwachs > 1)
zuwachs = zuwachs/2;
guess -= zuwachs;
zug++;
break;
default:
cout << antwort << " ist keine korrekte Eingabe! Bitte versuche es erneut." << '\n';
break;
}
}
cout << "Ihre gedachte Zahl ist " << gedacht << "! Es brauchte " << zug << " Züge! \n.";
return 0;
}