Υπολόγισε τον αριθμό των κόκκων σιταριού σε μια σκακιέρα, δεδομένου ότι ο αριθμός σε κάθε τετράγωνο διπλασιάζεται.
Μια φορά κι έναν καιρό ήταν ένας σοφός υπηρέτης που έσωσε τη ζωή ενός πρίγκιπα. Ο βασιλιάς υποσχέθηκε να τον πληρώσει με ό,τι κι αν μπορούσε να σκεφτεί ο υπηρέτης. Γνωρίζοντας ότι ο βασιλιάς αγαπούσε το σκάκι, ο υπηρέτης τού είπε πως θα ήθελε να πάρει κόκκους σιταριού. Έναν κόκκο στο πρώτο τετράγωνο μιας σκακιέρας, με τον αριθμό των κόκκων να διπλασιάζεται σε κάθε επόμενο τετράγωνο.
Η σκακιέρα έχει 64 τετράγωνα (όπου το τετράγωνο 1 έχει έναν κόκκο, το τετράγωνο 2 έχει δύο κόκκους κ.ο.κ.).
Γράψε κώδικα που δείχνει:
Αυτού του είδους τα προβλήματα (όπου μια απάντηση εξαρτάται από μια προηγούμενη) ονομάζονται συχνά αναδρομή. Υπάρχουν διαφορετικοί τρόποι να γράψεις κώδικα με αναδρομή, και ίσως αξίζει να το ερευνήσεις αν δεν το γνωρίζεις. Το Pharo είναι καλά βελτιστοποιημένο για αναδρομή, και είναι ένα συχνά χρησιμοποιούμενο μοτίβο.
Σημείωση: στην αρχική προδιαγραφή του προβλήματος, το grainsCalculator καλείται μέσω #square, ωστόσο έχουμε μετονομάσει αυτή τη μέθοδο σε #atSquare:, που είναι ένα όνομα πιο κοντά στο Smalltalk, και περιγράφει καλύτερα ότι ζητάς μια απάντηση "σε ένα τετράγωνο".
Γράψου στο Exercism για να μάθεις και να κατακτήσεις Pharo με 50 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.