Σας έχει ανατεθεί η διδασκαλία της μετα-ελεγχόμενης επανάληψης (εντολή «όσο») στα πλαίσια μιας διδακτικής ώρας της Γ λυκείου. Οι μαθητές έχουν πραγματοποιήσει ένα εισαγωγικό μάθημα για τους προκαθορισμένους επαναληπτικούς βρόχους, όπου ανέπτυξαν αντίστοιχα παραδείγματα και συνεπώς κατανοούν τα βασικά στοιχεία της έννοιας της επανάληψης. Επιπλέον έχουν διδαχθεί την εντολή «Αν» και έχουν επίσης μια στοιχειώδης γνώση για τη δημιουργία λογικών εκφράσεων. 1. Ποιους μαθησιακούς στόχους θα προσδιορίζατε στα πλαίσια της διδακτικής δραστηριότητας; Θα παραθέσω τους στόχους του μαθήματος βάσει της ταξινομίας του Bloom: Οι μαθητές μετά το πέρας της διδασκαλίας θα πρέπει να είναι σε θέση: [Α. Επίπεδο γνώσης] Να γνωρίζουν τη σύνταξη της δομής «όσο» [Β. Επίπεδο κατανόησης] Να αναγνωρίζουν τις περιστάσεις στις οποίες είναι κατάλληλη η δομή επανάληψης «όσο» Να μπορούν να κατανοήσουν και να ξεπεράσουν τυπικές δυσκολίες που αντιμετωπίζονται με την εντολή «όσο»: Καθορισμός των εντολών αρχικοποίησης και ανανέωσης της μεταβλητή ελέγχου των επαναλήψεων για να αποφεύγονται οι ατέρμονοι βρόγχοι Να ξεπεράσουν την προηγούμενη αναπαράσταση τους που δε συνάδει με τον τρόπο λειτουργίας της εντολής «όσο» που μπορεί να μην εκτελεστεί καμία φορά Να μπορούν να κατανοήσουν τον τρόπο με τον οποίο εκτελείται η εντολή σε παραδείγματα κώδικα που τους παρουσιάζονται [Γ. Επίπεδο εφαρμογής] Να δομούν λύσεις προβλημάτων χρησιμοποιώντας τη δομή επανάληψης «όσο» Να δημιουργούν μετρητές και να εκμεταλλεύονται τις επαναλήψεις για την επίλυση προβλημάτων Να δημιουργούν προγράμματα που χρησιμοποιούν την εντολή «όσο» για την εισαγωγή δεδομένων [Δ. Ανάλυση] Να μπορούν να αναλύσουν τα πλεονεκτήματα και τα μειονεκτήματα της δομής «όσο» σε σύγκριση με τη δομή «Για» 2. Ποια παραδείγματα θα θεωρούσατε κατάλληλα παιδαγωγικά; Αναφέρετε πραγματικά προβλήματα πάνω στα οποία θα βασίζατε τη διδασκαλία σας. Καλό θα ήταν να εστιαστούμε σε δραστηριότητες επίλυσης προβλημάτων που ο αριθμός των επαναλήψεων αποτελεί ζητούμενο του προβλήματος καθώς και σε δραστηριότητες που αφορούν την εισαγωγή δεδομένων έως ότου πατηθεί κάποιο συγκεκριμένο πλήκτρο. Και οι δυο κατευθύνσεις αυτές είναι ικανοποιητικές σε πρώτη φάση ώστε τα παιδιά να εξοικειωθούν με την ανάγκη πραγματοποίησης επαναλήψεων χωρίς να είναι γνωστός εξαρχής ο αριθμός τους σε σχετικά ρεαλιστικά και ενδιαφέροντα για αυτούς προβλήματα. Παραδειγματικές δραστηριότητες: Σελίδα 1 από 7
Αν η μέση αύξηση της θερμοκρασίας λόγω του φαινομένου του θερμοκηπίου είναι 0,2 βαθμούς κελσίου το χρόνο, η μέση θερμοκρασία είναι σήμερα 22 βαθμούς και η κρίσιμη θερμοκρασία πάνω από την οποία θα επιταχυνθεί ανεξέλεγκτα το φαινόμενο είναι οι 29 βαθμοί (εντελώς τυχαία δεδομένα) σε πόσα χρόνια θα αρχίσουμε να απειλούμαστε πραγματικά από το φαινόμενο του θερμοκηπίου; Αν χωρίς τη χρήση των κλιματιστικών ο ρυθμός αύξησης μειώνεται κατά 10% κάθε χρόνο, πόσο επιμηκύνεται το αντίστοιχο χρονικό διάστημα; Πόσες εβδομάδες χρειάζονται για να πάρουμε το αγαπημένο μας netbook που κοστίζει 250 αν οι γονείς μας δίνουν 10 ευρώ την πρώτη βδομάδα και αύξηση 1 ευρώ περισσότερο κάθε βδομάδα; Πάρε από όλους τους συμμαθητές σου πληροφορίες το ύψος ώστε να υπολογίσεις το Μ.Ο. τους ύψους της τάξης σου. Πάτησε 0 όταν ολοκληρωθεί η εισαγωγή δεδομένων. 3. Δημιουργείστε και περιγράψτε μια αλληλουχία δραστηριοτήτων που θα μπορούσαν να ικανοποιήσουν με επιτυχία τους προηγούμενους στόχους Προσανατολισμός μαθήματος 7 λεπτά: [σύντομη εισήγηση] Στη συγκεκριμένη φάση της διδασκαλίας μέσω μιας σύντομης εισαγωγής θα προσπαθήσουμε με πολλαπλές αναπαραστάσεις (παρουσίαση κώδικα προβλημάτων που επιλύθηκαν, παρουσίαση αντίστοιχων αλγορίθμων, παρουσίαση άλλων περιστάσεων που απαιτούν προκαθορισμένες επαναλήψεις) να υπενθυμίσουμε την αξία των επαναλήψεων και των προκαθορισμένων επαναλήψεων. Έμφαση θα δοθεί σε μια διαφάνεια που θα περιέχει την ανάλυση ενός βρόγχου σε έναν πίνακα που σε κάθε γραμμή αντιστοιχίζεται ο αριθμός της επανάληψης και οι τιμές διαφόρων μεταβλητών του βρόγχου για εκείνη την επανάληψη (αντίστοιχη δραστηριότητα στο φύλλο εργασίας παρακάτω). Μέσω αυτής της διαφάνειας θα επισημάνουμε την αλλαγή κατάστασης των μεταβλητών (κυρίως του μετρητή) κατά τις επαναλήψεις. [ερωταποκρίσεις] Αμέσως μετά μέσω ερωταποκρίσεων ο εκπαιδευτικός θα προσπαθήσει να εξάγει την ανάγκη ύπαρξης επανάληψης ενεργειών χωρίς προκαθορισμένο αριθμό επαναλήψεων εκ των προτέρων. «Μπορείτε να φανταστείτε περιστάσεις που μπορεί να θέλουμε να πραγματοποιηθεί μια ενέργεια πολλές φορές αλλά να μη γνωρίζουμε από πριν των αριθμό των επαναλήψεων;» «Σε ποιες περιπτώσεις της καθημερινότητας επαναλαμβάνουμε κάτι μέχρι να συμβεί κάτι άλλο;» «Ποιες είναι οι συνθήκες εκείνες που μπορεί να μας κάνουν να μη γνωρίζουμε τον αριθμό των επαναλήψεων; Χρησιμοποιείστε εκφράσεις όπως κάνω κάτι όσο ισχύει αυτό / θα κάνω κάτι μέχρι να συμβεί εκείνο ; Μπορείτε να μου πείτε αντίστοιχες περιστάσεις από παιχνίδια που παίζετε;». Οι ερωτήσεις θα μας οδηγήσουν σε πολλές περιστάσεις αντίστοιχων αναγκών οπότε διεγείρουμε το ενδιαφέρον των μαθητών για το πώς τα δικά τους παραδείγματα μπορούν να αναπαρασταθούν προγραμματιστικά. Εκείνη τη στιγμή αναλύουμε τους στόχους μαθήματος με αναφορές στις δραστηριότητες που είπαν οι μαθητές. Φάση 1 η : Καθοδηγούμενη πρακτική 13 λεπτά Σελίδα 2 από 7
[Μελέτη περίπτωσης]: Μέσω της μελέτης περίπτωσης ο εκπαιδευτικός κάνει εισαγωγή στη λειτουργία και σύνταξη της εντολής «όσο» και εκθέτει τις μαθησιακές δυσκολίες που διατυπώθηκαν στους στόχους. Μέσω δραστηριοτήτων πάνω στην περίπτωση βοηθά κυρίως την ικανοποίηση των στόχων του διδακτικού πλάνου που βρίσκονται επίπεδο κατανόησης του μαθητή ----------------------------------------------------------------------------------------------------------------------------------- Φύλλο εργασίας μαθητή Μελετήστε και κατανοήστε το παρακάτω παράδειγμα. Πρόβλημα: Στην αρχή του σχολικού έτους πρέπει να οριστεί ο μαθητής που θα αναλάβει καθήκοντα απουσιολόγου. Ως απουσιολόγος ορίζεται ο μαθητής ο οποίος είχε το μεγαλύτερο μέσο όρο βαθμολογίας κατά το προηγούμενο σχολικό έτος. Για τον προσδιορισμό του απουσιολόγου, οι καθηγητές ενός σχολείου θέλουν να έχουν στη διάθεσή τους ένα πρόγραμμα που να δέχεται τις βαθμολογίες όλων των μαθητών ενός τμήματος και το οποίο βρίσκει τη μέγιστη βαθμολογία και το όνομα του μαθητή με τη βαθμολογία αυτή. Λύση: ΠΡΟΓΡΑΜΜΑ Απουσιολόγος ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: βαθμολογία, max ΑΚΕΡΑΙΕΣ: i ΧΑΡΑΚΤΗΡΕΣ: όνομα, max_όνομα ΑΡΧΗ ΓΡΑΨΕ Παρακαλώ δώσε τη βαθμολογία του 1ου μαθητή ΔΙΑΒΑΣΕ βαθμολογία ΓΡΑΨΕ Παρακαλώ δώσε το όνομα του 1ου μαθητή ΔΙΑΒΑΣΕ όνομα max <-- βαθμολογία max_όνομα <-- όνομα i <-- 1 ΟΣΟ βαθμολογία<>0 ΕΠΑΝΑΛΑΒΕ i <-- i+1 ΓΡΑΨΕ Παρακαλώ δώσε τη βαθμολογία του, i, ου μαθητή ΔΙΑΒΑΣΕ βαθμολογία ΑΝ βαθμολογία <> 0 ΤΟΤΕ ΓΡΑΨΕ Παρακαλώ δώσε το όνομα του, i, ου μαθητή ΔΙΑΒΑΣΕ όνομα ΑΝ βαθμολογία > max ΤΟΤΕ max <-- βαθμολογία max_όνομα <-- όνομα ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ Η μέγιστη βαθμολογία του τμήματος είναι, max Σελίδα 3 από 7
ΓΡΑΨΕ Ο μαθητής με τη μεγαλύτερη βαθμολογία είναι, max_όνομα Σκεπτικό: Ο Νίκος, μαθητής του σχολείου και με αυτοπεποίθηση στον προγραμματισμό αναλαμβάνει να το δημιουργήσει. Κατανοεί ότι χρειάζεται Α) Να δέχεται είσοδο από τους καθηγητές το βαθμό και το όνομα ξεχωριστά κάθε μαθητή Β) Να συγκρίνει το βαθμό του κάθε νέου μαθητή με τον καλύτερο βαθμό που έχει περαστεί μέχρι εκείνη τη στιγμή - αν είναι μεγαλύτερος τότε να αποθηκεύει το όνομα και το βαθμό του νέου μαθητή ως τον καλύτερο - αν είναι μικρότερος να μη κάνει απολύτως τίποτε Συνεπώς αποφασίζει ότι χρειάζεται μεταβλητές για την είσοδο του νέου μαθητή και μεταβλητές για να κρατήσει τα στοιχεία του καλύτερου Γ) Η είσοδος πρέπει να σταματά με κάποιον τρόπο. Οπότε αποφασίζει ότι όταν οι καθηγητές δώσουν στη βαθμολογία 0 τότε θα παρουσιάζεται το αποτέλεσμα Εξήγηση: Η χρήση της εντολής επανάληψης είναι απαραίτητη μιας και πρέπει να διαβαστούν και να συγκριθούν οι βαθμολογίες όλων των μαθητών της τάξης ενώ το πλήθος των επαναλήψεων δεν είναι γνωστό. Εφόσον ο χρήστης που εισάγει δεδομένα πατήσει το 0 στη βαθμολογία, δεν εμφανίζεται η εντολή «είσοδος ονόματος» λόγω της εντολής ΑΝ, δεν εκτελείται ξανά η επανάληψη (ψευδής συνθήκη) και παρουσιάζεται απευθείας το αποτέλεσμα. Δραστηριότητες μαθητή 1. Μελετήστε και κατανοήστε το προηγούμενο παράδειγμα. Πως συντάσσεται η εντολή «όσο»; 2. Τι θα συνέβαινε αν η εντολή «i <-- 1» μεταφερόταν ακριβώς κάτω (μέσα) στην εντολή «όσο»; 3. Τι θα συνέβαινε αν δεν υπήρχε η συνθήκη «ΑΝ βαθμολογία <> 0 ΤΟΤΕ» και οι εντολές που περιέχονται στη συνθήκη εκτελούνταν σε κάθε επανάληψη; 4. Γιατί ο Νίκος έβαλε την είσοδο για τον πρώτο μαθητή εκτός της εντολής όσο; Θα μπορούσε να δράσει διαφορετικά; ------------------------- [Σύντομα παραδείγματα δραστηριότητες διερεύνησης -10]: Ζητείται από το μαθητή να μελετήσει τα παραδείγματα που βρίσκονται στο επόμενο φύλλο εργασίας ώστε να εμπεδώσει καλύτερα τη γνώση που απέκτησε και ταυτόχρονα να εξετάσει τη χρήση της εντολής σε διαφορετικές περιστάσεις. Με τον τρόπο αυτό θα αποκτήσει την απαιτούμενη γνωστική ευελιξία για την εφαρμογή της εντολής στην επίλυση προβλήματος αργότερα. Ταυτόχρονα θα εστιαστούμε στη σχέση της εντολής «όσο» με την εντολή «για» ------------------------- Φύλλο εργασίας 2 Δραστηριότητα 1 η Μελετήστε το παρακάτω πρόγραμμα και απαντήστε στις ερωτήσεις που ακολουθούν Σελίδα 4 από 7
ΠΡΟΓΡΑΜΜΑ ΜέσηΘερμοκρασία ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: θερμοκρασία,άθροισμαθ, μέσηθ ΑΚΕΡΑΙΕΣ: i ΑΡΧΗ Θερμοκρασία<--1 άθροισμαθ<--0 i <-- 0 ΟΣΟ θερμοκρασία<>0 ΕΠΑΝΑΛΑΒΕ i <-- i+1 ΓΡΑΨΕ Δώσε τη θερμοκρασία της, i, ης ημέρας ΔΙΑΒΑΣΕ θερμοκρασία άθροισμαθ <-- άθροισμαθ + θερμοκρασία ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ μέσηθ<-- άθροισμαθ / (i-1) ΓΡΑΨΕ Η μέση θερμοκρασία είναι, μέσηθ Ερωτήματα 1. Τι τυπώνει στην οθόνη το συγκεκριμένο πρόγραμμα 2. Γιατί αρχικοποιείται η μεταβλητή θερμοκρασία; Θα μπορούσε να αποφευχθεί; 3. Τι τιμές θα έχουν οι μεταβλητές και οι συνθήκες ΜΕΤΑ την είσοδο του χρήστη που περιγράφεται στην πρώτη στήλη του επόμενου πίνακα και ακριβώς πριν την εντολή ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ή το Είσοδος χρήστη (θερμοκρασία) Αριθμός επανάληψης Συνθήκη θερμοκρασία<>0 ι άθροισμαθ μέσηθ 5 1 Αληθής 1 5-6 2 Αληθής 2 11-8 7 5 0 3 3. Γιατί ο προγραμματιστής διαιρεί κατά τον υπολογισμό το άθροισμα των θερμοκρασιών με το (i-1) και όχι το i; 4. Τι θα συνέβαινε αν ο μετρητής i ξεκινούσε με τιμή -1; Ποια τα μειονεκτήματα της προσέγγισης και πως θα μπορούσαν να ξεπεραστούν Σελίδα 5 από 7
5. Πως θα γραφόταν το πρόγραμμα αν ήταν γνωστός ο αριθμός των θερμοκρασιών που θα εισάγουμε; Θα μπορούσε να χρησιμοποιηθεί η εντολή «Για»; Ποια τα πλεονεκτήματα και τα μειονεκτήματα κάθε περίπτωσης Δραστηριότητα 2 η Μελετήστε το παρακάτω πρόγραμμα και απαντήστε στις ερωτήσεις που ακολουθούν ΠΡΟΓΡΑΜΜΑ ΑγοράNetBook ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: εβδομαδιαίοχαρτζιλίκι,εβδομαδιαίααύξηση,κόστοςnetbook,οικονομίες ΑΚΕΡΑΙΕΣ: i ΑΡΧΗ ΓΡΑΨΕ Πόσο είναι το εβδομαδιαίο χαρτζιλικι σου; ΔΙΑΒΑΣΕ εβδομαδιαίοχαρτζιλίκι ΓΡΑΨΕ Πόσα ευρώ αύξηση παίρνεις κάθε βδομάδα; ΔΙΑΒΑΣΕ εβδομαδιαίααύξηση ΓΡΑΨΕ Πόσο κοστίζει το NetBook που θέλεις να αγοράσεις; ΔΙΑΒΑΣΕ κόστοςnetbook i <-- 0 οικονομίες <--0 ΟΣΟ οικονομίες< κόστοςnetbook ΕΠΑΝΑΛΑΒΕ i <-- i+1 οικονομίες<-- οικονομίες+ εβδομαδιαίααύξηση ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ Θα αγοράσεις το NetBook σε, i, εβδομάδες Ερωτήματα: 1) Τι κάνει το παραπάνω πρόγραμμα; 2) Πόσες επαναλήψεις θα πραγματοποιηθούν αν η είσοδος από το χρήστη είναι: 20, 1, 200. Υπολόγισε στο πρόχειρό σου τις τιμές των μεταβλητών σε κάθε επανάληψη. 3) Πως θα τροποποιούσαμε το πρόγραμμα αν η αύξηση δινόταν κάθε δυο βδομάδες; Φαση 3 η : Συνεργατική επίλυση προβλήματος 10 Οι μαθητές έχοντας μελετήσει αρκετά παραδείγματα και έχοντας ξεπεράσει τις τυπικές μαθησιακές δυσκολίες καλούνται να αναπτύξουν δεξιότητες σε επίπεδο εφαρμογής της γνώσης. Τα προηγούμενα φύλλα εργασίας θα λειτουργήσουν ως οδηγοί-υποστηρικτικό υλικό για την επίλυση του παρακάτω προβλήματος: ------------- Φύλλο εργασίας 3 Σελίδα 6 από 7
Το πρόβλημα: Αν η μέση αύξηση της θερμοκρασίας λόγω του φαινομένου του θερμοκηπίου είναι 0,2 βαθμούς κελσίου το χρόνο, η μέση θερμοκρασία είναι σήμερα 22 βαθμούς και η κρίσιμη θερμοκρασία πάνω από την οποία θα επιταχυνθεί ανεξέλεγκτα το φαινόμενο είναι οι 29 βαθμοί (εντελώς τυχαία δεδομένα) σε πόσα χρόνια θα αρχίσουμε να απειλούμαστε πραγματικά από το φαινόμενο του θερμοκηπίου; Γράψτε πρόγραμμα που να δέχεται ως είσοδο τις τρεις μεταβλητές που περιγράφονται και υπολογίζει τον αριθμό χρονών που θα αρχίσουμε να απειλούμαστε από το φαινόμενο του θερμοκηπίου. Η εργασία θα μπορούσε να υλοποιηθεί και σε ομάδες των 2 ατόμων δημιουργώντας τους ρόλους του «οδηγού» και του «παρατηρητή». Ο «οδηγός» έχει τον έλεγχο στη σχεδίαση της λύσης ενώ ο «παρατηρητής» υποβάλλει ερωτήσεις στον «οδηγό» σχετικά με τη σχεδίαση της λύσης του προβλήματος, προτείνει εναλλακτικές λύσεις, επισημαίνει ελλείψεις, και καταγράφει τόσο τα σχόλιά του όσο και τις απαντήσεις του οδηγού κ.λπ. Στα πρώτα λεπτά και τα δυο άτομα μελετούν μόνοι τους το πρόβλημα. ----------------- Φάση 4 η : Επανάληψη-Κλείσιμο μαθήματος 3-4 Στην επανάληψη μέσω ερωταποκρίσεων πραγματοποιείται μια επανάληψη των σχετικών εννοιών που έχουν διδαχθεί οι μαθητές και εστιαζόμαστε στη διαφοροποίηση της εντολής «όσο» σε σχέση με την εντολή προκαθορισμένων επαναλήψεων «για» π.χ. «σε τι παραδείγματα χρησιμοποιούμε την εντολή όσο», «πότε την προτιμούμε σε σχέση με την εντολή «για»; «πως βάζουμε έναν μετρητή σε μια εντολή «όσο»;» «πρέπει να αρχικοποιήσουμε την τιμή του μετρητή μέσα ή έξω από το βρόγχο επανάληψης και γιατί;». Συστήνουμε στους μαθητές να φτιάξουν ένα πρόγραμμα σπίτι τους που δέχεται ως είσοδο τους βαθμούς τους και υπολογίζει το Μ.Ο. της βαθμολογίας τους. Σελίδα 7 από 7