Title: Scratch "Η δομή επανάληψης"

Παρουσίαση

Text χωρίς τίτλο

Εισαγωγή

Το Scratch έχει αναπτυχθεί από μια μικρή ομάδα ερευνητών στο MIT Media Lab. Είναι, στην ουσία, ένα προγραμματιστικό περιβάλλον με το οποίο μπορούμε να φτιάχνουμε τις δικές μας διαδραστικές ιστορίες, τα δικά μας παιχνίδια εύκολα και γρήγορα, ενώ παράλληλα ερχόμαστε σε επαφή με τις βασικές αρχές του προγραμματισμού.

Όταν φτιάχνετε ένα πρόγραμμα σε Scratch, να σκέφτεστε ότι δημιουργείτε ένα διαδραστικό θεατρικό έργο στο οποίο οι ηθοποιοί (θα τους λέμε αντικείμενα) συμπεριφέρονται με βάση κάποιο σενάριο που έχετε εσείς δημιουργήσει και ταυτόχρονα αλληλεπιδρούν μεταξύ τους αλλά και με τους θεατές.

Για να ξεκινήσετε είναι απαραίτητο να έχετε ενεργό λογαριασμό στο http://scratch.mit.edu. Για να αποκτήσετε έναν κάντε τα παρακάτω βήματα:

1. Μπείτε στην διεύθυνση http://scratch.mit.edu.
2. Επιλέξτε πάνω δεξιά “Εγγραφή”.
3. Συμπληρώστε στις φόρμες που ανοίγουν επιθυμητό “Όνομα χρήστη”, “Κωδικό πρόσβασης” και τα υπόλοιπα στοιχεία που θα ζητηθούν.
4. Είστε έτοιμοι να ξεκινήσετε.

Θα γνωρίσετε το περιβάλλον του Scratch 3.0. Το Scratch 3.0 είναι μία εξέλιξη των προηγούμενων εκδόσεων του Scratch 1.4 και του Scratch 2.0. και διατίθεται πλέον και online αλλά και ως offline εφαρμογή. Για να κατεβάσετε την offline έκδοση του Scratch 3.0 επισκεφτείτε τη διεύθυνση:  https://scratch.mit.edu/download.

Η δομή επανάληψης

Text χωρίς τίτλο

Σύνδεση στο περιβάλλον εργασίας του Scratch

[Image: scratch]

Text χωρίς τίτλο

Για να ξεκινήσετε επισκεφθείτε τη διεύθυνση http://scratch.mit.edu και συνδεθείτε με το όνομα χρήστη και τον κωδικό που έχετε επιλέξει.

Text χωρίς τίτλο

Δομή επανάληψης

Text χωρίς τίτλο

Η δομή επανάληψης είναι μια από τις βασικές δομές στον προγραμματισμό η οποία μας δίνει την δυνατότητα να επαναλάβουμε μία ή περισσότερες εντολές που τις εσωκλείουμε σε αυτή τη δομή.

Το Scratch μας δίνει την δυνατότητα να υλοποιήσουμε τις παρακάτω δομές επανάληψης:

- Δομή επανάληψης "Για πάντα"
- Δομή επανάληψης "ν φορές"
- Δομή επανάληψης "Μέχρις ότου"
- Δομή επανάληψης "Όσο"
- Δομή επανάληψης "Για"

[Image: Επανάληψη για πάντα]

Text χωρίς τίτλο

Επανάληψη "για πάντα"

[Image: Επανάληψη ν φορές]

Text χωρίς τίτλο

Επανάληψη "ν φορές"

Text χωρίς τίτλο

Δομή επανάληψης "για πάντα"

[Image: Επανάληψη για πάντα]

Text χωρίς τίτλο

Εντολή επανάληψης "για πάντα"

Στην εντολή "για πάντα", οι εντολές που βρίσκονται στο εσωτερικό της εντολής εκτελούνται συνεχώς (ατέρμων βρόχος).

