2.0 Εισαγωγή
Το KTurtle είναι ένα εκπαιδευτικό περιβάλλον προγραμματισμού που χρησιμοποιεί την ?TurtleScript, μια γλώσσα προγραμματισμού βασισμένη και εμπνευσμένη από τη Logo. Ο στόχος του KTurtle είναι να κάνει τον προγραμματισμό όσο το δυνατόν πιο εύκολο και προσιτό. Αυτό κάνει το KTurtle κατάλληλο για να διδαχθούν τα παιδιά τα βασικά των μαθηματικών, της γεωμετρίας και του… προγραμματισμού. Βασικός λόγος για τη χρήση του ΚTurtle ως μέσο για τη διδασκαλία αλγορίθμων είναι το γεγονός ότι αποτελεί ελεύθερο λογισμικό, υπό τους όρους της άδειας χρήσης GNU General Public Licence. Το γεγονός αυτό μας παρέχει πολλά πλεονεκτήματα, όπως για παράδειγμα:
- Κάθε σχολείο μπορεί να το προμηθευτεί δωρεάν και να το εγκαταστήσει είτε σε λειτουργικό σύστημα MS Windows είτε σε Linux (edubuntu ή όποια άλλη διανομή).
- Κάθε μαθητής μπορεί να εγκαταστήσει το πρόγραμμα στον υπολογιστή του σπιτιού του και να εξασκηθεί όσο επιθυμεί. Άλλωστε το μάθημα στην Γ' Γυμνασίου είναι μόνο μια ώρα την εβδομάδα οπότε ένας μαθητής με κλίση στον προγραμματισμό έχει τη δυνατότητα να ασχοληθεί με τον προγραμματισμό πολύ περισσότερο απ' όσο μπορεί να του προσφέρει το σχολείο.
- Η φύση του ελεύθερου λογισμικού επιτρέπει την συμμετοχή όποιου έχει το μεράκι να ασχοληθεί με την ανάπτυξη και τη βελτίωση του προγράμματος, διορθώνοντας ή επεκτείνοντας τις δυνατότητές του. Παραδείγματος χάριν, η μετάφραση του KTurtle ώστε να υποστηρίζει ελληνικές εντολές έχει γίνει από εθελοντές Έλληνες εκπαιδευτικούς.
- Η προμήθεια και η εγκατάσταση του προγράμματος είναι ιδιαίτερα απλή.
- Γίνεται χρήση νόμιμου λογισμικού τηρώντας την άδεια χρήσης του, εξοικονομώντας πόρους (είτε δημόσιους στα σχολεία, είτε ιδιωτικούς στους υπολογιστές των μαθητών) και αποφεύγοντας τυχόν κινδύνους από ιούς που εμπεριέχονται σε “πειρατικό” λογισμικό.
Σκοπός αυτών των σημειώσεων είναι η παρουσίαση των εφαρμογών του Σχολικού βιβλίου της Γ' Γυμνασίου για τη γλώσσα Logo στο περιβάλλον του KTurtle, προκειμένου να χρησιμοποιηθούν από εκπαιδευτικούς και μαθητές που θα χρησιμοποιήσουν το KTurtle ως μέσο διδασκαλίας και εξάσκησης για το μάθημα της Πληροφορικής στην Γ' Γυμνασίου. Για αυτό το λόγο σε κάθε εδάφιο θα χρησιμοποιούνται οι ίδιοι τίτλοι και η αρίθμηση των αντίστοιχων παραγράφων του Σχολικού Βιβλίου Πληροφορικής Γυμνασίου (Αράπογλου, Μαβόγλου, Οικονομάκος, Φύτρος - Έκδοση Α).
| Slideshow ^ |< << Slide 1 of 15 >> >| |
2.0.1 Εγκατάσταση σε Ubuntu
Για να εγκατασταθεί το KTurtle στο Ubuntu (και τις παραλλαγές του Kubuntu, Xubuntu, Edubuntu κτλ) υπάρχουν οι παρακάτω τρόποι:
- δώστε στο τερματικό (κονσόλα) την εντολή: sudo apt-get install kturtle
από το παρακάτω url: κάντε κλικ εδώ για να εγκαταστήσετε το kturtle + τα language packs
από την προσθαφαίρεση προγραμμάτων επιλέγετε το kturtle στην ενότητα Εκπαίδευση
| Slideshow ^ |< << Slide 2 of 15 >> >| |
2.0.2 Εγκατάσταση σε Windows
Η εγκατάσταση γίνεται με τη βοήθεια του KDE-Installer μέσω δικτύου αν διαθέτετε μια γρήγορη σύνδεση στο Internet.
Kατεβάστε την τελευταία έκδοση του KDE-Installer και εκτελέστε το. Η τελευταία έκδοση όταν ενημερώθηκε αυτό το κείμενο ήταν η 0.9.8-1
Επιλέξτε εκτέλεση για να εγκαταστήσετε το KDE
Στην πρώτη οθόνη επιλέξτε Install from Internet1 και πατήστε Next
Στη συνέχεια επιλέξτε το φάκελο που επιθυμείτε να πραγματοποιηθεί η εγκατάσταση και πατήστε Next
Στη συνέχεια επιλέξτε Install Mode End User και Compiler Mode αυτήν που είναι ήδη επιλεγμένη και πατήστε Next
Στη συνέχεια επιλέξτε ένα φάκελο που θα αποθηκευτούν τα αρχεία που θα "κατέβουν" από το Internet και πατήστε Next. (Προτιμήστε τον προεπιλεγμένο)
Στη συνέχεια επιλέξτε αν υπάρχει απευθείας σύνδεση στο Internet (direct connection to Internet) ή proxy server και πατήστε Next (απλά πατήστε Next αν δεν ξέρετε τι σημαίνει αυτό)
Στη συνέχεια επιλέξτε κάποιον διακομιστή (server) στην κεντρική Ευρώπη και πατήστε Next
Στη συνέχεια επιλέξτε την έκδοση του KDE που θέλετε να εγκαταστήσετε (προτιμήστε την προεπιλεγμένη τιμή - stable latest - τη στιγμή που γραφόταν αυτό ήταν η 4.7.0) και πατήστε Next
- Στη συνέχεια
Στο επόμενο παράθυρο εμφανίζεται η λίστα με τα πακέτα λογισμικού που θα εγκατασταθούν. Πατήστε Next
Edit conflict - other version:
Αφού περάσει λίγη ώρα (εξαρτάται από την ταχύτητα της σύνδεσής σας) θα εγκατασταθεί το KDE. Μπορείτε πλέον να εκτελέσετε το KTurtle από το μενού Έναρξη=>Προγράμματα=>KDE 4.7.0 Release=>Education=>Miscellaneous=>KTurtle ή το αντίστοιχο στα Ελληνικά.
Αλλάξτε τη γλώσσα της εφαρμογής (από την αγγλική στην ελληνική) επιλέγοντας το μενού Help=>Switch Application Language. Στο παράθυρο που εμφανίζεται επιλέξτε Greek (αντί για American English) και πατήστε OK. Στο επόμενο μήνυμα πατήστε ξανά ΟΚ και στη συνέχεια κλείστε και ξαναξεκινήστε το kTurtle.
Edit conflict - your version:
Αφού περάσει λίγη ώρα (εξαρτάται από την ταχύτητα της σύνδεσής σας) θα εγκατασταθεί το KDE. Μπορείτε πλέον να εκτελέσετε το KTurtle από το μενού Έναρξη=>Προγράμματα=>KDE 4.7.0 Release=>Education=>Miscellaneous=>KTurtle ή το αντίστοιχο στα Ελληνικά.
Αλλάξτε τη γλώσσα της εφαρμογής (από την αγγλική στην ελληνική) επιλέγοντας το μενού Help=>Switch Application Language. Στο παράθυρο που εμφανίζεται επιλέξτε Greek (αντί για American English) και πατήστε OK. Στο επόμενο μήνυμα πατήστε ξανά ΟΚ και στη συνέχεια κλείστε και ξαναξεκινήστε το kTurtle.
End of edit conflict
Μην ξεχάσετε κατά την έναρξη του KTurtle να επιλέξετε από το μενού Ρυθμίσεις=>Γλώσσα Σεναρίου τα Ελληνικά, ώστε οι εντολές να δίνονται στην Ελληνική γλώσσα.
| Slideshow ^ |< << Slide 3 of 15 >> >| |
2.1 Το περιβάλλον προγραμματισμού KTurtle
Όταν ανοίγουμε το KTurtle βλέπουμε πως το πρόγραμμα χωρίζεται σε τρεις περιοχές: Περιοχή Εντολών, Περιοχή Καρτελών και Καμβάς.
Στην περιοχή εντολών μπορούμε να πληκτρολογούμε τις εντολές, και για να εκτελεστούν πατάμε το κουμπί της εκτέλεσης (ή το πλήκτρο F5 του πληκτρολογίου) . Οι εντολές που δίνουμε και είτε κινούν τη χελώνα είτε τυπώνουν κείμενα εμφανίζονται στον καμβά. Προκειμένου να μην εμφανίζεται η χελώνα για να μην μας εμποδίζει το οπτικό πεδίο στον καμβά μπορούμε να χρησιμοποιήσουμε την εντολή κρύψεχελώνα ή σε συντομογραφία κχ. Αντίστοιχα αν η χελώνα είναι κρυμμένη, για να την εμφανίσουμε χρησιμοποιούμε την εντολή δείξεχελώνα ή σε συντομογραφία δχ. Μην ξεχνάτε πως για να εκτελεστούν οι εντολές που δίνουμε στην περιοχή εντολών πρέπει να πατήσουμε το κουμπί της εκτέλεσης (ή το πλήκτρο F5). Πατώντας εκτέλεση οι εντολές μεταφράζονται από το διερμηνέα σε γλώσσα μηχανής, ώστε να μπορούν να εκτελεστούν από τον υπολογιστή, και στη συνέχεια εκτελούνται.
| Slideshow ^ |< << Slide 6 of 15 >> >| |
2.2 Οι πρώτες εντολές
Εντολή εμφάνισης (εξόδου) και αριθμητικές πράξεις
Χρησιμοποιούμε την εντολή τύπωσε προκειμένου να εμφανίσουμε δεδομένα στην οθόνη του υπολογιστή. Οι πράξεις που υποστηρίζει το KTurtle γίνονται με τη χρήση των παρακάτω συμβόλων:
Οι πράξεις στο ΚΤurtle |
|
Σύμβολο |
Πράξη |
+ |
Πρόσθεση |
- |
Αφαίρεση |
* |
Πολλαπλασιασμός |
/ |
Διαίρεση |
^ |
Ύψωση σε δύναμη |
Για παράδειγμα αν θέλουμε να εμφανίσουμε το αποτέλεσμα της πράξης 200 : 25 τότε θα χρησιμοποιήσουμε την εντολή τύπωσε 200 / 25 Η παραπάνω εντολή θα εκτυπώσει στον καμβά τον αριθμό 8 που είναι το αποτέλεσμα της πράξης 200/25.
Εισαγωγική Δραστηριότητα:
Δοκιμάστε τις παρακάτω εντολές και συμπληρώστε τα αποτελέσματα στον παρακάτω πίνακα:
Εντολή |
Αποτέλεσμα |
τύπωσε 5 + 12 |
|
τύπωσε 28 - 17 |
|
τύπωσε 12 * 13 |
|
τύπωσε 112 / 4 |
|
τύπωσε 2 ^ 3 |
|
τύπωσε 12 / 2 * 3 |
|
τύπωσε (12 / 2) * 3 |
|
τύπωσε 12 / (2 * 3) |
|
Η εμφάνιση Μηνυμάτων
Είδαμε την εντολή τύπωσε και το πως αυτή χρησιμοποιείται προκειμένου να μας δείξει το αποτέλεσμα μιας πράξης. Χρησιμοποιώντας την όμως μπορούμε να εμφανίσουμε και οποιοδήποτε κείμενο θέλουμε. Για παράδειγμα αν θέλουμε να εμφανίσουμε το όνομά μας χρησιμοποιούμε την εντολή τύπωσε “Αριστείδης” που θα τυπώσει στον καμβά τη λέξη Αριστείδης.
Οτιδήποτε περικλείουμε μέσα σε εισαγωγικά στην εντολή τύπωσε εμφανίζεται ακριβώς όπως το γράφουμε. Για παράδειγμα αν δώσουμε την εντολή τύπωσε “Το όνομά μου είναι Πελαγία” το κείμενο Το όνομά μου είναι Πελαγία θα εμφανιστεί στον καμβά.
Αν για παράδειγμα δώσουμε την εντολή τύπωσε “200/25” στον καμβά θα εμφανιστεί το κείμενο 200/25, επειδή αυτό που λέμε στον υπολογιστή είναι το να τυπώσει αυτό που περικλείουμε μέσα στα εισαγωγικά. (στην προηγούμενη περίπτωση χωρίς τα εισαγωγικά είπαμε στον υπολογιστή να κάνει την πράξη και να τυπώσει το αποτέλεσμα).
Τι γίνεται όμως όταν θέλουμε να εμφανίζουμε κείμενο μαζί με αποτελέσματα αριθμητικών πράξεων; Πολύ απλά χρησιμοποιώντας το σύμβολο + ενώνουμε το κείμενο που θέλουμε να εκτυπώσουμε με την πράξη της οποίας το αποτέλεσμα θέλουμε να εμφανιστεί στην οθόνη και αντιστρόφως. Για παράδειγμα η εντολή τύπωσε “Το κόστος της εκδρομής ανά μαθητή είναι ”+ 200/25 + “ ευρώ” θα τυπώσει στον καμβά το εξής μήνυμα: Το κόστος της εκδρομής ανά μαθητή είναι 8 ευρώ.
Προσέξτε το σύμβολο + . Όταν χρησιμοποιείται ανάμεσα σε αριθμούς δηλώνει το άθροισμα δύο αριθμών, ενώ όταν χρησιμοποιείται ανάμεσα σε συμβολοσειρές δηλώνει την ένωση των συμβολοσειρών.
| Slideshow ^ |< << Slide 7 of 15 >> >| |
2.3 Συνομιλία με τον υπολογιστή
Η εντολή μήνυμα
Εκτός από την εκτύπωση μηνυμάτων (ανακοινώσεων) στον καμβά του KTurtle, έχουμε τη δυνατότητα να εμφανίσουμε μηνύματα σε ένα νέο παράθυρο, με τη βοήθεια της εντολής μήνυμα. Για παράδειγμα η εντολή μήνυμα “Γειά σου!” θα εμφανίσει σε ένα νέο παράθυρο το μήνυμα Γειά σου. Όπως είναι φυσικό μπορούμε να εμφανίσουμε σε μηνύματα και αποτελέσματα πράξεων ή περιεχόμενα μεταβλητών χρησιμοποιώντας το σύμβολο +.
Η εντολή ερώτηση
Αντίστοιχα μπορούμε να ζητήσουμε δεδομένα από το χρήστη, χρησιμοποιώντας την εντολή ερώτηση. Η διαφορά με το Microworlds Pro είναι πως όταν υποβάλλουμε μια ερώτηση θα πρέπει να ορίσουμε μία μεταβλητή στην οποία θα αποθηκευτεί η απάντηση της ερώτησης με την παρακάτω μορφή: $είσοδος = ερώτηση "Πώς σε λένε;"
Στο παραπάνω παράδειγμα εμφανίζεται ένα παράθυρο με το μήνυμα Πώς σε λένε; και ένα πεδίο στο οποίο μας ζητάει να πληκτρολογήσουμε το όνομά μας. Πατώντας το κουμπί Εντάξει αυτό που πληκτρολογήσαμε αποθηκεύεται στην μεταβλητή $είσοδος.
Έτσι στην συνέχεια μπορούμε να δώσουμε ένα νέο μήνυμα με τον παρακάτω τρόπο: μήνυμα "Χάρηκα πολύ " + $είσοδος + "! Εμένα με λένε Σοφοκλή", όπου η μεταβλητή $είσοδος περιέχει τα δεδομένα που εισάγαμε στην προηγούμενη ερώτηση.
Προσέξτε το σύμβολο $. Όταν έχουμε μια λέξη που ξεκινά με το σύμβολο $ τότε αυτή η λέξη είναι ?μεταβλητή, δηλαδή μέσα της έχει μία τιμή (όπως στα μαθηματικά λέμε x=5 το οποίο σημαίνει πως το x έχει την τιμή 5, έτσι και στο KTurtle αν πούμε $x=5 σημαίνει πως το $x έχει την τιμή 5). Στο προηγούμενο παράδειγμα με την ερώτηση, αυτό που συμβαίνει είναι να αποθηκεύονται τα δεδομένα που εισάγει ο χρήστης στην μεταβλητή $είσοδος. Περισσότερα για τις μεταβλητές θα πούμε σε επόμενο κεφάλαιο.
Δραστηριότητες
Ας πειραματιστούμε λίγο με τους αριθμούς
1. Τι ακριβώς κάνουν οι δύο παρακάτω εντολές:
$αριθμός = ερώτηση “Δώσε έναν αριθμό που θέλεις να υψώσεις στο τετράγωνο” μήνυμα $αριθμός ^ 2
2. Ποιό είναι το αποτέλεσμα της εκτέλεσης των παραπάνω εντολών αν δώσουμε την τιμή 456. Δοκιμάστε το στον υπολογιστή και στη συνέχεια ξαναπατώντας το κουμπί εκτέλεση επαναλάβετε τη διαδικασία δίνοντας νέες τιμές.
3. Πώς μπορούν να τροποποιηθούν οι παραπάνω εντολές, ώστε να υπολογίζουμε τον κύβο ενός αριθμού;
Επιπλέον Δραστηριότητες
4. Δημιουργήστε ένα πρόγραμμα που θα ρωτάει το όνομα του χρήστη και μετά θα το τυπώνει.
5. Δημιουργήστε ένα πρόγραμμα που θα ζητάει από το χρήστη 2 αριθμούς και στη συνέχεια θα τυπώνει το άθροισμά τους.
6. Δημιουργήστε ένα πρόγραμμα που θα ρωτάει το χρήστη ποια χρονιά γεννήθηκε. Στη συνέχεια θα τυπώνει την ηλικία του χρήστη.
7. Δημιουργήστε ένα πρόγραμμα που θα ζητάει από τον χρήστη την τιμή της έντασης του ηλεκτρικού ρεύματος και της αντίστασης και θα τυπώνει την ηλεκτρική ισχύ.
8. Δημιουργήστε ένα πρόγραμμα που θα ρωτάει το χρήστη τις τιμές δύο αντιστάσεων που είναι παράλληλα συνδεδεμένες (R1, R2) και θα τυπώνει την συνολική αντίσταση.
9. Δημιουργήστε ένα πρόγραμμα που θα ρωτάει το χρήστη για το μήκος των δύο κάθετων τιμών ενός ορθογωνίου τριγώνου και θα υπολογίζει το μήκος της υποτείνουσας.
| Slideshow ^ |< << Slide 8 of 15 >> >| |
2.4 Η Logo και ο σχεδιασμός γεωμετρικών σχημάτων
Contents
Κάνοντας τις πρώτες δοκιμές με τη χελώνα
Η χελώνα που εμφανίζεται στον καμβά είναι το βασικό εργαλείο της γλώσσας Logo αλλά και της Turtlescript που χρησιμοποιεί το KTurtle. Με τη χελώνα μπορούμε να δημιουργήσουμε διάφορα γεωμετρικά σχήματα μετακινώντας την με τις παρακάτω εντολές (στην παρένθεση βρίσκονται οι συντομογραφίες τους):
μπροστά (μπ) αριθμός εικονοστοιχείων: Με την εκτέλεση αυτής της εντολής η χελώνα προχωράει μπροστά όσα εικονοστοιχεία έχουμε ορίσει, πχ μπροστά 200
πίσω (πι) αριθμός εικονοστοιχείων: Με την εκτέλεση αυτής της εντολής η χελώνα προχωράει προς τα πίσα τόσα εικονοστοιχεία όσα έχουμε ορίσει, πχ πίσω 200
στρίψεδεξιά (σδ) μοίρες: Η χελώνα στρίβει προς τα δεξιά τόσες μοίρες όσες έχουμε ορίσει, πχ σδ 90 στρίβει τη χελώνα δεξιά κατά 90 μοίρες
στρίψεαριστερά (σα) μοίρες: Η χελώνα στρίβει προς τα αριστερά τόσες μοίρες όσες έχουμε ορίσει, πχ σα 90 στρίβει τη χελώνα αριστερά κατά 90 μοίρες
στυλόκάτω (σκ): Δίνει εντολή στη χελώνα να αφήνει ίχνος από κάθε σημείο της οθόνης που περνάει. Αν δεν έχουμε δώσει αυτή την εντολή, η χελώνα μετακινείται με τις κατάλληλες εντολές στην οθόνη χωρίς να σχεδιάζει.
στυλόπάνω (σπ): Δίνει εντολή στη χελώνα να σταματήσει να αφήνει ίχνος καθώς προχωράει.
καθάρισε (καθ): Σβήνει όλα τα σχέδια που έχουμε δημιουργήσει στον καμβά αφήνοντας τη χελώνα στη θέση και την κατεύθυνση που είχε.
αρχικοποίησε : Σβήνει όλα τα σχέδια από τον καμβά και επαναφέρει τη χελώνα στο κέντρο του καμβά με κατεύθυνση προς τα πάνω.
Στον παρακάτω πίνακα φαίνεται μια αντιστοιχία των εντολών του Microworlds Pro με το Kturtle.
Αντιστοιχία εντολών μετακίνησης χελώνας |
|
Microworlds Pro |
KTurtle |
μπροστά (μπ) αριθμός εικονοστοιχείων |
μπροστά (μπ) αριθμός εικονοστοιχείων |
πίσω (πι) αριθμός εικονοστοιχείων |
πίσω (πι) αριθμός εικονοστοιχείων |
δεξιά (δε) μοίρες |
στρίψεδεξιά (σδ) μοίρες |
αριστερά (αρ) μοίρες |
στρίψεαριστερά (σα) μοίρες |
Στυλό κάτω (στκ) |
στυλόκάτω (σκ) |
Στυλό άνω (στα) |
στυλόπάνω (σπ) |
Σβήσεγραφικά (σβγ) |
αρχικοποίησε |
Ας δούμε τώρα τον αλγόριθμο του τετραγώνου που παρουσιάστηκε στο Σχολικό Βιβλίο στο κεφάλαιο των αλγορίθμων. Ο αλγόριθμος αυτός περιέγραφε τα βήματα που πρέπει να ακολουθήσει ένα μικρό παιδί, ώστε να φτιάξει ένα τετράγωνο στην άμμο. Μπορούμε λοιπόν, συνδιάζοντας τις προηγούμενες εντολές, να δώσουμε εντολές στη χελώνα να σχεδιάσει ένα τετράγωνο με πλευρά 100 εικονοστοιχεία:
αρχικοποίησε μπ 100 σδ 90 μπ 100 σδ 90 μπ 100 σδ 90 μπ 100 σδ 90
Το αποτέλεσμα φαίνεται στην παρακάτω εικόνα:
Δομή Επανάληψης
Παρατηρώντας το προηγούμενο παράδειγμα, διαπιστώνουμε πως οι εντολές μπ 100 και δε 90 επαναλαμβάνονται τέσσερις φορές με την ίδια σειρά. Αυτό θα μπορούσαμε να το επιτύχουμε ομαδοποιώντας τις δύο εντολές και χρησιμοποιώντας μία εντολή που να τις επαναλαμβάνει τέσσερις φορές. Αυτό γίνεται με την εντολή επανάλαβε αριθμός_επαναλήψεων { λίστα εντολών } που επαναλαμβάνει όσες φορές ορίζεται από τον αριθμό_επαναλήψεων τη λίστα εντολών που περικλείεται στις αγκύλες. Το προηγούμενο παράδειγμα σχεδιασμού ενός τετραγώνου θα μπορούσε να δωθεί ισοδύναμα ως:
επανάλαβε 4 {
μπ 100
σδ 90
}όπου θα σχεδίαζε ακριβώς το ίδιο τετράγωνο.
Δραστηριότητες
1. Να δώσετε την κατάλληλη εντολή ώστε να εμφανιστεί το όνομά σας 200 φορές
2. Στην εντολή που χρησιμοποιήσαμε για να σχεδιάσουμε ένα τετράγωνο:
επανάλαβε 4
{
μπ 100
σδ 90
}συνολικά στο σχήμα μας κάναμε μια στροφή 90 * 4 = 360 μοίρες. Να δώσετε τις κατάλληλες εντολές στη χελώνα, ώστε να σχεδιάσει ένα ισόπλευρο τρίγωνο, ένα πεντάγωνο, ένα εξάγωνο ή ένα δωδεκάγωνο όπως στο παρακάτω σχήμα
3. Με τι μοιάζει το σχήμα που δημιουργεί η παρακάτω εντολή:
επανάλαβε 360
{
μπ 1
σδ 1
}
Επιπλέον Δραστηριότητες
4. Τι κάνει το παρακάτω πρόγραμμα; Αλλάξτε το πρόγραμμα ώστε να τυπώνει πρώτα τους μικρότερους και μετά τους μεγαλύτερους
αρχικοποίησε
στυλόπάνω
στρίψεαριστερά 90
μπροστά 100
στρίψεδεξιά 90
τύπωσε "Καλυθιές"
$α=80
επανάλαβε 8
{
μπροστά 20
τύπωσε $α
$α=$α-10
}5. Στο παρακάτω πρόγραμμα βάλτε στην θέση με τις τελείες τις εντολές που επαναλαμβάνονται ώστε να εμφανιστούν οι διακεκομμένες γραμμές όπως στην εικόνα.
αρχικοποίησε
σδ 90
πήγαινε 0,200
επανάλαβε 20 {
...
}
6. Γράψτε ένα πρόγραμμα που δημιουργεί τα παρακάτω σχήματα:
7. Γράψτε τα προγράμματα που δημιουργούν τα παρακάτω σχήματα:
8. Φτιάξτε ένα πρόγραμμα σε γλώσσα logo (kturtle) που θα κατασκευάζει το παρακάτω σχήμα
Αλλάξτε το παραπάνω πρόγραμμα ώστε να φαίνεται και ένας αριθμός κάτω από κάθε τετράγωνο
9. Φτιάξτε ένα πρόγραμμα που να ρωτάει το χρήστη την ηλικία του και μετά να την τυπώνει 20 φορές.
10. Φτιάξτε ένα πρόγραμμα που να ρωτάει το χρήστη “Τι μήκος γραμμής θέλετε;” και μετά να φτιάχνει μια γραμμή αυτού του μεγέθους.
11. Φτιάξτε ένα πρόγραμμα που θα ρωτάει το χρήστη πόσες φορές να τυπώσει το όνομά του. Στη συνέχεια θα το τυπώνει όσες φορές απάντησε.
12. Φτιάξτε ένα πρόγραμμα που θα ζητάει από το χρήστη δύο αριθμούς. Στη συνέχεια θα κατασκευάζει ορθογώνιο με πλευρές τα μήκη που απάντησε ο χρήστης.
| Slideshow ^ |< << Slide 9 of 15 >> >| |
2.5 Δημιουργώντας νέες λέξεις - Διαδικασίες
Contents
Διαδικασίες
Όταν επιθυμούμε να εκτελέσουμε εντολές με μία συγκεκριμένη σειρά πολλές φορές, μπορούμε να τις ομαδοποιήσουμε. Η ομαδοποίηση αυτή των εντολών ονομάζεται Διαδικασία. Η εκτέλεση μιας διαδικασίας μπορεί να χρησιμεύσει στον υπολογισμό ενός μαθηματικού τύπου (συνάρτηση), στη δημιουργία ενός σχήματος ή στην εμφάνιση μιας συνομιλίας. Το πλεονέκτημα της διαδικασίας είναι ότι μπορούμε να την καλέσουμε με το όνομά της όποτε τη χρειαστούμε, χωρίς να είναι απαραίτητο να πληκτρολογήσουμε ξανά όλες τις εντολές που περιέχει.
Για να δημιουργήσουμε μία διαδικασία χρησιμοποιούμε την εντολή μάθε με τον παρακάτω τρόπο:
μάθε διαδικασία {
εντολή 1
εντολή 2
...
}Η εντολή μάθε λέει στο KTurtle να απομνημονεύσει τις εντολές που συμπεριλαμβάνει με το νέο όνομα διαδικασία. Όταν στη συνέχεια δώσουμε τη νέα εντολή διαδικασία τότε θα εκτελεστούν οι εντολές που ορίσαμε παραπάνω (εντολή 1, εντολή 2 κτλ). Για παράδειγμα για να ορίσουμε μια διαδικασία τετράγωνο, που όταν την καλούμε θα σχηματίζει ένα τετράγωνο, θα πρέπει να δώσουμε τις εξής εντολές:
μάθε τετράγωνο {
επανάλαβε 4 {
μπ 100
σδ 90
}
}Από εδώ και πέρα, κάθε φορά που θα δίνουμε την εντολή τετράγωνο θα εκτελείται η αντίστοιχη διαδικασία όπως στην παρακάτω εικόνα
Δραστηριότητες
1. Δημιουργήστε δύο διαδικασίες: μία με το όνομα τετράγωνο, που θα σχεδιάζει ένα τετράγωνο και μια δεύτερη με το όνομα τρίγωνο, που θα σχεδιάζει ένα τρίγωνο. Χρησιμοποιώντας τις νέες λέξεις-εντολές τετράγωνο και τρίγωνο που μόλις δημιουργήσατε, προσπαθήστε να δημιουργήσετε μια διαδικασία με το όνομα σπίτι, που θα σχεδιάζει ένα σπίτι, όπως στο διπλανό σχήμα. |
|
2. Προσπαθήστε να περιγράψετε την πορεία της χελώνας ακολουθώντας την εντολή: επανάλαβε 10 { τετράγωνο σδ 36 } όπου τετράγωνο είναι το όνομα της διαδικασίας που δημιουργήσαμε στο προηγούμενο παράδειγμα. Το αποτέλεσμα της εντολής φαίνεται στην διπλανή εικόνα. Αφού έχετε κατανοήσει τη σημασία των αριθμών 10 και 36 στην εντολή, προσπαθήστε να τους αλλάξετε δημιουργώντας δικά σας σχήματα. |
|
| Slideshow ^ |< << Slide 10 of 15 >> >| |
2.6 Μεταβλητές
Contents
Διαδικασίες με παραμέτρους μεταβλητές (ΣΒ 2.6, σελ 192)
Στην προηγούμενη παράγραφο είδαμε τη διαδικασία τετράγωνο που δημιουργούσε ένα τετράγωνο μήκους 100 εικονοστοιχείων. Αν όμως θέλουμε να δημιουργήσουμε ένα νέο τετράγωνο με διαφορετικό μήκος πλευράς θα πρέπει να είτε να δημιουργήσουμε μια νέα διαδικασία που να σχεδιάζει τετράγωνο με το επιθυμητό μήκος πλευράς ή να τροποποιήσουμε την διαδικασία τετράγωνο.
Άραγε υπάρχει κάποιος τρόπος ώστε καλώντας τη διαδικασία τετράγωνο να της δώσουμε το μήκος που θέλουμε να έχει η κάθε πλευρά του;
Αυτό γίνεται τροποποιώντας τη διαδικασία τετράγωνο ως εξής:
μάθε νέο_τετράγωνο $μήκος {
επανάλαβε 4 {
μπ $μήκος
σδ 90
}
}Αφού έχουμε γράψει την παραπάνω διαδικασία μπορούμε να σχεδιάσουμε ένα τετράγωνο με όποιο μήκος θέλουμε. Για παράδειγμα αν θέλουμε να δημιουργήσουμε ένα τετράγωνο με μήκος 200 εικονοστοιχεία θα δώσουμε την εντολή:
νέο_τετράγωνο 200
Αυτό λοιπόν που χρειάζεται είναι μαζί με το όνομα της διαδικασίας να δώσουμε το επιθυμητό μήκος πλευράς του τετραγώνου. Η τιμή 200 αποθηκεύεται προσωρινά στο $μήκος και η εντολή μπ $μήκος μετακινεί τη χελώνα κατά 200 εικονοστοιχεία. Κάθε φορά που καλούμε τη διαδικασία νέο_τετράγωνο στο $μήκος αποθηκεύεται προσωρινά μια διαφορετική τιμή, όπως στο επόμενο παράδειγμα. Το $μήκος ονομάζεται μεταβλητή.
μάθε νέο_τετράγωνο $μήκος {
επανάλαβε 4 {
μπ $μήκος
σδ 90
}
}
αρχικοποίησε
πήγαινε 30,200
νέο_τετράγωνο 50
πήγαινε 100, 200
νέο_τετράγωνο 100
πήγαινε 220, 200
νέο_τετράγωνο 150Σημειώνουμε πως η εντολή πήγαινε x,y μετακινεί τη χελώνα στο σημείο x,y του καμβά.
Το αποτέλεσμα του παραπάνω παραδείγματος φαίνεται στην επόμενη εικόνα:
Χρήση μεταβλητών σε ένα πρόγραμμα (ΣΒ 2.6, σελ 193)
Το περιεχόμενο μιας μεταβλητής μπορεί να μεταβάλλεται κατά την εκτέλεση του προγράμματος. Μία μεταβλητή αντιστοιχεί σε μια θέση μνήμης του υπολογιστή και γίνεται αναφορά σε αυτήν με το όνομα που της δίνουμε εμείς, αρκεί το όνομά της να ξεκινάει με το σύμβολο $. Μία θέση μνήμης μπορεί να έχει μόνο μία τιμή κάθε φορά, αλλά μπορούμε να την αλλάζουμε, όποτε είναι απαραίτητο, με μία νέα τιμή.
Για να δώσουμε (εκχωρήσουμε) τιμή σε μία μεταβλητή, χρησιμοποιούμε τον παρακάτω τρόπο :
$όνομα_μεταβλητής = τιμή_μεταβλητής
Αν για παράδειγμα θέλουμε να δώσουμε στη μεταβλητή με όνομα $χ την τιμή 2 θα δώσουμε την εντολή:
$χ = 2
Ενώ αν θέλουμε να δώσουμε την τιμή Γάτα θα πούμε
$χ = "Γάτα"
Προσέξτε πως για να δώσουμε σε μία μεταβλητή τιμή που είναι κείμενο, πρέπει το κείμενο να βρίσκεται μέσα σε εισαγωγικά.
Στον παρακάτω πίνακα φαίνεται η αντιστοιχία μεταξύ ?MicroworldsPro και KTurtle στην ανάθεση τιμών σε μεταβλητές.
Αντιστοιχία ανάθεσης τιμής σε μεταβλητή |
|
Microworlds Pro |
KTurtle |
Κάνε "Χ 2 |
$Χ = 2 |
Κάνε "Χ "Γάτα |
$Χ = "Γάτα" |
Τέλος, για να εμφανιστεί η τιμή της μεταβλητής χ στον καμβά χρησιμοποιούμε την εντολή τύπωσε :
τύπωσε $χ
ή για να εμφανιστεί σε ένα μήνυμα :
μήνυμα "Η τιμή της μεταβλητής $χ είναι" + $χ
Θυμόμαστε επίσης πως όταν θέλουμε να υποβάλλουμε μία ερώτηση προς τον χρήστη, η απάντηση του χρήστη αποθηκεύεται στην μεταβλητή που έχουμε ορίσει για την ερώτηση.
Στις καρτέλα Μεταβλητές του KTurtle ανά πάσα στιγμή φαίνεται κάθε μεταβλητή που χρησιμοποιούμε στο πρόγραμμά μας με την τιμή και τον τύπο της.
Δραστηριότητες
1.
α. Δώστε το όνομά σας σε μια μεταβλητή $όνομα και στη συνέχεια τυπώστε το περιεχόμενο της μεταβλητής στον καμβά |
β. Προσπαθήστε να εμφανίσετε στον καμβά το όνομά σας, χωρίς να το ξαναγράψετε με το συνοδευτικό μήνυμα "Το όνομά μου είναι..." |
2. Γράψτε τι θα εμφανιστεί στον καμβά μετά την εκτέλεση των παρακάτω εντολών εξόδου α.
$ζώο="λιοντάρι" τύπωσε $ζώο τύπωσε "λιοντάρι" $ζώο="σκύλος" τύπωσε "έχω ένα " + $ζώο
β.
$χ=3 τύπωσε 5 * $χ τύπωσε 2 * 5 - $χ * 4 $χ=8 τύπωσε 14 - 2 - $χ / 2
| Slideshow ^ |< << Slide 11 of 15 >> >| |
2.7 Επιλέγοντας...
Η εντολή "αν ... αλλιώς"
Πολλές φορές η λύση ενός προβλήματος δεν είναι μια σταθερή σειρά βημάτων που πρέπει να εκτελεστούν το ένα μετά το άλλο. Υπάρχουν προβλήματα που για να λυθούν, χρειάζεται να επιλέξουμε ποιά βήματα θα εκτελεστούν.
Ας δούμε σαν παράδειγμα τον υπολογισμό της απόλυτης τιμής ενός αριθμού χ. Όπως γνωρίζουμε η απόλυτη τιμή ενός αριθμού χ ισούται με:
χ, αν χ>0
- 0, αν χ=0
-χ, αν χ<0.
Επομένος ο αλγόριθμος για την εύρεση της απόλυτης τιμής ενός αριθμού μπορεί να διαμορφωθεί ως εξής:
- Μάθε το χ
- Αν το χ είναι μικρότερο του μηδενός υπολόγισε την τιμή του -χ και εμφάνισέ την
- Διαφορετικά (αλλιώς) εμφάνισε το χ.
Η εντολή που χρησιμοποιούμε για να δηλώσουμε την πραγματοποίηση κάποιων βημάτων αν ικανοποιείται μία συνθήκη είναι η αν ... αλλιώς και συντάσσεται ως εξής:
αν συνθήκη {
εντολή 1
εντολή 2
...
}
αλλιώς {
εντολή 3
εντολή 4
...
}Αυτό που συμβαίνει με την εντολή αν είναι να ελέγξουμε την συνθήκη και αν ισχύει θα εκτελεστούν οι εντολές στο σκέλος της αν, ενώ σε περίπτωση που η συνθήκη δεν ισχύει θα εκτελεστούν οι εντολές στο σκέλος της αλλιώς.
Με τη χρήση της εντολής αν ... αλλιώς το παραπάνω παράδειγμα θα γίνει:
$χ = ερώτηση "Δώσε έναν αριθμό"
αν $χ < 0 {
τύπωσε 0 - $χ
}
αλλιώς {
τύπωσε $χ
}
κχΗ ακολουθία των εντολών στο παράδειγμά μας είναι η εξής: Καταρχήν διαβάζουμε έναν αριθμό. Στη συνέχεια αν ο αριθμός αυτός είναι μικρότερος του 0 εκτελείται η εντολή τύπωσε 0 - $χ, ενώ σε οποιαδήποτε άλλη περίπτωση εκτελείται η εντολή τύπωσε $χ.
Φυσικό είναι τώρα, να ενσωματώσουμε την εκτύπωση της απόλυτης τιμής σε μία διαδικασία:
μάθε απόλυτη_τιμή $χ {
αν $χ < 0 {
τύπωσε 0 - $χ
}
αλλιώς {
τύπωσε $χ
}
κχ
}
$ψ = ερώτηση "Δώσε έναν αριθμό"
απόλυτη_τιμή $ψ
Δραστηριότητες
1. Δημιουργήστε μία διαδικασία που να υπολογίζει την τιμή του χ στη συνάρτηση α*χ + β = 0
Επιπλέον Δραστηριότητες
2. Να δημιουργήσετε ένα πρόγραμμα που θα διαβάζει τους συντελεστές α,β,γ μιας δευτεροβάθμιας εξίσωσης της μορφής αx2+βx+γ=0 και θα υπολογίζει τις λύσεις της εξίσωσης αν υπάρχουν.
| Slideshow ^ |< << Slide 12 of 15 >> >| |
2.8 Δημιουργώντας πιο σύνθετες εφαρμογές με τη γλώσσα Logo
Ασκήσεις αυτοαξιολόγησης
Αν έχετε ήδη εγκαταστήσει σε έναν υπολογιστή το KDE τότε μπορείτε να επιλέξετε Install From Local Directory παίρνοντας τα αρχεία που κατέβηκαν από το φάκελο που ορίσατε στο βήμα 6 και να αποφεύγοντας την επανάληψη του κατεβάσματος των αρχείων (1)




