Ich hab ein paar Fragen zu folgendem Code: Code: #include <iostream.h> #include <stdlib.h> main() { int Geraten; int Suchzahl; srand(4); Suchzahl = rand() % 1000 + 1; do { cout << "Raten Sie eine Zahl zwischen 1 und 1000!" << endl; cin >> Geraten; if (Geraten < Suchzahl) { cout << "Die Zahl ist zu klein!" << endl; } if (Geraten > Suchzahl) { cout << "Die Zahl ist zu gross!" << endl; } } while (Geraten != Suchzahl); cout << "Die Zahl ist richtig!" << endl << endl << endl; system("pause"); } Warum steht da while (Geraten != Suchzahl); und nicht while (Geraten == Suchzahl);? != bedeutet doch nicht gleich. Und wenn die gratene Zahl nicht gleich der Suchzahl ist, warum ist die Zahl dann richtig? Kann mir das bitte jemand erklären.
#include <iostream.h> #include <stdlib.h> main() { int Geraten; int Suchzahl; srand(4); Suchzahl = rand() % 1000 + 1; do { cout << "Raten Sie eine Zahl zwischen 1 und 1000!" << endl; cin >> Geraten; if (Geraten < Suchzahl) { cout << "Die Zahl ist zu klein!" << endl; } if (Geraten > Suchzahl) { cout << "Die Zahl ist zu gross!" << endl; } } while (Geraten != Suchzahl); cout << "Die Zahl ist richtig!" << endl << endl << endl; system("pause"); }
Geändert von Freezy (05.08.2004 um 17:16 Uhr)
kann ich dir erklären ^^ der wiederholt die do-while-schleife, bis die while-bedingung falsch ist. do while heißt ja schließlich auf deutsch soviel wie "mache solange" und nicht "mache bis". also wiederholt der die ganze zahl-rate-eingabe, solange die geratene zahl nicht die gesuchte zahl ist. ps: "#include <iostream>" statt "#include <iostream.h>" und die main-funktion sollte einen int zurückgeben (ist halt standard). pps: man kann es besser lesen, wenn es richtig eingerückt ist
Der original Code ist eingerückt nur ich habe ihn einfach kopiert und hier eingefügt.
Foren-Regeln