Was willst Du überhaupt machen?
Der Code im ersten Post hat gleich mehrere Fehler!
1. = ist eine Zuweisung, kein Vergleich
In deiner ersten if weist Du der Variablen Namen den Wert von bomk (1) zu.
Die Bedinung ist dann erfüllt (true), wenn der Inhalt der beiden Variablen nicht 0 ist.
Sprich: Im Moment setzt du Namen=1, damit ist die Bedingung erfüllt.
Würdest Du bspw. if(Namen=0) schreiben, wäre die Bedingung nicht erfüllt.
2. Du willst einen Vergleich machen, deshalb musst Du == schreiben.
if(Namen == bomk) ist schonmal richtiger, aber an sich immernoch falsch.
Um mal in Worten zu erklären, was dein Programm aktuell macht:
Du deklarierst die Integer-Variable Namen, weist ihr aber noch keinen Wert zu.
Du deklarierst die Variablen bomk, bong und pstar und initialisierst sie alle mit dem Wert 1.
Du hast jetzt also an sich 3 identische Variablen.
Jetzt liest du von der Konsole einen Wert ein und speicherst ihn in der Variablen Namen.
So weit so gut, aber jetzt:
Du prüfst im ersten Fall, ob der Inhalt (!) der Variablen Namen mit dem Inhalt (!) der Variablen bomk übereinstimmt.
Das ist der Fall, wenn der User in der Konsole die 1 eingetippt hat, weil du ja bomk=1 initialisiert hast.
Wenn der User aber nicht die 1 sondern bspw. die 2 eintippt, dann ist diese Bedingung nicht erfüllt, (weil der Inhalt von Namen ist 2, der Inhalt von bomk ist 1).
Also gehts weiter im Code.
Jetzt wird verglichen, ob der Inhalt der Variablen Namen mit dem Inhalt der Variablen bong übereinstimmt. Du hast bong aber mit 1 initialisiert.
Der Fall, dass Namen == 1 ist, ist aber schon bei bomk abgearbeitet worden.
Stattdessen müsstest Du also nur bong mit 2 und pstar mit 3 initialisieren (und natürlich als user 1,2 oder 3 eingeben).
Und nicht vergessen, bei allen if-Vergleichen zwischen die Variablen ein == statt ein = zu setzen.
Damit sollte es dann funktionieren
|