Αν θέλουμε να διακοπεί υπό προϋποθέσεις η επαναλαμβανόμενη εκτέλεση των εντολών, μπορούμε να τοποθετήσουμε την εντολή "σταμάτησε όλα" μέσα σε μία δομή επιλογής "εάν...τότε" στην οποία θα ορίσουμε τη συνθήκη για να σταματήσει η εκτέλεση του ατέρμονα βρόχου.

Text χωρίς τίτλο

Η εντολή επανάληψης "για πάντα" βρίσκεται στην

παλέτα εντολών "έλεγχος" και ειναι η:

Text χωρίς τίτλο

Εντολές

Οι εντολές που βρίσκονται στο εσωτερικό της εντολής επανάληψης εκτελούνται συνεχώς (ατέρμονας βρόχος).

Text χωρίς τίτλο

Δομή επανάληψης "ν φορές"

[Image: Επανάληψη ν φορές]

Text χωρίς τίτλο

Ορισμός πλήθους επαναλήψεων.

Text χωρίς τίτλο

Εντολή επανάληψης "ν φορές"

Πολλές φορές σε ένα πρόγραμμα θέλουμε μία σειρά ενεργειών να επαναληφθεί ένα συγκεκριμένο αριθμό φορών. Στην περίπτωση αυτή γνωρίζουμε εκ των προτέρων τον αριθμό των επαναλήψεων που πρέπει να γίνουν.

Text χωρίς τίτλο

Η εντολή επανάληψης "ν φορές" βρίσκεται στην

παλέτα εντολών "έλεγχος" και ειναι η:

Text χωρίς τίτλο

Εντολές

Οι εντολές που βρίσκονται στο εσωτερικό της εντολής επανάληψης εκτελούνται για ν φορές και στη συνέχεια η επανάληψη τερματίζεται.

Text χωρίς τίτλο

Δομή επανάληψης "Μέχρις ότου"

[Image: Επανάληψη Μέχρις ότου]

Text χωρίς τίτλο

Συνθήκη

Στην επανάληψη "Μέχρις ότου" οι εντολές που βρίσκονται στο εσωτερικό της μπορεί να μην εκτελεστούν καμία φορά αν η συνθήκη είναι αληθής από την αρχή. Οι εντολές θα εκτελεσθούν μόνο αν η συνθήκη είναι ψευδής στην αρχή, και θα εκτελούνται μέχρι η συνθήκη να γίνει αληθής.

Text χωρίς τίτλο

Εντολή επανάληψης "Μέχρις ότου"

Χρησιμοποιείται όταν θέλουμε μία σειρά ενεργειών να επαναλαμβάνεται μέχρι να ικανοποιηθεί μια συνθήκη (να γίνει αληθής). Στην περίπτωση αυτή δε γνωρίζουμε εκ των προτέρων τον  αριθμό των επαναλήψεων.

Text χωρίς τίτλο

Η εντολή επανάληψης "Μέχρις ότου" βρίσκεται στην

παλέτα εντολών "έλεγχος" και ειναι η:

Text χωρίς τίτλο

Εντολές

Οι εντολές που βρίσκονται στο εσωτερικό της εντολής επανάληψης εκτελούνται όσο η συνθήκη είναι ψευδής και η επανάληψη τερματίζεται μόλις η συνθήκη γίνει αληθής.

Text χωρίς τίτλο

Δομή επανάληψης "Μέχρις ότου"

Text χωρίς τίτλο

Ψευδοκώδικας

Text χωρίς τίτλο

Λογικό διάγραμμα

[Image: Λογικό διάγραμμα]

[Image: Ψευδοκώδικας]

Text χωρίς τίτλο

Δομή επανάληψης "Όσο"

[Image: Επανάληψη όσο]

Text χωρίς τίτλο

Εντολή επανάληψης "Όσο"

Χρησιμοποιείται όταν θέλουμε μία σειρά ενεργειών να επαναλαμβάνεται όσο ισχύει μια συνθήκη (αληθής). Στην περίπτωση αυτή δε γνωρίζουμε εκ των προτέρων τον  αριθμό των επαναλήψεων.

Text χωρίς τίτλο

Συνθήκη

