Hong-Phuc Bui
2025-05-12 20a8785ef20a2164c428dbeec0c29061f5003f8c
tik tak toe 2.te runde
1 files modified
57 ■■■■ changed files
ub-3/tik-tak-toe.py 57 ●●●● patch | view | raw | blame | history
ub-3/tik-tak-toe.py
@@ -8,30 +8,73 @@
   [EMPTY, EMPTY, EMPTY],
]
def print_tafel(tafel):
COLUMNS = 3
ROWS = 3
def print_tafel(board):
    symbols = ("*", "X", "O")
    for zeile in tafel:
    for zeile in board:
        for c in zeile:
            print(f"{symbols[c]} ",end="")
        print()
def input_ok(tafel, r, c):
    return True
    is_in_tafel = (ROWS > r >=0) and (COLUMNS > c >= 0)
    if is_in_tafel:
        beleg = tafel[r][c]
        return beleg == EMPTY
    else:
        return False
   
   
def user_input(user,tafel):
    print(f"Spieler {user} ist dran")
    print("Geben Sie die Zeile und Spalten ein")
    user_input_ok = False
    while not user_input_ok:
    r = int(input("Zeile:  ")) - 1
    c = int(input("Spalte: ")) - 1
    if input_ok(tafel, r, c):
        user_input_ok = input_ok(tafel, r, c)
        if user_input_ok:
        tafel[r][c] = user
    else:
        print("Eingabe nicht in Ordnung")
    
def spiel_bewerten(tafel):
    """
    return: Ein Tupel
    1. Element: True = Spiel beendet
                False = Spiel geht weiter
    2. Element: 0 = unentschieden
                1 = 1. Spieler gewonnen
                2 = 2. Spieler gewonnen
    """
    empty_cells = ROWS * COLUMNS
    for row in tafel:
        for colum in row:
            if colum != EMPTY:
                empty_cells = empty_cells - 1
    return (empty_cells == 0, 0)
print_tafel(tafel)
user_input(1, tafel)
aktuelle_spieler = 1
(spiel_ende, gewinner) = (False, 0)
while not spiel_ende :
    (spiel_ende, gewinner) = spiel_bewerten(tafel)
    user_input(aktuelle_spieler, tafel)
print_tafel(tafel)
user_input(2, tafel)
print_tafel(tafel)
    if aktuelle_spieler == 1:
        aktuelle_spieler = 2
    else:
        aktuelle_spieler = 1
print("Spiel beendet!")