Il cronometrista


Questo esercizio riguarda principalmente le durate temporali, ma potrebbe essere usato per un esercizio generico sui tempi.

Storia

Sarah è una cronometrista. In realtà è la migliore che ci sia. Quando i bambini le chiedono cosa fa un cronometrista, adora mostrare loro un barattolo pieno di sabbia bianca. «Vedi», dice, «sto tenendo il tempo al sicuro!»

Il suo lavoro vero non è così romantico, ma per lei resta un lavoro molto interessante e appagante. Vola agli eventi sportivi di tutto il mondo con la borsa piena di attrezzatura per il cronometraggio e misura i tempi di ogni atleta.

In questo esercizio scriverai alcune funzioni per il nuovo software di cronometraggio che Sarah ti ha chiesto di creare per lei. Non possono esserci errori, altrimenti il prossimo record mondiale potrebbe non essere valido, se in seguito viene trovato un bug nel software! Sei pronto ad assumerti la responsabilità?

Note

I dati che provengono dall'hardware di cronometraggio sono di solito un timestamp (time, datetime o persino con fuso orario). Ha una precisione elevata, di solito fino a 1 millisecondo, a volte persino 100 microsecondi. Ogni dispositivo hardware ha un orologio interno che deve essere sincronizzato con tutti gli altri dispositivi.

Compiti

Questi sono esempi di compiti adatti all'esercizio del cronometrista:

  • Calcola la differenza tra l'orario di partenza e quello di arrivo per ottenere la durata.
  • Un dispositivo di cronometraggio si trova in un altro fuso orario. Calcola la differenza tra 2 orari con fusi orari diversi.
  • Un dispositivo di cronometraggio non ha connessione internet. Per i primi 10 corridori un aiutante ti legge al telefono i tempi registrati. Vengono inseriti usando il formato "10h5m19.234s", che deve essere analizzato.
  • La partenza anticipata è stata registrata dalla videocamera di riserva. Ricalcola il nuovo orario di partenza sottraendo una durata data dall'orario di partenza errato.
  • Durante un evento vengono rilevati molti tempi spuri. Per poter ignorare tutti quei tempi «indesiderati», il cronometrista può accettare i tempi di un dispositivo di cronometraggio solo entro un certo intervallo dopo la partenza. Ad esempio, tra 10 min e 30 min dopo la partenza. Crea una funzione di filtro con gli input start time (timestamp), from e to (durate), detection (timestamp).
  • Formatta l'output di una durata sul tabellone con il formato "1h5m19.234s +4.843", dove +4.843 è il distacco dal leader (l'atleta in prima posizione).

Implementazioni

  • Ancora nessuna

Correlati