#include
#include
#include
#include
#include
using namespace std;
// Headers
string toString (double);
int toInt (string);
double toDouble (string);
int main() {
// Zuerst werden die Variablen für die Eingabe definiert.
// Für die Basis des Rechtecks wird in der ersten Variable basis deklariert.
double basis;
// Für die Höhe des Rechtecks wird in die zweite Variable hoehe deklariert.
double hoehe;
// In den folgenden zwei Schritten werden die Variablen für die Ergebnisse, d.h. für die Fläche und den Umfang, deklariert. Diese Variablen dienen später auch für die Ausgabe der Ergebnisse.
// Im Folgenden wird die Variable flaeche für die Fläche deklariert.
double flaeche;
// Hier wird die Variable umfang für den Umfang des Rechtecks deklariert.
double umfang;
// Hier erfolgt nun die Zuweisung von Werten an die zwei Variablen basis und hoehe. Davor müssen die entsprechenden Werte noch beim Nutzer abgefragt werden. Dies erfolgt im nächsten Schritt.
cout << "Bitte geben Sie die Länge der Basis des Rechtecks an: " << endl;
// Der eingegebene Wert wird nun in der Variable basis gespeichert.
cin >> basis;
cout << "Bitte geben Sie die Länge der Höhe des Rechtecks an: " << endl;
// Der eingegebene Wert wird nun in der Variable hoehe gespeichert.
cin >> hoehe;
// Jetzt folgt die Berechnung und die Ausgabe des Wertes für die Fläche des Rechtecks.
cout << "Die Fläche des Rechtecks beträgt: " << endl;
// Die Fläche des Rechtecks wird durch das Produkt der Basis und der Höhe, hier flaeche = basis * hoehe berechnet.
cout << basis * hoehe << endl;
// Dann wird der Umfang des Rechtecks berechnet und das Ergebnis ausgegeben.
cout << "Der Umfang des Rechtecks beträgt: " << endl;
// Der Umfang des Rechtecks entspricht der doppelten Summe der Basis und Höhe, hier also umfang = 2*(basis + hoehe).
cout << (basis + hoehe) * 2 << 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());
}