#include
#include
#include
#include
#include
using namespace std;
// Headers
string toString (double);
int toInt (string);
double toDouble (string);
int main() {
// Mithilfe des Verfahrens von Euklid soll das Programm den größten gemeinsamen Teiler (ggT) von zwei Zahlen bestimmen.
// Die Variable A bezeichnet die erste Zahl.
int a;
cout << "Geben Sie die erste Zahl an: " << endl;
cin >> a;
// Die Variable B bezeichnet die zweite Zahl.
int b;
cout << "Geben Sie die zweite Zahl an: " << endl;
cin >> b;
// Es wird geprüft, ob die zweite Zahl 0 ist. Wenn die zweite Zahl (hier die Variable B) 0 ist, ist die Berechnung beendet.
while (!(b == 0)) {
if (a > b) {
a = a - b;
} else {
b = b - a;
}
}
// Wenn der Fall eintritt, dass die Variable B den Wert 0 hat, wird die Berechnung beendet. Der Wert des größten gemeinsamen Teilers befindet sich in der Variable A, deren Inhalt im nächsten Schritt ausgeben wird.
cout << a << endl;
return 0;
}
// Im Folgenden werden Funktionen zur Typumwandlung implementiert.
string toString (double value) { //int auch
stringstream temp;
temp << value;
return temp.str();
}
int toInt (string text) {
return atoi(text.c_str());
}
double toDouble (string text) {
return atof(text.c_str());
}