Δεδομένου ενός αριθμού n, προσδιόρισε ποιος είναι ο νιοστός πρώτος αριθμός.
Αν γράψουμε τους πρώτους έξι πρώτους αριθμούς: 2, 3, 5, 7, 11 και 13, βλέπουμε ότι ο 6ος πρώτος αριθμός είναι το 13.
Αν η γλώσσα σου παρέχει μεθόδους στην τυπική βιβλιοθήκη για να χειρίζεσαι πρώτους αριθμούς, κάνε πως δεν υπάρχουν και υλοποίησέ τες μόνος σου.
Μερικές φορές είναι απαραίτητο να πετάξεις μια εξαίρεση. Όταν το κάνεις αυτό, θα πρέπει πάντα να συμπεριλαμβάνεις ένα μήνυμα σφάλματος με νόημα για να δείξεις ποια είναι η πηγή του σφάλματος. Αυτό κάνει τον κώδικά σου πιο ευανάγνωστο και βοηθά σημαντικά στο debugging. Για περιπτώσεις όπου γνωρίζεις ότι η πηγή του σφάλματος θα είναι ενός συγκεκριμένου τύπου, μπορείς να επιλέξεις να πετάξεις έναν από τους ενσωματωμένους τύπους σφαλμάτων, αλλά θα πρέπει ακόμα να συμπεριλάβεις ένα μήνυμα με νόημα.
Αυτή η συγκεκριμένη άσκηση απαιτεί να χρησιμοποιήσεις την εντολή raise για να "πετάξεις" ένα ValueError όταν η συνάρτηση prime() λαμβάνει μη έγκυρη είσοδο. Καθώς αυτή η άσκηση ασχολείται μόνο με θετικούς αριθμούς, οποιοσδήποτε αριθμός < 1 είναι μη έγκυρος. Τα τεστ θα περάσουν μόνο αν και κάνεις raise την exception και της δώσεις ένα μήνυμα.
Για να πετάξεις ένα ValueError με ένα μήνυμα, γράψε το μήνυμα ως όρισμα στον τύπο exception:
# when the prime function receives malformed input
raise ValueError('there is no zeroth prime')
Γράψου στο Exercism για να μάθεις και να κατακτήσεις Python με 17 έννοιες146 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.