LU15.L02 - Schachuhr

Lösungsschritte

1. Entertaste

 
def chessclock():
    while True:
        ins = input()
        if ins == '':
            print('Enter')
 
 
if __name__ == '__main__':
    chessclock()

2. Aktuelle Zeit

from datetime import datetime, timedelta
 
def chessclock():
 
    print('[Für Start Enter drücken]')
    input()
    time_start = datetime.now()
 
    while True:
        ins = input()
        if ins == '':
            time_end = datetime.now()
            dt = time_end - time_start
            delta = timedelta(seconds=dt.seconds)
            print(f'Spielzeit {delta}')
 
 
if __name__ == '__main__':
    chessclock()

3. Umbauen für 2 Personen

1 Printe: '[Für Start Enter drücken]'
2 Lese input
3 Speichere die aktuell Uhrzeit in eine Variable ''time_start''
4 Printe: 'Spieler A ist dran'
5 Variable ''time_A = timedelta()''
6 Variable ''time_B = timedelta()''
7 Variable ''actual_player = 'A'''
8 Start endlosschleife
  8.1 Lese input
  8.2 Wenn input == ''
    8.2.1 Speichere die Uhrzeit in eine neue Variable ''time_end''
    8.2.2 Ziehe die Uhrzeit ''time_start'' von ''time_end'' ab und speichern sie den Wert.
    8.2.3 Speichere den Wert in eine Variable vom Typ ''timedelta'' mit dem Namen ''playtime''
    8.2.4 Wenn der aktuelle Player 'A' ist
      8.2.4.1 Die Playtime zur Spielzeit von A addieren
      8.2.4.2 Den aktuellen Spieler auf Spieler B setzen
    8.2.5 Sonst
      8.2.5.1 Die Playtime zur Spielzeit von B addieren
      8.2.5.2 Den aktuellen Spieler auf Spieler A setzen
    8.2.6 Die ''time_start'' Zeit mit der aktuellen Zeit befüllen
    8.2.7 Printe: ('Zeit Spieler A: ' + str(time_A))
    8.2.8 Printe: ('Zeit Spieler B: ' + str(time_B))
    8.2.9 Printe: ('Aktueller Spieler: ' + actual_player)
    
from datetime import datetime, timedelta
 
def chessclock():
    time_A = timedelta()
    time_B = timedelta()
    actual_player = 'A'
 
    print('[Für Start Enter drücken]')
    input()
    print('Spieler A ist dran')
    time_start = datetime.now()
 
    while True:
        ins = input()
        if ins == '':
            time_end = datetime.now()
            dt = time_end - time_start
            playtime = timedelta(seconds=dt.seconds)
            if actual_player == 'A':
                time_A += playtime
                actual_player = 'B'
            else:
                time_B += playtime
                actual_player = 'A'
            time_start = datetime.now()
            print('Zeit Spieler A: ' + str(time_A))
            print('Zeit Spieler B: ' + str(time_B))
            print('Aktueller Spieler: ' + actual_player)
 
if __name__ == '__main__':
    chessclock()