Zwei Codes in einen Code zusammenfassen
Verfasst: Montag 8. Dezember 2025, 13:03
Hallo zusammen,
wir brauchen Hilfe bei unserem Code. Wir wollen einmal den Code für einen Taschenrechner und den Code für ein Tic-Tac-Toe zusammenfassen und haben dies auch bereits versucht, was leider nicht funktioniert hat. Wir wissen schon ungefähr wo der Fehler liegt, sind uns aber nicht sicher wie wir ihn beheben können. Vielen Dank schonmal
Grüße
```
z=Taschenrechner
x=TicTacToe
print("Wähle eine der beiden Optionen:")
wahl=input("Taschenrechner 'z' oder TicTacToe 'x':")
while wahl not in ["z", "x"]:
wahl=input("Bitte 'z' für Taschenrechner oder 'x' für TicTacToe eingeben: ")
if i in range(z):
def Taschenrechner():
return
def addieren(a,b): # Angeben von Rechenzeichen, für leichteren Überblick
return a+b
def subtrahieren(a,b):
return a-b
def multiplizieren(a,b):
return a*b
def dividieren(a,b):
# Division durch 0 verhindern
if b==0:
return "Fehler: Division durch Null ist nicht erlaubt!"
return a / b
def zahl(text):
while True:
eingabe=input(text)
try:
return float(eingabe) # in Zahl umwandeln
except ValueError:
print("Bitte gib eine gültige Zahl ein!")
h=zahl("Gebe eine Zahl ein: ")
j=zahl("Gebe eine andere Zahl ein: ") # 1. und 2. Zahl für die Rechnung
operation=input("Gebe ein Rechenzeichen ein (+, -, *, /): ") # für die Rechnung
if operation=="+":
ergebnis=addieren(h,j)
elif operation=="-":
ergebnis=subtrahieren(h,j)
elif operation=="*":
ergebnis=multiplizieren(h,j)
elif operation=="/":
ergebnis=dividieren(h,j)
else:
ergebnis="?"
print("Das Ergebnis lautet:", ergebnis) # Ausgabe vom Ergebnis
if i in range(x):
def TicTacToe():
return # Angabe der Zahlencombos die im Tic-Tac-Toe gewinnen, basierend auf dem erstellten Spielfeld s.u
winning_combos=(
(0, 1, 2), (3, 4, 5), (6, 7,
,
(0, 3, 6), (1, 4, 7), (2, 5,
,
(0, 4,
, (2, 4, 6))
def play(player):
print("\n", " | ".join(grid[:3]))
print("---+---+---")
print("", " | ".join(grid[3:6])) # Spielfeld für das Spiel
print("---+---+---")
print("", " | ".join(grid[6:]))
# Wiederholung vom Code
while True:
try:
cell = int(input(f"Gib eine Zahl für {player} ein: "))
if str(cell) not in grid: # Zum Eingeben von "X" und "O" im Spielfeld über hinterlegte Zahlen beim Aufbau
raise ValueError
grid[cell-1] = player
break
except ValueError:
print("Gib eine Zahl von einer freien Zelle ein.")
for combo in winning_combos:
if all(grid[cell]==player for cell in combo):
return combo # Damit Spiel beendet wird nach einem Gewinn und man nicht weitere Eingaben tätigen kann
return None
player1="X"
player2="O"
player=player1
grid=list("123456789") # Für die Eingabe in das oben erstellte Spielfeld
for i in range(9):
won=play(player)
if won:
print(f"Spieler {player} hat gewonnen!") # neun Züge bis zum Unentschieden, weil dann keine weiteren Züge möglich sind
break
player=player1 if player==player2 else player2
else:
print("Unentschieden")
```
wir brauchen Hilfe bei unserem Code. Wir wollen einmal den Code für einen Taschenrechner und den Code für ein Tic-Tac-Toe zusammenfassen und haben dies auch bereits versucht, was leider nicht funktioniert hat. Wir wissen schon ungefähr wo der Fehler liegt, sind uns aber nicht sicher wie wir ihn beheben können. Vielen Dank schonmal
Grüße
```
z=Taschenrechner
x=TicTacToe
print("Wähle eine der beiden Optionen:")
wahl=input("Taschenrechner 'z' oder TicTacToe 'x':")
while wahl not in ["z", "x"]:
wahl=input("Bitte 'z' für Taschenrechner oder 'x' für TicTacToe eingeben: ")
if i in range(z):
def Taschenrechner():
return
def addieren(a,b): # Angeben von Rechenzeichen, für leichteren Überblick
return a+b
def subtrahieren(a,b):
return a-b
def multiplizieren(a,b):
return a*b
def dividieren(a,b):
# Division durch 0 verhindern
if b==0:
return "Fehler: Division durch Null ist nicht erlaubt!"
return a / b
def zahl(text):
while True:
eingabe=input(text)
try:
return float(eingabe) # in Zahl umwandeln
except ValueError:
print("Bitte gib eine gültige Zahl ein!")
h=zahl("Gebe eine Zahl ein: ")
j=zahl("Gebe eine andere Zahl ein: ") # 1. und 2. Zahl für die Rechnung
operation=input("Gebe ein Rechenzeichen ein (+, -, *, /): ") # für die Rechnung
if operation=="+":
ergebnis=addieren(h,j)
elif operation=="-":
ergebnis=subtrahieren(h,j)
elif operation=="*":
ergebnis=multiplizieren(h,j)
elif operation=="/":
ergebnis=dividieren(h,j)
else:
ergebnis="?"
print("Das Ergebnis lautet:", ergebnis) # Ausgabe vom Ergebnis
if i in range(x):
def TicTacToe():
return # Angabe der Zahlencombos die im Tic-Tac-Toe gewinnen, basierend auf dem erstellten Spielfeld s.u
winning_combos=(
(0, 1, 2), (3, 4, 5), (6, 7,
(0, 3, 6), (1, 4, 7), (2, 5,
(0, 4,
def play(player):
print("\n", " | ".join(grid[:3]))
print("---+---+---")
print("", " | ".join(grid[3:6])) # Spielfeld für das Spiel
print("---+---+---")
print("", " | ".join(grid[6:]))
# Wiederholung vom Code
while True:
try:
cell = int(input(f"Gib eine Zahl für {player} ein: "))
if str(cell) not in grid: # Zum Eingeben von "X" und "O" im Spielfeld über hinterlegte Zahlen beim Aufbau
raise ValueError
grid[cell-1] = player
break
except ValueError:
print("Gib eine Zahl von einer freien Zelle ein.")
for combo in winning_combos:
if all(grid[cell]==player for cell in combo):
return combo # Damit Spiel beendet wird nach einem Gewinn und man nicht weitere Eingaben tätigen kann
return None
player1="X"
player2="O"
player=player1
grid=list("123456789") # Für die Eingabe in das oben erstellte Spielfeld
for i in range(9):
won=play(player)
if won:
print(f"Spieler {player} hat gewonnen!") # neun Züge bis zum Unentschieden, weil dann keine weiteren Züge möglich sind
break
player=player1 if player==player2 else player2
else:
print("Unentschieden")
```