Στην επανάληψη "Όσο" οι εντολές που βρίσκονται στο εσωτερικό της μπορεί να μην εκτελεστούν καμία φορά αν η συνθήκη είναι ψευδής από την αρχή. Οι εντολές θα εκτελεσθούν μόνο αν η συνθήκη είναι αληθής στην αρχή, και θα εκτελούνται μέχρι η συνθήκη να γίνει ψευδής.

Αν ισχύει η συνθήκη εκτελούνται οι εντολές που βρίσκονται στο επάνω άνοιγμα της εντολής (ανάμεσα στο τότε και στο αλλιώς), διαφορετικά θα μεταδοθεί ένα μήνυμα ώστε να εκτελεστεί ένα άλλο κομμάτι του κώδικα που θα αρχίσει μετά από μία εντολή "όταν λάβω...", και το συγκεκριμένο σενάριο θα σταματήσει.

Text χωρίς τίτλο

Η εντολή επανάληψης "Όσο" υλοποιείται

με συνδυασμό εντολών και ειναι η:

Text χωρίς τίτλο

Εντολές

Οι εντολές που βρίσκονται στο εσωτερικό της εντολής επανάληψης εκτελούνται όσο η συνθήκη είναι αληθής και η επανάληψη τερματίζεται μόλις η συνθήκη γίνει ψευδής.

Text χωρίς τίτλο

Δομή επανάληψης "Όσο"

Text χωρίς τίτλο

Ψευδοκώδικας

Text χωρίς τίτλο

Λογικό διάγραμμα

[Image: Λογικό διάγραμμα]

[Image: Ψευδοκώδικας]

Text χωρίς τίτλο

Δομή επανάληψης "Για"

Text χωρίς τίτλο

Η εντολή επανάληψης "Για" υλοποιείται με συνδυασμό εντολών και ειναι η:

[Image: Για1]

Text χωρίς τίτλο

Εντολή επανάληψης "Για"

Χρησιμοποιείται όταν θέλουμε μία σειρά ενεργειών να επαναλαμβάνεται για συγκεκριμένο αριθμό φορών. Συνήθως ορίζουμε μία μεταβλητή i την οποία χρησιμοποιούμε για την εκτέλεση πράξεων σε κάθε κύκλο με την τιμή που έχει εκείνη τη στιγμή. Τη μεταβλητή αυτήν την αρχικοποιούμε έξω από τον βρόχο και την αυξάνουμε κατά μία συγκεκριμένη τιμή μέσα στο βρόχο, ως τελευταία εντολή, πριν να ξεκινήσει η επανάληψη και πάλι των ενεργειών που θέλουμε.

[Image: Για2]

Text χωρίς τίτλο

ή

Text χωρίς τίτλο

Δομή επανάληψης "Για"

Text χωρίς τίτλο

Ψευδοκώδικας

Text χωρίς τίτλο

Λογικό διάγραμμα

[Image: Λογικό διάγραμμα]

[Image: Ψευδοκώδικας]

Δραστηριότητες

Δραστηριότητα1: Δομή επανάληψης

Δομή επανάληψης

Multiple choice

Q: Με ποια εντολή γίνεται η επανάληψη των ίδιων ενεργειών στο Scratch;
- Εντολή "εάν...τότε"
- Εντολή "κινήσου ... βήματα"
- Εντολή "επανάλαβε" (correct)

Αντιστοιχίστε τη κάθε εντολή στη σωστή παλέτα εντολών

Q: Παλέτα "Κίνηση" [...]
Παλέτα "Όψεις" [...]
Παλέτα "Έλεγχος" [...]
Παλέτα "Συμβάντα" [...]
Παλέτα "Ήχος" [...]
A: κινήσου 10 βήματα; πες Γεια σου; για πάντα; όταν γίνει κλικ στην πράσινη σημαία; παίξε τον ήχο Νιάου

Multiple Choice χωρίς τίτλο

Q: Πόσες φορές θα πει το γατάκι του Scratch τη φράση "Γεια σου!" κατά την εκτέλεση του προγράμματος που φαίνεται στην εικόνα;
- 15
- 1
- 5 (correct)
[Image: Απλή επανάληψη]

True/False Question χωρίς τίτλο

Q: Τα δύο προγράμματα της εικόνας θα δώσουν το ίδιο αποτέλεσμα μετά την εκτέλεσή τους.
A: true
[Image: Επανάληψη]

Συμπλήρωσε σωστά το σενάριο.

- [Image: Ρόμβος]
- [Image: Σενάριο]
- Οδηγίες: Σύρε με το ποντίκι τους αριθμούς (4, 45, 90, 100) στα κενά έτσι ώστε όταν εκτελεστεί το πρόγραμμα το γατάκι του Scratch να ζωγραφίζει τον ρόμβο του σχήματος πλευράς 100.
- 4
- 90
- 45
- 100
- [Image: ρόμβος]
- Σχήμα
Q: 45
A: 45
Q: 4
A: 4
Q: 100
A: 100
Q: 90
A: 90

Multiple Choice χωρίς τίτλο

Q: Ποια θα είναι η τελική τιμή του x που θα πει το γατάκι του Scratch;
- 24 (correct)
- 18
- 36
[Image: Εμφωλευμένη επανάληψη]

Text χωρίς τίτλο

Δραστηριότητα: Δημιουργία έργου "Dance with me"

Δραστηριότητα2: Δημιουργία έργου "Dance with me"

[Image: task]

Text χωρίς τίτλο

Οδηγίες

Text χωρίς τίτλο

1. Συνδεθείτε με το προγραμματιστικό περιβάλλον του Scratch (https://scratch.mit.edu).
2. Δημιουργήστε ένα νέο έργο και ονομάστε το "Dance with me".
3. Από τη λίστα αντικειμένων διαγράψτε το γατάκι.
4. Εισάγετε για υπόβαθρο (σκηνικό) το "Concert" από τη κατηγορία "Μουσική" της βιβλιοθήκης του Scratch.
5. Εισάγετε τις μορφές "Cassy Dance" και "Champ99" από την κατηγορία "Άνθρωποι" της βιβλιοθήκης του Scratch.
6. Αλλάξτε το μέγεθος του "Champ99" σε 60% (σμίκρυνση).
7. Δημιουργήστε τα κατάλληλα σενάρια για κάθε αντικείμενο όπως αυτά περιγράφονται στην επόμενη διαφάνεια.

[Image: next arrow]

[Image: break dance]

Text χωρίς τίτλο

Σενάριο Cassy

Όταν γίνει κλικ στην πράσινη σημαία η Cassy θα πηγαίνει στη θέση x=-60, y=0 και θα επαναλαμβάνει 10 φορές τα εξής:

1. επόμενη ενδυμασία
2. περίμενε 0.5 δευτερόλεπτο

Επίσης στη Cassy θα προσθέσετε το σενάριο:  Όταν γίνει κλικ στην πράσινη σημαία παίξε τον ήχο dance around.

Text χωρίς τίτλο

Σενάριο Champ99

Αντιγράψτε το σενάριο της Cassy στoν Champ99 (πατώντας πάνω στην Cassy μεταφέρετε το σενάριο στον Champ99).

Τροποποιήστε το σενάριο του Champ99 ώστε όταν γίνει κλικ στην πράσινη σημαία ο Champ99 να πηγαίνει στη θέση x=100, y=-20.

Αναφορές

Text χωρίς τίτλο

Διαδραστικό σχολικό βιβλίο

- Πληροφορική, Γ Γυμνασίου: http://ebooks.edu.gr/ebooks/v/html/8547/2759/Pliroforiki_A-B-G-Gymnasiou_html-empl/indexG_1_2.html

Ψηφιακά διδακτικά σενάρια ΑΙΣΩΠΟΣ

- Η δομή επανάληψης στο προγραμματιστικό περιβάλλον Scratch: http://aesop.iep.edu.gr/node/19735
- Δομή επανάληψης με τη γλώσσα προγραμματισμού Scratch: http://aesop.iep.edu.gr/node/12196

Χρήσιμο υλικό

- Ένα βιβλίο για τη δημιουργία παιχνιδιών στο Scratch: http://www.scratchplay.gr/
- Προσαρμογή του βιβλίου Πληροφορικής της Γ Γυμνασίου για διδασκαλία με Scratch, του Χαραλαμπίδη Στ.