Python :: Aufgabe #271 :: Lösung #1

2 Lösungen Lösungen öffentlich
#271

Game - Heiß oder Kalt

Anfänger - Python von DavidDev024 - 20.04.2020 um 19:36 Uhr
Das Spiel läuft folgender Maßen ab:

- Spieler 1 denkt sich eine Zahl aus
- Spieler 2 versucht nun die Zahl zu erraten, indem er eine Zahl eingibt
- nun wird der vorherige Versuch (falls einer vorhanden) mit dem jetzigen verglichen und wärmer oder kälter ausgegeben (je nachdem ob man der geheimen Zahl von Spieler 1 näher kommt oder nicht)
-Erratet Spieler 2 die Zahl sollen die benötigten Versuche und die benötigte Zeit ausgegeben werden.

Have Fun
#1
vote_ok
von thunderbird (820 Punkte) - 27.04.2020 um 09:07 Uhr
Quellcode ausblenden Python-Code
from os import system
from time import perf_counter

#Spielereingaben
print(30*"-"+"\nSpiel: Hot or Cold\n"+30*"-")
player1 = input("Name Spieler 1: ")
player2 = input("Name Spieler 2: ")
print(f"\n{player2} bitte schliessen Sie die Augen, oder schauen weg bis {player1} seine Eingabe getaetigt hat.")
zahl = int(input(f"{player1} Bitte geben Sie Ihre Zahl ein: "))

system("cls")
print("Es wurde eine Zahl eingegeben.\n")

check = False
sw = 10
ver = 0

#Spielbeginn
while not check:
    guessNum = int(input(f"{player2} Erraten Sie die Zahl: "))

    if ver == 0:
        if guessNum == zahl:
            print("\nGlückwunsch, das war die richtige Zahl")
            print(f"Es wurden {ver} Versuche und {perf_counter()}sek benoetigt.")
            check = True
        elif guessNum < zahl or guessNum > zahl:
            if (abs(zahl-guessNum))<sw:
                print("Heiss")
                ver += 1
            else:
                print("Kalt")
                ver += 1
        guessNumOld = guessNum
    else:
        if guessNum == zahl:
            print("\nGlückwunsch, das war die richtige Zahl")
            print(f"Es wurden {ver} Versuche und {perf_counter()}sek benoetigt.")
            check = True
        elif abs(guessNum-zahl) == abs(guessNumOld-zahl):
            print("Gleiche Entfernung")
            ver += 1
        elif guessNum < zahl or guessNum > zahl:
            if abs(zahl-guessNum)<sw:
                print("Heiss")
                ver += 1
            elif (abs(zahl-guessNum))<abs((zahl-guessNumOld)):
                print("Waermer")
                ver += 1
            else:
                print("Kaelter")
                ver += 1
    guessNumOld=guessNum

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben