1. Entwickeln Sie eine C++-Anwendung, die den Anwender zur Eingabe von drei Zahlen auffordert. Das Programm soll den Wert 10 zur ersten eingegebenen Zahl hinzuaddieren, das Ergebnis mit der zweiten eingegebenen Zahl multiplizieren und dann durch die dritte eingegebene Zahl dividieren. Die Berechnung soll hierbei innerhalb einer einzigen Code-Zeile erfolgen. Das Ergebnis soll auf den Bildschirm ausgegeben werden. Hinweis: Zum Umwandeln einer Zahl innerhalb eines Arrays vom Typ char benötigen Sie die Funktion atoi(). Dieser Funktion übergeben Sie das Array zwischen den runden Klammern und erhalten als Rückgabewert eine Zahl vom Typ int.1. Habe ich so gelöst:
2. Entwickeln Sie eine C++-Anwendung, die den Anwender zur Eingabe einer vierstelligen Zahl auffordert. Das Programm soll daraufhin die Quersumme der vierstelligen Zahl errechnen und das Ergebnis dann auf den Bildschirm ausgeben. Hinweis: Je nach Lösungsansatz benötigen Sie wie in Aufgabe 1 die Funktion atoi() zum Umrechnen von Zahlen innerhalb eines Arrays vom Typ char in Werte vom Typ int.
Code:
#include <iostream>
using namespace std;
int main()
{
int zahl1, zahl2, zahl3, ergebnis;
cin >> zahl1;
cin >> zahl2;
cin >> zahl3;
cout << (zahl1 + 10) * zahl2 / 2 << endl;
system("PAUSE");
}
Code:
#include <iostream>
using namespace std;
int main()
{
char eingabe[3];
int zahl;
cin >> zahl;
zahl = atoi(eingabe[0] + eingabe[1] + eingabe[2] + eingabe[3]);
cout << zahl << endl;
system("PAUSE");
}
Hrmm aber wie soll ich sonst angeben das ich nur die Zahl an einer bestimmten Position eines char arrays mit einer anderen addieren will?
mit static_cast<int> habe ich es auch schon probiert, bekomme aber irgendwie -110 raus etc.
Was mache ich falsch?
Würde mich sehr über hilfe freuen, danke!
MfG,
CracKPod






-> Kapitel 3.11 Aufgaben (Nr.2)
