Ihr Code ist in Bezug auf Datentypen falsch. Sie haben eine Variable 'a' vom Typ int, die Sie mit der Zeichenfolge 'yes' vergleichen. Versuchen Sie es aus einem logischen Blickwinkel zu sehen; Sie können vergleichen:
- 2 Zahlen (zum Beispiel 2 größer als 1)
- 2 Strings (zum Beispiel "Essen" ist nicht das gleiche Wort wie "Katze") Etc ...
In Ihrem Fall vergleichen Sie eine eingegebene Zahl (nehmen wir 5 an) mit einem Wort "ja". Wenn Sie versuchen, einen Buchstaben für Var a einzugeben, erhalten Sie einen Kompilierungsfehler. Daher einfach folgend ändern:
string a;
Ein weiteres Problem mit Ihrem Code ist, wenn die if-then Schleife die Bedingung überprüft; Ein Vergleichsoperator ist 2 gleiche Zeichen nebeneinander statt eines einzelnen Gleichheitszeichens. Ein einzelnes Gleichheitszeichen weist das Element auf der rechten Seite dem Element auf der linken Seite zu. Zum Beispiel in:
int num = 5;
Die Variable num ist 5. zugewiesen Aber Sie wollen einen Vergleich zu machen, nicht zuweisen die Variable ihren eigenen Zustand!
Ihre Schleife ist immer wahr, weil Sie die Variable auf die Bedingung eingestellt haben, die sie erfüllen soll.Sie müssen auch Folgendes tun: in var a auf den Wert auf der rechten Seite des == gespeichert
if (a == "yes")
Dieser vergleicht den Wert.
Nur ein paar Ratschläge, ich würde Ihnen empfehlen, ein paar gute Bücher über C++ zu bekommen. Suche sie online. Sie können auch Online-Programmierkurse zu edx, course record, etc ... nehmen. Es gibt auch viele andere kostenlose Lernressourcen online, die Sie nutzen können. Vielleicht möchten Sie auch in eine einfachere Programmiersprache eintauchen; Ich würde Scratch empfehlen. Es gibt Ihnen eine sehr grundlegende Idee über die Programmierung und kann in weniger als einer Woche erledigt werden.
** Beachten Sie, dass dies der einfachste Weg ist; Sie können jedoch auch den Typ von a auf ein char setzen, eine Eingabe akzeptieren und sie dann in eine Zeichenfolge zurückkonvertieren. Viel Glück!
Gleichheitsvergleich ist == nicht =, Sie versuchen, zuzuweisen. TBH, der Vergleich einer Ganzzahl mit "Ja" ergibt keinen Sinn. – Borgleader
Bitte folgen Sie einfach einem Programmier-Tutorial. – csmckelvey
Diese Frage beantwortet man am besten mit einem guten C++ Buch. Vielleicht sollten Sie sich die [C++ empfohlene Buchliste] ansehen (http://stackoverflow.com/questions/388242/). – jaggedSpire