μας παιχνϊδι ή κινούμενο σχέδιο. Σο Scratch όμως έχει (σχεδόν) όλα τα εργαλεϊα μιας κανονικής γλώσσας προγραμματισμού. Όλες οι εφαρμογές, τα προγράμματα, τα παιχνϊδια στους υπολογιστές ή στις κινητές συσκευές που χρησιμοποιούμε έχουν δημιουργηθεϊ με μια γλώσσα προγραμματισμού*. Ας δούμε λοιπόν ένα ή δυο παραδεϊγματα για το πώς μπορούμε να λύσουμε μαθηματικά προβλήματα με το Scratch! *Δεκνθηιείο γιώζζεο πξνγξακκαηηζκνύ είλαη νη Python, Java, Javascript, C, C#, PHP θαη άιιεο. Κάζε κηα έρεη ηε δηθή ηεο ρξεζηκόηεηα κε πιενλεθηήκαηα θαη κεηνλεθηήκαηα.
να κάνουμε τα παρακάτω ΕΡΩΣΗΜΑΣΑ: 1. Ξέρω να λύνω το πρόβλημα; 2. Μπορώ να εκφράσω την λύση του προβλήματος σαν αλγόριθμο*; 3. Μπορώ να υλοποιήσω κάθε βήμα του αλγόριθμου με τις εντολές/τουβλάκια του Scratch; Αν έχω απαντήσει ΝΑΙ και στα τρϊα, τότε εϊμαστε έτοιμοι να μάθουμε στον υπολογιστή να λύνει το πρόβλημα. Και θα μας το λύνει ΚΑΘΕ φορά, γρήγορα και σωστά! *Αιγόξηζκνο, ζπκόκαζηε, ζεκαίλεη ηελ ιύζε ελόο πξνβιήκαηνο κε ζπγθεθξηκέλα βήκαηα, ηα νπνία είλαη απιά θαη θαηαλνεηά!
με απλά και συγκεκριμένα βήματα : την μετατροπή ενός αριθμού από το δυαδικό στο δεκαδικό σύστημα και το αντίστροφο! Ας θυμηθούμε τις διαδικασϊες εδώ! Από το ΔΤΑΔΙΚΟ στο ΔΕΚΑΔΙΚΟ Βρϊσκω την αξϊα του κάθε ψηφϊου. Ξέρω ότι οι αξϊες στο δυαδικό σύστημα εϊναι οι δυνάμεις του 2 (1, 2, 4, 8, 16 κτλ.) Πολλαπλασιάζω κάθε ψηφϊο με την αξϊα του. Προσθέτω τα αποτελέσματα. Εναλλακτικά, επειδή όταν το ψηφϊο εϊναι 0, το αποτέλεσμα εϊναι 0, προσθέτω μόνο τις αξϊες όταν το ψηφϊο εϊναι 1. Από το ΔΕΚΑΔΙΚΟ στο ΔΤΑΔΙΚΟ Διαιρώ τον αριθμό με το 2, βρϊσκω το ακέραιο πηλϊκο και κρατάω το υπόλοιπο. Διαιρώ το πηλϊκο με το 2 και κρατάω το υπόλοιπο. υνεχϊζω την ϊδια διαδικασϊα μέχρι το πηλϊκο να εϊναι 0. Σα υπόλοιπα που βρήκα, από το τελευταϊο μέχρι το πρώτο, σχηματϊζουν τον δυαδικό αριθμό που ψάχνω.
πολλαπλασϊασέ το με την μονάδα (20 = 1). 2. Πρόσθεσε το γινόμενο στο αποτέλεσμα. 3. Πάρε το προτελευταϊο ψηφϊο του αριθμού και πολλαπλασϊασέ το με την δυάδα (21 = 2). 4. Πρόσθεσε κι αυτό το γινόμενο στο αποτέλεσμα. 5. υνέχισε έτσι μέχρι και το πρώτο ψηφϊο του αριθμού. Αλγόριθμος 2: 1. Πάρε το τελευταϊο ψηφϊο του αριθμού. Αν εϊναι 1, πρόσθεσε την μονάδα (20 = 1) στο αποτέλεσμα. 2. Πάρε το προτελευταϊο ψηφϊο του αριθμού. Αν εϊναι 1, πρόσθεσε την δυάδα (21 = 2) στο αποτέλεσμα. 3. υνέχισε έτσι μέχρι και το πρώτο ψηφϊο του αριθμού. Ατξύ νέοχ ςιπ λύρειπ ςχμ ποξβλημάςχμ, απ ςιπ γοάφχ με απλά βήμαςα : Αλγόριθμος: 1. Διαϊρεσε τον αριθμό με το 2. Βρες το πηλϊκο και το υπόλοιπο της διαϊρεσης. 2. Πάρε το προηγούμενο πηλϊκο και διαϊρεσέ το με το 2. «Κόλλησε» το νέο υπόλοιπο μπροστά από το προηγούμενο. 3. υνέχισε έτσι μέχρι να βρεις πηλϊκο 0. 20 = 1 21 = 2 22 = 4 23 = 8 24 = 16 25 = 32 26 = 64 27 = 128 28 = 256 Σην πξόβιεκα 1 ρξεζηκνπνηώ ηηο δσνάμεις ηοσ 2. Γηα λα ζπκεζνύκε, νη δπλάκεηο ελόο αξηζκνύ είλαη πόζεο θνξέο ηνλ πνιιαπιαζηάδσ κε ηνλ εαπηό ηνπ. Τν δηπιαλό πηλαθάθη κνπ δείρλεη ηηο δπλάκεηο ηνπ 2, από ηελ κεδεληθή κέρξη ηελ όγδνε.
κάθε φορά, ανάλογα με την εϊσοδο ψηφϊο. Η δύναμη του 2 αποθηκεύεται στην μεταβλητή δύναμη. Πως γϊνεται ο υπολογισμός; Βλέπουμε πως πρώτα ορϊζουμε την δύναμη σε 1. Μετά την πολλαπλασιάζουμε με το 2, όσες φορές εϊναι το ψηφϊο, με ένα επανάλαβε! Άρα όταν το ψηφϊο εϊναι 0, δε κάνουμε καμιά επανάληψη και η δύναμη μένει 1 (20 = 1). Με μια επανάληψη, κάνουμε ένα πολλαπλασιασμό με το 2 και η δύναμη εϊναι 2 (21 = 2). Έτσι υπολογϊζουμε όποια δύναμη του 2 θέλουμε με ένα τουβλάκι μόνο!
βλέπουμε με ποια τουβλάκια βρϊσκουμε το ψηφϊο σε κάθε βήμα και πολλαπλασιάζουμε με την κατάλληλη δύναμη του 2. Εϊπαμε ότι πρέπει να πάρουμε τα ψηφϊα του δυαδικού αριθμού από το τελευταϊο προς το πρώτο, και σε αυτό θα μας βοηθήσει η μεταβλητή μετρητής. Πως ακριβώς; Εϊναι πολύ απλό. Ο μετρητής αυξάνεται από το 0 μέχρι το μήκος του αριθμού μας (τον αριθμό των ψηφϊων του). Άρα σε κάθε βήμα αν αφαιρώ τον μετρητή από το μήκος, θα έχω τον αριθμό που θέλω! Δϊπλα εϊναι ένα παράδειγμα με τον αριθμό 101100. μεηρηηής μήκος - μεηρηηής ψηθίο Δύναμη ηοσ 2 Γινόμενο 0 6-0 = 6 101100 20 = 1 0 x 1 = 0 1 6-1 = 5 101100 21 = 2 0 x 2 = 0 2 6-2 = 4 101100 22 = 4 1 x 4 = 4 3 6-3 = 3 101100 23 = 8 1 x 8 = 8 4 6-4 = 2 101100 24 = 16 0 x 16 = 0 5 6-5 = 1 101100 25 = 32 1 x 32 = 32 = 44 Σηελ κεηαβιεηή απάνηηζη απνζεθεύεηαη ν δπαδηθόο αξηζκόο καο θαη κε ηελ εληνιή μήκος μέξσ πόζα ςεθία έρεη (6 ζην δηθό καο παξάδεηγκα!)
δύναμη του 2, τώρα πρέπει να αλλάζω τον μετρητή επαναληπτικά και αυτά τα γινόμενα να τα προσθέτω στο αποτέλεσμα! Η τελική υλοποϊηση φαϊνεται παρακάτω: Παρατηρώ τα εξής: 1. Πρέπει να ορϊσω μετρητή και αποτέλεσμα σε 0. 2. Φρησιμοποιώ επανάλαβε ώσπου και τελειώνω την επανάληψη όταν ο μετρητής γϊνει ϊσος με το μήκος. 3. Προσθέτω το γινόμενο στο αποτέλεσμα σε κάθε επανάληψη. 4. Υυσικά, αλλάζω τον μετρητή κατά 1 κάθε φορά. 5. Ανακοινώνω το αποτέλεσμα με μια εντολή πες. Αλ ζαο κπεξδεύεη ε γξακκή όπνπ νξίδνπκε ην απνηέιεζκα ζε κηα πξόζζεζε πνπ έρεη κέζα ην απνηέιεζκα, θαληαζηείηε όηη ε κεηαβιεηή είλαη έλα ζπξηάξη. Σε θάζε πξόζζεζε ην αλνίγνπκε θαη βάδνπκε θάηη θαηλνύξγην κέζα.
τα πράγματα εϊναι παρόμοια και μάλλον λϊγο ευκολότερα! τον Αλγόριθμο 2 αν θυμάστε αντϊ να κάνουμε πολλαπλασιασμό, προσθέτουμε την δύναμη μόνο αν το ψηφϊο εϊναι 1. Φρησιμοποιούμε μια εντολή Εάν για αυτή την δουλειά! Όιε απηή ε ιεηηνπξγία (όπσο θάζε ιεηηνπξγία ζην Scratch – νλνκάδνπκε θάζε ηέηνην θνκκάηη Σενάριο) μεθηλάεη από έλα Σσμβάν. Εκείο δηαιέγνπκε πνην ζα είλαη απηό ην ζπκβάλ, αλάινγα πσο ζέινπκε λα μεθηλάεη ε εθαξκνγή καο. Μπνξεί λα γίλεηαη κε ηελ πράζινη ζημαία, κπνξεί λα παηάκε θάπνην αληηθείκελν, λα ζηέιλνπκε έλα κήλπκα θηι. Αλγόριθμος 2: 1. Πάρε το τελευταϊο ψηφϊο του αριθμού. Αν εϊναι 1, πρόσθεσε την μονάδα (20 = 1) στο αποτέλεσμα. 2. Πάρε το προτελευταϊο ψηφϊο του αριθμού. Αν εϊναι 1, πρόσθεσε την δυάδα (21 = 2) στο αποτέλεσμα. 3. υνέχισε έτσι μέχρι και το πρώτο ψηφϊο του αριθμού.
υλοποϊηση του αλγόριθμου του Προβλήματος 2! Παρακάτω βλέπουμε όλη την λειτουργϊα : το Πρόβλημα 2 αν θυμόμαστε, μετατρέπουμε έναν αριθμό από το δεκαδικό στο δυαδικό σύστημα, δηλαδή το αντϊστροφο από το Πρόβλημα 1! Εδώ πξέπεη λα πξνζέμνπκε ηα εμήο: 1. Χξεζηκνπνηνύκε ηελ εληνιή Ένωζε κε ην απνηέιεζκα δεύηεξν! Έηζη, θάζε θαηλνύξγην ππόινηπν κπαίλεη από κπξνζηά, όπσο ζέινπκε. 2. Σηνπο Τελεζηές βξίζθνπκε ρξήζηκεο καζεκαηηθέο ιεηηνπξγίεο όπσο ην αθέξαην ππόινηπν κηαο δηαίξεζεο θαη ηελ ζηξνγγπινπνίεζε πξνο ηα θάησ (πνπ ρξεηαδόκαζηε γηα λα πάξνπκε ην πειίθν ρσξίο δεθαδηθά ςεθία!). Αλγόριθμος: 1. Διαϊρεσε τον αριθμό με το 2. Βρες το πηλϊκο και το υπόλοιπο της διαϊρεσης. 2. Πάρε το προηγούμενο πηλϊκο και διαϊρεσέ το με το 2. «Κόλλησε» το νέο υπόλοιπο μπροστά από το προηγούμενο. 3. υνέχισε έτσι μέχρι να βρεις πηλϊκο 0.