Κρεμάλα

Κρεμάλα

Μέτριο

Οδηγίες

Υλοποίησε τη λογική του παιχνιδιού Κρεμάλα χρησιμοποιώντας συναρτησιακό αντιδραστικό προγραμματισμό.

Η Κρεμάλα είναι ένα απλό παιχνίδι μαντέματος λέξεων.

Ο συναρτησιακός αντιδραστικός προγραμματισμός είναι ένας τρόπος να γράφεις διαδραστικά προγράμματα. Διαφέρει από τη συνηθισμένη οπτική στο ότι, αντί να λες "όταν πατηθεί το κουμπί, αύξησε τον μετρητή", γράφεις "η τιμή του μετρητή είναι το άθροισμα των φορών που πατήθηκε το κουμπί".

Υλοποίησε τη βασική λογική πίσω από την Κρεμάλα χρησιμοποιώντας συναρτησιακό αντιδραστικό προγραμματισμό. Θα χρειαστεί να εγκαταστήσεις μια βιβλιοθήκη FRP γι' αυτό. Αυτό περιγράφεται στα αρχεία της άσκησης που αφορούν συγκεκριμένα τη γλώσσα/track.

Ειδικές οδηγίες για την Python

Μια βιβλιοθήκη τρίτων δεν απαιτείται για αυτή την άσκηση. Παρακαλώ αγνόησε τις οδηγίες σχετικά με τη βιβλιοθήκη FRP.

Μηνύματα εξαίρεσης

Μερικές φορές είναι απαραίτητο να πετάξεις μια εξαίρεση. Όταν το κάνεις αυτό, θα πρέπει πάντα να συμπεριλαμβάνεις ένα μήνυμα σφάλματος με νόημα για να δείχνεις ποια είναι η πηγή του σφάλματος. Αυτό κάνει τον κώδικά σου πιο ευανάγνωστο και βοηθά σημαντικά στο debugging. Σε περιπτώσεις όπου γνωρίζεις ότι η πηγή του σφάλματος θα είναι συγκεκριμένου τύπου, μπορείς να επιλέξεις να πετάξεις έναν από τους ενσωματωμένους τύπους σφαλμάτων, αλλά θα πρέπει ακόμα να συμπεριλάβεις ένα μήνυμα με νόημα.

Αυτή η συγκεκριμένη άσκηση απαιτεί να χρησιμοποιήσεις την εντολή raise για να "πετάξεις" ένα ValueError όταν το παιχνίδι έχει τελειώσει αλλά ο παίκτης προσπαθεί να συνεχίσει να παίζει. Τα tests θα περάσουν μόνο αν κάνεις και raise την exception και συμπεριλάβεις ένα μήνυμα μαζί της.

Για να πετάξεις ένα ValueError με μήνυμα, γράψε το μήνυμα ως όρισμα στον τύπο exception:

# when player tries to play, but the game is already over.
raise ValueError("The game has already ended.")
Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
Python Exercism

Έτοιμος να ξεκινήσεις την άσκηση Κρεμάλα;

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