Python :: Aufgabe #237 :: Lösung #7
7 Lösungen
#237
Glücksspiel Zufällige Zahl 0-9
Fortgeschrittener - Python
von re_mas
- 27.11.2019 um 18:30 Uhr
Die Aufgabenstellung ist wie folgt:
- Glücksspiel bei der eine random Zahl zwischen 0 - 9 erzeugt werden soll.
- Der Spieler hat ein Startkonto von 10.000 Punkten und kann damit einen beliebigen Teilbetrag auf die zufällig erzeugte Zahl setzen.
- Liegt er richtig bekommt er das 9 Fache seines Einsatzes als Gewinn
- Programmieren Sie ein entsprechendes Programm, welches die Eingaben von der Tastatur einliest und
die Ausgaben auf dem Bildschirm liefert. Die zu erratende Zahl kann durch einen verfügbaren Zufallsgenerator gezogen werden.
- Glücksspiel bei der eine random Zahl zwischen 0 - 9 erzeugt werden soll.
- Der Spieler hat ein Startkonto von 10.000 Punkten und kann damit einen beliebigen Teilbetrag auf die zufällig erzeugte Zahl setzen.
- Liegt er richtig bekommt er das 9 Fache seines Einsatzes als Gewinn
- Programmieren Sie ein entsprechendes Programm, welches die Eingaben von der Tastatur einliest und
die Ausgaben auf dem Bildschirm liefert. Die zu erratende Zahl kann durch einen verfügbaren Zufallsgenerator gezogen werden.
#7
von Ahzul (50 Punkte)
- 12.08.2021 um 20:36 Uhr
import random
class Player:
__balance = None
__pot = None
def __init__(self, balance):
self.__balance = balance
self.__pot = 0
def get_balance(self):
return self.__balance
def set_balance(self, balance):
self.__balance = balance
def __bet(self, amount):
self.__pot += amount
self.__balance -= amount
def __win(self):
self.__balance += (9 * self.__pot)
self.__pot = 0
def lose(self):
self.__pot = 0
def print_player_info(self):
print(f'-----------------------------------\n'
f'Balance:\t{self.__balance} points\n')
def game(self):
number = random.randint(0, 9)
try:
bet = int(input("Bet:\n"))
print(f'Bet is:\t{bet} points')
except ValueError:
print("Invalid bet\n")
return
if self.__balance >= bet:
try:
guess = int(input("Guess number from 0-9!\n"))
print(f'\nYour Guess:\t{guess}\n'
f'correct number:\t{number}\n')
except ValueError:
print("Invalid Guess\n")
return
if 0 <= guess <= 9:
self.__bet(bet)
if guess == number:
self.__win()
print("WINNER WINNER!")
self.print_player_info()
else:
print("Loser!")
self.print_player_info()
else:
print("Guess is not Valid!")
else:
print("Bet is not Valid!")
def options(var_player):
if player.get_balance() == 0:
print("You don't have any points!")
else:
option = input("-----------------------------------\n"
"Would you like to play again?\n"
"-y for yes\n"
"-n for no\n"
"-show_info for balance info!\n"
"-----------------------------------\n")
if option == 'y':
return True
elif option == 'n':
return False
elif option == 'show_info':
var_player.print_player_info()
return options(var_player)
elif option == 'exit':
quit()
else:
print("Invalid Option!")
return options(var_player)
if __name__ == '__main__':
player = Player(10000)
play_again = True
while play_again:
player.game()
play_again = options(player)
with python 3.9
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
