Test ob int eine zahl?
-
Guten abend!
Ich lern für mein Studium c++ und hab ein problem und nichts gefunden was mir weiterhelfen könnte
ich soll ein Programm schreiben welches eingegebene Zahlen summiert, bis ein buchstabe eingegeben wird. Doch sobald ich einen Buchstaben eingebe addiert er jedesmal eins zu der Summe hinzu und spuckt es aus und das imemr wieder

mein Dozent meinte mit "while (iZahl)" prüft er automatisch den wahrheitswert, da die int variable ja keine buchstaben umfasst, also sobald man einen buchstaben eingibt endet die schleife.... vermute da muss ich iwas falsch gemacht haben^^
hier mein code:int iZahl, iSumme; iSumme = 0; cin >> iZahl; while (iZahl) { iSumme=iSumme+iZahl; cout << "Die Summe betraegt: " << iSumme << endl; cin >> iZahl; } cin.clear(); cin >> cZeichen;Wär cool wenn mir irgendwer sagen könnte warum da nur mist rauskommt^^
Lg
-
Dein Dozent meinte sicherlich dies:
while (cin >> iZahl)P.S.: Und wenn du es nicht vorgeschrieben bekommst, dann lass die ungarische Notation sein.
-
Jeah! Cool vielen dank!

funktioniert damit wunderbar!
aber ich hab keine Ahnung was du mir mit der ungarischen Notation sagen willst
-
Kruemelmonster schrieb:
aber ich hab keine Ahnung was du mir mit der ungarischen Notation sagen willst

Wohl hauptsächlich, daß Bezeichner wie "int iZahl" inzwischen als unsinnig gelten.
-
CStoll schrieb:
Wohl hauptsächlich, daß Bezeichner wie "int iZahl" inzwischen als unsinnig gelten.
Und man sie durch "int zahl;" oder "in number;" oder durch noch sinnvollere Namen wie "int summe" ersetzen sollte.

@TE Aber kurz "Ungarische Notation" bei Google eingeben war nicht drin?
-
Okay danke, war aber vorgegeben

doch ich habs gegooglet aber zugegeben hab ich die Definition nicht ganz verstanden, aber so wie ihr es gesagt habt schon^^ sorry bin ganz neu auf dem Programmiergebiet, deswegen da etwas unbeholfen.