Πάρτε και μια ωραία που κατέβασα τώρα, με αφορμή ένα επιτραπέζιο που μ' αρέσει. Δεν είναι δύσκολη.
Αυτό θα σας εξασκήσει στο αν μπορείτε να εξάγετε πληροφορίες από εκφώνηση, κάτι που πέφτει σε Πανελλήνιες. Δεν απαιτεί πίνακες ή επανάληψη, μόνο απλές δομές ελέγχου.
Άσκηση
Στο επιτραπέζιο παιχνίδι «
7 Wonders», οι παίχτες μπορούν να μαζεύουν πόντους νίκης με 7 διαφορετικούς τρόπους. Ένα μονοπάτι είναι μέσω συλλογής επιστημονικών συμβόλων. Στο παιχνίδι υπάρχουν τρία διαφορετικά επιστημονικά σύμβολα, καθένα σε πολλαπλά αντίγραφα: ο
τροχός, η
ταμπλέτα και ο
διαβήτης.
Η αξία των επιστημονικών συμβόλων υπολογίζεται στο τέλος του παιχνδιού και φέρνουν πόντους νίκης με δύο τρόπους:
- Κάθε σύμβολο που έχει μαζευτεί n φορές, φέρνει n² πόντους νίκης.
- Επιπλέον, για κάθε ολοκληρωμένο σετ τροχού-ταμπλέτα-διαβήτη, ο παίχτης παίρνει επιπλέον 7 πόντους ως bonus.
Παράδειγμα: η Σοφία έχει μαζέψει στο τέλος του παιχνιδιού 2 τροχούς, 1 ταμπλέτα και 3 διαβήτες. Από το κάθε σύμβολο ξεχωριστά, θα μαζέψει (2)² + (1)² + (3)² = 14 πόντους. Επιπλέον, επειδή έχει ένα ολοκληρωμένο σετ θα πάρει 7 επιπλέον πόντους, οπότε η τελική της βαθμολογία θα είναι 14 + 7 = 21 πόντοι νίκης.
Να γραφεί αλγόριθμος ο οποίος θα δέχεται ως είσοδο τον αριθμό του κάθε επιστημονικού συμβόλου που έχει μαζέψει ένας παίχτης και θα εμφανίζει την τελική του βαθμολογία. Θεωρήστε ότι στην είσοδο θα δίνονται μη-αρνητικές τιμές.
Ζήτημα να είναι 10-20 γραμμές κώδικας. Και για όσους ξέρουν υποπρογράμματα και συναρτήσεις, υπάρχει μια ωραία επέκταση.