Division durch 0 unterbinden
Bei einem kleinen Rechner wollte ich bei der Division eine teilung durch 0 mit einer while schleife unterbinden (ein bisschen was gelerntes ausprobieren/wiederholen).
zahl1, zahl2 sind int typen
schleife ist bool, sie wird am anfang auf true gesetzt.
Code:
[....]
cout <<"Bitte die erste Zahl eingeben : ";
cin >> zahl1;
while(schleife == true)
{
cout <<"Bitte die zweite Zahl eingeben : ";
if((cin >> zahl2) == 0)
{
cout << "Der Divisor darf nicht 0 sein!"<<endl;
continue;
}
schleife = false;
}
cout <<endl<<"Das Ergebnis der Division ist : "<<zahl1 / zahl2<<endl;
system("PAUSE");
return 0;
[....]
Wenn ich bei der zweiten Zahl allerdings 0 eingebe, hängt sich das Programm mit einer Windows typischen Senden / Nicht Senden Meldung auf.
Kann mir einer sagen woran das liegt ? ^^
Habe schon verschiedene Methoden für die if-überprüfung genommen, hat auch nicht geholfen.
Edit: Alles klar gelöst - hatte was mit cin in der if bedingung zu tun.