Διαδρομές
/
Python
Python
/
Ασκήσεις
/
Γιγαδευτερόλεπτο
Γιγαδευτερόλεπτο

Γιγαδευτερόλεπτο

Εύκολο

Εισαγωγή

Ο τρόπος που μετράμε τον χρόνο είναι λίγο μπερδεμένος. Έχουμε 60 δευτερόλεπτα στο λεπτό και 60 λεπτά στην ώρα. Αυτό προέρχεται από την αρχαία Βαβυλώνα, όπου χρησιμοποιούσαν το 60 ως βάση του αριθμητικού τους συστήματος. Μια μέρα έχει 24 ώρες, μια εβδομάδα έχει 7 μέρες, και πόσες μέρες έχει ένας μήνας; Λοιπόν, ο αριθμός των ημερών σε έναν μήνα δεν εξαρτάται μόνο από το ποιος μήνας είναι, αλλά και από το είδος του ημερολογίου που χρησιμοποιείται στη χώρα όπου ζεις.

Τι θα γινόταν όμως αν χρησιμοποιούσαμε μόνο δευτερόλεπτα για να εκφράζουμε χρονικά διαστήματα; Τότε θα μπορούσαμε να χρησιμοποιήσουμε τα προθέματα του μετρικού συστήματος για να γράφουμε μεγάλους αριθμούς δευτερολέπτων σε ποσότητες πιο εύκολα κατανοητές.

  • Μια συνταγή μπορεί να σου πει να αφήσεις τα μπράουνις να ψηθούν στον φούρνο για δύο κιλοδευτερόλεπτα (δηλαδή δύο χιλιάδες δευτερόλεπτα).
  • Ίσως εσύ και η οικογένειά σου να ταξιδεύατε κάπου εξωτικά για δύο μεγαδευτερόλεπτα (δηλαδή δύο εκατομμύρια δευτερόλεπτα).
  • Και αν εσύ και ο σύντροφός σου ήσασταν παντρεμένοι για χίλια εκατομμύρια δευτερόλεπτα, θα γιορτάζατε την επέτειό σας του ενός γιγαδευτερολέπτου.
Note

Αν ποτέ αποικίσουμε τον Άρη ή κάποιον άλλο πλανήτη, η μέτρηση του χρόνου θα γίνει ακόμα πιο μπερδεμένη. Αν κάποιος πει "έτος", εννοεί ένα έτος στη Γη ή ένα έτος στον Άρη;

Η ιδέα για αυτή την άσκηση προήλθε από το μυθιστόρημα επιστημονικής φαντασίας "A Deepness in the Sky" του συγγραφέα Vernor Vinge. Σε αυτό, ο συγγραφέας χρησιμοποιεί το μετρικό σύστημα ως βάση για τις μετρήσεις του χρόνου.

Οδηγίες

Η αποστολή σου είναι να προσδιορίσεις την ημερομηνία και την ώρα ένα γιγαδευτερόλεπτο μετά από μια δεδομένη ημερομηνία.

Ένα γιγαδευτερόλεπτο είναι ένα δισεκατομμύριο δευτερόλεπτα. Δηλαδή ένα 1 με εννέα μηδενικά μετά.

Αν γεννήθηκες στις 24 Ιανουαρίου 2015 στις 22:00 (10:00:00 μ.μ.), τότε θα είχες ζήσει ένα γιγαδευτερόλεπτο στις 2 Οκτωβρίου 2046 στις 23:46:40 (11:46:40 μ.μ.).

Ανάγνωση και γραφή μεγάλων αριθμών

Ο κώδικας διαβάζεται πιο συχνά απ' ό,τι γράφεται, και το διάβασμα ενός μεγάλου/μακριού αριθμού μέσα σε άλλο κείμενο μπορεί να είναι δύσκολο. Δύο τρόποι για να κάνεις τους αριθμούς πιο ευανάγνωστους:

  1. Χρήση κάτω παύλας σε αριθμητικά κυριολεκτικά. Το 1_000_000 είναι πιο ευανάγνωστο από το 1000000, και το 10_100_201_330 σαρώνεται πιο εύκολα από το 10100201330. Για περισσότερες πληροφορίες, δες το PEP-0515.

  2. Χρήση εκθετικής ή επιστημονικής σημειογραφίας. Ο χαρακτήρας e (ή E) που ακολουθείται από έναν ακέραιο αντιπροσωπεύει τη δύναμη του 10 με την οποία πρέπει να πολλαπλασιαστεί ο αριθμός που προηγείται του e (δηλαδή: 1e6, το 1 πολλαπλασιάζεται επί 10 υψωμένο στη δύναμη του 6, που ισούται με 1000000). Για περισσότερες λεπτομέρειες, ρίξε μια ματιά σε αυτή την αναφορά για τη επιστημονική σημειογραφία.

Ημερομηνίες και ώρες στην Python

Αυτή η άσκηση εξερευνά αντικείμενα από το module datetime της Python:

Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
Python Exercism

Έτοιμος να ξεκινήσεις την άσκηση Γιγαδευτερόλεπτο;

Γράψου στο Exercism για να μάθεις και να κατακτήσεις Python με 17 έννοιες146 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.