no way to compare when less than two revisions

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.


de:modul:m319:learningunits:lu14:loesungen:schachuhr [2025/06/23 07:45] (aktuell) – ↷ Seite von modul:m319:learningunits:lu14:loesungen:schachuhr nach de:modul:m319:learningunits:lu14:loesungen:schachuhr verschoben msuter
Zeile 1: Zeile 1:
 +====== LU15.L02 - Schachuhr ======
 +===== Lösungsschritte =====
 +==== 1. Entertaste ====
 +<WRAP center round box 60%>
 +<code python>
 +
 +            
 +def chessclock():
 +    while True:
 +        ins = input()
 +        if ins == '':
 +            print('Enter')
 +           
 +
 +if __name__ == '__main__':
 +    chessclock()
 +</code>
 +</WRAP>
 +
 +
 +==== 2. Aktuelle Zeit ====
 +
 +<WRAP center round box 60%>
 +<code python>
 +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()
 +</code>
 +</WRAP>
 +
 +==== 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)
 +      
 +<WRAP center round box 60%>
 +<code python>
 +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()
 +</code>
 +</WRAP>
  
  • de/modul/m319/learningunits/lu14/loesungen/schachuhr.txt
  • Zuletzt geändert: 2025/06/23 07:45
  • von msuter