Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

27.03.2012, 17:05

Quiz erstellen: Antwort erkennen wahr oder falsch

HeY Leute
ich habe mal vor so ein kleines Quiz spiel zu erstellen, da ich so etwas Übung bekomme und ich eh nicht weit bin.
Hier jezt mal rasch der Quelltext:

//first Game :D

#include <iostream>
using namespace std;

int main ()
{
int Name, Antwort1

cout << "Willkommen ! Made by XXX :) ! " << endl;
cout << "Bitte tipp zuerst dein Namen: " << endl;
cin >> Name;
cout << "ohh,du bist es, willkommen :D " << endl;
cout << "bist du berreittt...für die erste Frage des Quiz ? -.- " << endl;
cout << "okay..let´s go ! " << endl;
cout << "Frage 1: BLABLABLA" << endl;
cin >> Antwort 1;
cout >>
return 0;
}




okay,zugeben: nicht gerade ein "spiel" aber sollte auch nur als privatverbrauch enden.
meine Frage: Was muss ich tuhen das z.b Antwort 1 was bestimmtes sein muss und darauf auch eine Meldung kommt.

z.b:

Frage: Welches Jahr haben wir ? <-- Die Frage die das Programm geben soll
Antwort: 2012 <-- die richtige Antwort = darauf folg automatisch ein bestimmer Satz
Ergebnis : RICHTIG ! <--- der bestimmte Satz vom Programm

ODER

Frage: Welches Jahr haben wir ? <-- die Frage
Antwort: 2391 <-- Programm erkennt den Fehler und spuckt eine Naricht aus
Ergebnis: FALSCH ! <--- Falsche Antwort wird mitgeilt

Das wäre möglichst mein Ziel,das das Programm eigenständig erkennt das die Antwort falsch oder richtig ist.

Wirago

Alter Hase

Beiträge: 1 193

Wohnort: Stockerau

Beruf: CRM Application Manager

  • Private Nachricht senden

2

27.03.2012, 17:10

1) bei code bitte den C++ -tag verwenden.
2) nachdem du offenbar erst cin und cout gelernt hast, lern weiter und du wirst merken wie sinnfrei es wäre dir hier ne antwort zu geben ;)

edit:
is nicht bös gemeint, aber du würdest bei der antwort nicht verstehen was überhaupt passiert

LusH

Frischling

Beiträge: 13

Wohnort: /home/tim

Beruf: Schüler

  • Private Nachricht senden

3

27.03.2012, 17:10

Also die wohl simpelste Variante wäre eine If-Abfrage:

C-/C++-Quelltext

1
2
3
4
5
cin >> antwort;

if(antwort == "2012"){
    cout << "Richtig !" << endl;
}


Ich weiß natürlich nicht wie weit du bist, ich geh einfach mal davon aus, dass du eher zu dem Bereich Anfänger gehörst :P

// Edit:
Natürlich falsch, hab überlesen, dass es sich um einen Integer handelt
:wacko:
W§ssten S#e, dass Tastat§tre#ber völl#g ?berflßssig s#ind ?
- Unbekannter Verfasser

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »LusH« (27.03.2012, 17:17)


4

27.03.2012, 17:12

1) bei code bitte den C++ -tag verwenden.
2) nachdem du offenbar erst cin und cout gelernt hast, lern weiter und du wirst merken wie sinnfrei es wäre dir hier ne antwort zu geben ;)

edit:
is nicht bös gemeint, aber du würdest bei der antwort nicht verstehen was überhaupt passiert
Okay,mache ich. Ich weiß das ich nicht weit bin :D. Muss es jedoch auch noch aus ienen anderen Grund machen.

Also die wohl simpelste Variante wäre eine If-Abfrage:

C-/C++-Quelltext

1
2
3
4
5
cin >> antwort;

if(antwort == "2012"){
    cout << "Richtig !" << endl;
}


Ich weiß natürlich nicht wie weit du bist, ich geh einfach mal davon aus, dass du eher zu dem Bereich Anfänger gehörst :P
Vielen dank. Ich versuchs gleich mal.

LusH

Frischling

Beiträge: 13

Wohnort: /home/tim

Beruf: Schüler

  • Private Nachricht senden

5

27.03.2012, 17:15

Sorry habe mich verlesen, du nimmst als Antwort ja einen Integer :crazy:
Schon blöd...

Müsste dann so aussehen:

C-/C++-Quelltext

1
2
3
4
5
6
cin >> antwort;

if(antwort == 2012){
cout << "Richtig !" << endl;

}
W§ssten S#e, dass Tastat§tre#ber völl#g ?berflßssig s#ind ?
- Unbekannter Verfasser

6

27.03.2012, 17:30

Sorry habe mich verlesen, du nimmst als Antwort ja einen Integer :crazy:
Schon blöd...

Müsste dann so aussehen:

C-/C++-Quelltext

1
2
3
4
5
6
cin >> antwort;

if(antwort == 2012){
cout << "Richtig !" << endl;

}

1 Frage: Und wenn ich jetz 2011 tippen würde ? Wie stelle ich ein das er eine Meldung mit "Falsch" ausgibt?
2. Frage: Wie geht es mit Wörtern ? z.b

Antwort == Affe

c

C-/C++-Quelltext

1
2
3
4
cin >> antwort;

if(antwort == Affe){
cout << "Richtig !" << endl;


so kommt bei mir ein Fehler^^ wenn ich mich irre müsste ich ja was andere als == benützen,oder ?

LusH

Frischling

Beiträge: 13

Wohnort: /home/tim

Beruf: Schüler

  • Private Nachricht senden

7

27.03.2012, 17:34

Wenn du Falsch ausgeben willst müsstest du es so machen:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
cin >> antwort;
if(antwort == 2012){
cout << "Richtig !" << endl;
}

else {
cout << "Falsch !" << endl;
}


Falls du eine Eingabe wie Affe verwenden willst müsstest du einen String (oder einen Char-Array) einlesen und so überprüfen:
if(antwort == "Affe"){
// Do Stuff here
}

Arbeite wie Wirago es gesagt hat weiter an deinem Buch/Kurs oder womit du immer lernst, da kommt sowas zu 98 % dran :P
W§ssten S#e, dass Tastat§tre#ber völl#g ?berflßssig s#ind ?
- Unbekannter Verfasser

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

8

27.03.2012, 17:34

Hast du kein Buch?
Stichwort: else

Wenn du Wörter und Sätze erwarten willst solltest du mit std::string und std::getline arbeiten.
Beispiel:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
std::string antwort;
std::getline(std::cin, antwort);
if(antwort == "bäume sind blau")
{
//richtig
}
else
{
// falsch
}


LusHs Variante hat den Nachteil, dass man so nur ein Wort einlesen kann. ;)
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

9

27.03.2012, 18:06

Danke

Ich danke allen für die Hilfe.

Da ich nicht so weit bin, und ich das unterschätzt habe :D mach ich mich wieder am lernen.

Vielen dank für die Hilfe nochmal :D

m3xx

Alter Hase

Beiträge: 434

Beruf: Student

  • Private Nachricht senden

10

27.03.2012, 21:40

passend zum thema, gibt es die möglich keit bei:

C-/C++-Quelltext

1
if ((text== "bla") || (text == "BLA"))

usw
gibt es ne andere möglichkeit wo groß und kleinschreibung ignoriert werden? wär ja blöd wenn man alle Möglichkeiten machn muss...

Werbeanzeige