Underkane
Registered +
- Registriert
- März 2008
- Beiträge
- 148
Hallo,
ich habe mich mal an C++ gewagt habe mich an ein erstes Spiel gecodet.
Es klappt auch fast alles, aber mir fällt folgendes auf.
7 soll die Zahl sein, bei der die Meldung "Richtig" erscheinen soll.
NUR (!) bei der 7.
Wenn ich allerdings eine Zahl > 7 eingebe und darauffolgend eine Zahl < 7 eingebe, kommt trotzdem die "Richtig" Meldung, was nicht sein sollte/dürfte.
Bei diesem Code hält es sich bisschen länger.
Ich gebe eine Zahl < 7 ein, dann eine Zahl > 7 und dann nochmal eine Zahl < 7.
Dann erscheint trotzdem die "Richtig" Meldung.
Weiß jemand was ich falsch mache und wie ich es ausbessern kann?
mfg
Underkane
//Edit:
Wenn ich 7 gleich am Anfang eingebe, bekomme ich trotzdem eine "Falsch" Meldung.
Und ich wüsste gerne, wie ich eine Zahl zwischen 1 und 10 automatisch (zufällig) generieren lasse, damit sie sich jedes mal ändert.
ich habe mich mal an C++ gewagt habe mich an ein erstes Spiel gecodet.
Es klappt auch fast alles, aber mir fällt folgendes auf.
7 soll die Zahl sein, bei der die Meldung "Richtig" erscheinen soll.
NUR (!) bei der 7.
Wenn ich allerdings eine Zahl > 7 eingebe und darauffolgend eine Zahl < 7 eingebe, kommt trotzdem die "Richtig" Meldung, was nicht sein sollte/dürfte.
Code:
#include
#include
using namespace std;
int main(int argc, char *argv[])
{
cout /Begrüßung Anfang
cout cout cout cout /Begrüßung Ende
cout /Leere Zeile
cout cout /Leere Zeile
int zahl = 7;
cout cin >> zahl;
while(zahl < 7) //zahl ungleich 7
{
cout /leere zeile
cout /meldung
cout cin >> zahl; //neue zahl
}
while(zahl > 7) //zahl ungleich 7
{
cout /leere zeile
cout /meldung
cout cin >> zahl; //neue zahl
}
if(zahl == 7); //zahl gleich 7
{
cout /leere zeile
cout /lob
cout /leere zeile
system("PAUSE"); //schließen
return EXIT_SUCCESS;
}
}
Bei diesem Code hält es sich bisschen länger.
Ich gebe eine Zahl < 7 ein, dann eine Zahl > 7 und dann nochmal eine Zahl < 7.
Dann erscheint trotzdem die "Richtig" Meldung.
Code:
#include
#include
using namespace std;
int main(int argc, char *argv[])
{
cout /Begrüßung Anfang
cout cout cout cout /Begrüßung Ende
cout /Leere Zeile
cout cout /Leere Zeile
int zahl = 7;
cout cin >> zahl;
do //zahl ungleich 7
{
cout /leere zeile
cout /meldung
cout cin >> zahl; //neue zahl
} while(zahl < 7);
do //zahl ungleich 7
{
cout /leere zeile
cout /meldung
cout cin >> zahl; //neue zahl
} while(zahl > 7);
if(zahl == 7); //zahl gleich 7
{
cout /leere zeile
cout /lob
cout /leere zeile
system("PAUSE"); //schließen
return EXIT_SUCCESS;
}
}
Weiß jemand was ich falsch mache und wie ich es ausbessern kann?
mfg
Underkane
//Edit:
Wenn ich 7 gleich am Anfang eingebe, bekomme ich trotzdem eine "Falsch" Meldung.
Und ich wüsste gerne, wie ich eine Zahl zwischen 1 und 10 automatisch (zufällig) generieren lasse, damit sie sich jedes mal ändert.