Python "Schere-Stein-Papier" funktioniert nicht, man kann nicht gewinnen?

Ich bin nun so gut wie fertig mit meinem Spiel, aber man kann nicht gewinnen. Ich habe es auch mit "try except" versucht, aber hat auch nicht funktioniert. Woran kann das liegen?

Ich weiß man könnte das schöner/besser machen, aber mir passt es so:)

Code:

#Imports
import time
import random
random.seed()

	#Headline
print("*************************"); time.sleep(0.5)
print("*Schere - Stein - Papier*"); time.sleep(0.5)
print("*************************"); time.sleep(0.5)

true = True

while true == True:

	print("-------------------------------") #Abtrennung
	#Input
	print("Wählen Sie eine Figur: ")
	spielerwahl = input().lower()
	print("")
	
	computerwahl = ["schere", "stein", "papier"]

	#Output
	print("Sie wählten: ", spielerwahl)
	pc = random.choice(computerwahl)
	print("Der Computer wählte: ", pc)
	print("")

	#Verzweigungen
	if spielerwahl == pc:
		print("*********Unentschieden!*********")
		
	#Spielerwahl = Schere
	elif spielerwahl == "schere" or spielerwahl == "Schere" and pc == "stein":
		print("***********Verloren!***********")
		
	elif spielerwahl == "schere" or spielerwahl == "Schere" and pc == "papier":
		print("***********Gewonnen!***********")
	
	#Spielerwahl = Stein
	elif spielerwahl == "stein" or spielerwahl == "Stein" and pc == "papier":
		print("***********Verloren!***********")
		
	elif spielerwahl == "stein" or spielerwahl == "Stein" and pc == "schere":
		print("***********Gewonnen!***********")
	
	#Spielerwahl = Papier
	elif spielerwahl == "papier" or spielerwahl == "Papier" and pc == "schere":
		print("***********Verloren!***********")
		
	elif spielerwahl == "papier" or spielerwahl == "Papier" and pc == "stein":
		print("***********Gewonnen!***********")
		
	#Fehlermeldung
	else:
		print("*********Nicht möglich!*********")
	
	#Abtrennung
	print("-------------------------------")
	print(""); time.sleep(1.5)
Computer, Technik, IT, Programmieren, Informatik, Python, Technologie, Spiele und Gaming
3 Antworten
Ich habe angefangen Schere Stein Papier in JavaScript zu programmieren leider funktioniert die Ergebnis Auswertung am Ende nicht. Wo ist der Fehler?

Das ist der JS Code:

FuEingabe();
    function FuEingabe() {
    var eingabe = prompt("Bitte gib: Schere, Stein oder Papier ein!", "Schere, Stein, Papier");
}
    switch(FuEingabe()) {

        case "Schere":
        
        zufallenemyeingabe();
        break;

        case "Stein":
        
        zufallenemyeingabe();
        break;

        case "Papier":
        
        zufallenemyeingabe();
        break;

        default:

        alert("Ungültig!");

}
function zufallenemyeingabe() {
    var max = 3;
    var min = 1;
    var zufallzahl = (Math.random() * (max - min)) + min;
    console.log("Die Zufallzahl lautet: " + zufallzahl);
    var zufallzahlround = Math.round(zufallzahl);
    console.log("Die gerundete Zufallzahl heißt: " + zufallzahlround);
    var StEingabe = "non";

    switch(zufallzahlround){

        case 1:
        StEingabe = "Stein";
        break;

        case 2:
        StEingabe = "Papier";
        break;

        case 3:
        StEingabe = "Schere";
        break;

        default: 
        console.log("Error 01: Computer hat kein Ergebnis generiert!");
    }
    console.log(StEingabe);
    alert("Der Computer hat " + StEingabe) + " gewählt.";
    return StEingabe

}

function ergebnisauswertung() {
    var gewinner = "nil";
    var PlayEingabe = FuEingabe();

    if(PlayEingabe == "Schere" && zufallenemyeingabe == "Schere") { 

        gewinner = "Unentschieden!";

    }
                                                             
    if(PlayEingabe == "Schere" && zufallenemyeingabe == "Stein") {
        gewinner = "PC";

    }
                                                           
    if(PlayEingabe == "Schere" && zufallenemyeingabe == "Papier") {
        gewinner = "Player";

    }
                                                             
                                                              
     //Eigentliches Vergleichen der Wahl - Stein 
    if(PlayEingabe == "Stein" && zufallenemyeingabe == "Stein") {
        gewinner = "Unentschieden!";
        

    }
                                                           
    if(PlayEingabe == "Stein" && zufallenemyeingabe == "Schere") {
        gewinner = "Player";

    }
                                                            
    if(PlayEingabe == "Stein" && zufallenemyeingabe == "Papier") {
        gewinner = "PC";

    }
                                                            
                                                            
    //Eigentliches Vergleichen der Wahl - Papier 
    if(PlayEingabe == "Papier" && zufallenemyeingabe == "Papier") {
    gewinner = "Unentschieden!";

    }
                                                             
    if(PlayEingabe == "Papier" && zufallenemyeingabe == "Schere") { 

        gewinner = "PC";


    }
                                                             
    if(PlayEingabe == "Papier" && zufallenemyeingabe == "Stein") { 

        gewinner = "Player";

    }

    return gewinner;
                                                            
}
var gewinner = ergebnisauswertung();
console.log(gewinner);
if (ergebnisauswertung() == "Player") {
    alert("Du gewinnst!");
}


Spiele, Computer, Internet, Website, HTML, Webseite, Programmieren, JavaScript, Code
4 Antworten

Was möchtest Du wissen?