Ερώτηση κρίσεως

Ξεκίνησε από gpapargi, 31 Μαΐου 2006, 09:14:35 ΠΜ

« προηγούμενο - επόμενο »

gpapargi

Θέμα 1 Α2

«Η εντολή επανάληψης ΓΙΑ … ΑΠΟ … ΜΕΧΡΙ … ΜΕ_ΒΗΜΑ μπορεί να χρησιμοποιηθεί, όταν έχουμε άγνωστο αριθμό επαναλήψεων»
Σωστό ή Λάθος;

Πως θα σας φαινόταν αν κάποιος μαθητής έλεγε ότι αλλάζοντας το μετρητή ι μέσα στην επανάληψη τότε μπορεί να προκαλέσει πρόωρο τερματισμό του βρόχου και άρα μπορεί να χρησιμοποιήσει τη «ΓΙΑ» σε άγνωστο αριθμό επαναλήψεων;

Το θέμα έχει ζητηθεί και ξέρουμε ότι μπορεί να γίνει. Απλά δεν πρέπει να γίνεται γιατί είναι πολύ κακός προγραμματισμός. Το 1Α2 όμως ρωτάει αν μπορεί να χρησιμοποιηθεί η εντολή και όχι αν πρέπει.
Ξέρω τι θα μου απαντούσε κάποιος. Αλλά το ερώτημά μου είναι αν και κατά πόσο η επιτροπή είναι φάουλ.
Τι λέτε;

klitos

Δεν ειναι φαυλ ... γιατι αναφέρεται στην σελίδα 173 (προκαθορισμένο αριθμο φορών) ... αλλο θεμα αν μπορούμε να 'βιάσουμε΄ την ΓΙΑ ...
κλητος χατζηγεωργιου

Drepanos

ΠΡΟΓΡΑΜΜΑ Αγνωστος_αριθμός_επαναλήψεων
ΜΕΤΑΒΛΗΤΕΣ
 ΑΚΕΡΑΙΕΣ: i,ΠΛ


ΑΡΧΗ
 ΠΛ <-- 0
 ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 5
   ΓΡΑΨΕ 'Δώσε την', i, 'η τιμή'
   ΔΙΑΒΑΣΕ i
   ΠΛ <-- ΠΛ+1
 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

 ΓΡΑΨΕ 'ΕΠΑΝΑΛΗΨΕΙΣ',ΠΛ

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Εύρεση_τιμής_σε_πίνακα



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

..πότε όμως σε μια σχολή μαγειρικής δεν διδάσκουν στους σπουδαστές πως να χρησιμοποιούν το μαχαίρι για να σφάζουν ανθρώπους!

evry


  Ερώτηση Σ-Λ στις θεωρητικής εξετάσεις μαγειρικής:
"Το μαχαίρι μπορεί να χρησιμοποιηθεί για να σφάζουμε ανθρώπους;"
Ένας μάγειρας θα απαντούσε Λάθος.
Ένας τρίτος παρατηρητής όμως ίσως να απαντούσε Σωστό.

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

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



What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

P.Tsiotakis


Το σχολικό διδακτικό πακέτο που διδάσκουμε στα παιδιά, γράφει οτι δεν επιτρέπεται η τροποποίηση της αρχικής τιμής, της τελική τιμής, του βήματος και του μετρητή εντός του βρόχου.

Επίσης, όπως ο klitos έγραψε, αναφέρεται επακριβώς η σκοπιμότητα της δομής Για

Η επιτροπή έδωσε δυο εύκολα μόρια στα παιδιά με μια τόσο απλή και εύκολη ερώτηση

Είναι άσκοπο να υπάρχουν ξανά και ξανά συζητήσεις για πράγματα που έπρεπε να έχουν κλείσει. Είναι δυνατόν την 6η χρονιά εξέτασης του μαθήματος να συζητάμε για την αλλαγή του μετρητή της δομής Για εντός της επανάληψης;

andreas_p

Θ1. Α2. Είναι ξεκάθαρο.  Είναι  Λάθος.

Θ1  Γ

"Ξερές"  τιμές  : 9 2 11  και  2  9  11   και πήραμε το  12άρι.

ΕΛΕΟΣ  !!!!

Στο καθαρό καμία αναφορά για τη διαδικασία εύρεσης των παραπάνω τιμών,   αλλά ούτε  και στο ... πρόχειρο.  Να πάρουν θέση  τα βαθμολογικά, αφού συντονιστούν μεταξύ τους  και να στείλουν το ΜΗΝΥΜΑ στα ΚΕΝΤΡΙΚΑ  "ΟΧΙ  άλλη χρονιά  ΣΤΗΜΕΝΕΣ  τιμές"  ή τουλάχιστον να αλλάξει η διατύπωση.  ΟΧΙ  απλά τι θα εμφανίσει .  Αυτό δε λέει τίποτα.


Vangelis

Ανδρεα το ίδιο (και πιθανά μεγαλύτερο) είναι στο 1Ε γράφεις δύο Αληθής - Αληθής και παίρνεις 4 μονάδες.




ΠΤ

-Η εντολή ΓΙΑ χρησιμοποιείται μόνο για προκαθορισμένο αριθμό επαναλήψεων. Αν λοιπόν ξέρεις τον αριθμό των επαναλήψεων ή μπορείς να τον υπολογίσεις, τότε να χρησιμοποιείς την εντολή ΓΙΑ
-Ποτέ μην χρησιμοποιείς εντολές που αλλάζουν την αρχική τιμή, την τελική τιμή, το βήμα ή τη μεταβλητή που ελέγχει την επανάληψη μέσα σε ένα βρόχο ΓΙΑ. . . .
ΤΕΤΡΑΔΙΟ ΜΑΘΗΤΗ σελ. 78

P.Tsiotakis

Υπάρχει υπόδειγμα στο διδακτικό πακέτο για τον πίνακα τιμών ώστε να τον ζητούν και στη γραπτή εξέταση;

Συμφωνώ οτι οτι έπρεπε να ζητάει και τον μηχανισμό, αλλά πως;

Ας μην ξεχνάμε και το οτι "πρέπει" να φτάσουν οι μαθητές στη βάση...

andreas_p

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

filippos

Επαναλαμβάνω και εδώ ότι ΔΕΝ ΕΠΙΤΡΕΠΕΤΑΙ να εξεταστεί το ΠΡΟΧΕΙΡΟ.

Υπάρχουν κανόνες στις γενικές εξετάσεις και πρέπει να τηρούνται απ' όλους ανεξαιρέτως

gpapargi

Δε χρειάζεται να επικαλούμαστε αποσπάσματα από το διδακτικό πακέτο για να υποστηρίξουμε ότι στη εντολή «ΓΙΑ» δεν πρέπει να αλλάζουμε το μετρητή. Αυτό το ξέρουμε και από μόνοι μας. Τι σόι πληροφορικοί είμαστε; (Άσε που θα μπορούσαμε να επικαλεστούμε το διάγραμμα ροής (σελ 43) από το οποίο προκύπτει ότι μπορείς να κάνεις την αλλαγή.)

Εγώ στέκομαι στην ουσία: Μπορούμε να το κάνουμε αλλά δεν πρέπει. Και δυστυχώς το θέμα ρωτάει αν μπορούμε και όχι αν πρέπει.

Το συγκεκριμένο θέμα που έθεσα με απασχόλησε κυρίως εξαιτίας της κουβέντας που είχαμε κάποτε με το μαθητή Coolio.

https://alkisg.mysch.gr/steki/index.php?topic=286.0

Εκεί του εξηγήσαμε γιατί το συγκεκριμένο πράγμα δεν πρέπει να το κάνει. Τι θα γινόταν όμως αν δεν είχε ρωτήσει; Προφανώς υπάρχουν και άλλοι που ξέρουν αυτά που ήξερε ο Coolio και δεν έκαναν ερώτηση.

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

https://alkisg.mysch.gr/steki/index.php?topic=231.0

Αλλά η ενοχοποίηση θα πρέπει να γίνεται με αντικειμενικά κριτήρια και όχι να βασίζεται στα συναισθήματά μας.

Ας υποθέσουμε ότι ένας μαθητής μας φέρνει τον αλγόριθμο που τερματίζει πρόωρα τη «ΓΙΑ» και ισχυρίζεται ότι το θέμα 1 Α2 πρέπει να απαντηθεί σαν «σωστό». Τι θα του πούμε; Ότι δε γίνεται να κόψεις πρόωρα την εντολή; Αφού το έχει γραμμένο στο χαρτί.

Φοβάμαι πως όταν χρεώνουμε λανθασμένη την απάντηση του παραπάνω μαθητή βασιζόμαστε στα συναισθήματά μας και όχι σε αντικειμενικά κριτήρια. Εγώ δεν έχω επιχειρήματα για να εξηγήσω στο μαθητή ότι έκανε λάθος.

Πιστεύω πως το θέμα δε διατυπώθηκε σωστά. Είναι βέβαια ξεκάθαρο τι θέλει να ρωτήσει και τι απάντηση περιμένει, αλλά πιστεύω πως δεν το ρώτησε σωστά.

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

filippos

Προσωπικά πιστεύω ότι οι μαθητές συχνά "πληρώνουν αμαρτίες" των δασκάλων τους.

Ο δάσκαλος οφείλει να διδάξει ότι το ΓΙΑ φτιάχτηκε από το ΟΣΟ για τις περιπτώσεις που ο αριθμός των επαναλήψεων είναι καθορισμένος.  Όχι με την προγραμματιστική διάσταση, αλλά με την λογική διάσταση.  Οφείλει να διδάξει ότι υπάρχουν προβλήματα που ο αριθμός των επαναλήψεων είναι καθορισμένος και προβλήματα που έχουν μία άλλη λογική, προβλήματα που διαμορφώνουν δυναμικά τη συνθήκη συνέχειας (ή τερματισμού).  Πιό βαθιά ίσως, ότι υπάρχουν και προβλήματα που μπορεί να μη χρειαστούν καμμία επανάληψη (ΟΣΟ) αλλά και προβλήματα που από τη λογική τους χρειάζονται τουλάχιστον μία (άρα και ... ΜΕΧΡΙΣ_ΟΤΟΥ).

ΔΕΝ είναι αποκλειστικά θέμα προγραμματιστικού λεξιλογίου.  Θα πρέπει να το βλέπουμε στο πλαίσιο της οικοδόμησης μηχανισμών κατανόησης / ανάλυσης και επίλυσης προβλημάτων. 

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

Και πάλι φέτος, υπήρξαν μαθητές που πάλεψαν το 3ο θέμα με ΓΙΑ και αλλάξαν το μετρητή για να τερματίσουν.

ΑΠΑΡΑΔΕΚΤΟ.  Κάποιοι από μας χρειάζονται αλλαγή στάσης γιατί την πληρώνουν οι μαθητές

gpapargi

Είμαι απόλυτος: όποιος στο θέμα 3 έκοψε τη "Για" με αλλαγή του μετρητή πρέπει να τιμωρηθεί.
Είπαμε ότι μπορεί να γίνει αλλά ΔΕΝ ΠΡΕΠΕΙ.
(Βέβαια στο παρόν θέμα συζητάμε το αν μπορεί να γίνει και όχι το αν πρέπει αφού αυτό ρωτήθηκε τις εξετάσεις)

filippos

Δεν έχεις δίκαιο να είσαι απόλυτος, ειδικά σε αυτό το θέμα.

Η αλλαγή της αρχικής, τελικής τιμής ή τιμής της μεταβλητής ελέγχου από εντολές του βρόχου ΓΙΑ συνιστά λάθος και πρέπει να βαθμολογείται ανάλογα.

Ο μαθητής πρέπει να μπορεί να ξεχωρίζει σε ποιές περιπτώσεις ο αριθμός των επαναλήψεων είναι καθορισμένος άρα ΕΠΙΤΡΕΠΕΤΑΙ και η ΓΙΑ και σε ποιές δεν είναι καθορισμένος οπότε ΑΠΑΓΟΡΕΥΕΤΑΙ.

Επιτρέποντας τέτοιου είδους ανορθόδοξες "αλγοριθμικές" μεθοδεύσεις δεν προάγουμε την ορθή σκέψη των μαθητών.  Δε διδάσκουμε κατανόηση / ανάλυση και μεθοδολογική προσέγγιση στην επίλυση αλλά "κολπάκια - τεχνάσματα" που υποβιβάζουνη το επίπεδο και το σκοπό του μαθήματος

MichaelP

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

Το πρόβλημα της αλλαγής των ορίων στη Γιά, εντός του βρόγχου αυτής αποτελεί αναμφίβολα κακή προγραμματιστική τεχνική.
Λέγοντας ότι είναι κακή τεχνική εννοούμε ότι ο παραγόμενος αλγόριθμος είναι υποβαθμισμένος σε επίπεδο δυνατότητας συντήρησης και μετατροπής του σε σχέση με έναν άλλο που θα χρησιμοποιούσε την ΟΣΟ. Αυτό είναι το θέμα. Αυτό είναι που απαγορεύει την χρήση της Για σε τέτοιες περιπτώσεις και κανένας άλλος.
Είναι ο ίδιος λόγος που συνίσταται η σωστή χρήση ονομάτων για μεταβλητές, ονομάτων που υποδηλώνουν τη χρήση ή/και τον τύπο της συγκεκριμένης μεταβλητής.
Εγώ μάλιστα θα έλεγα, να δοθεί οδηγία απο το υπουργείο σχετικά με την σωστή χρήση των ονομάτων των μεταβλητών, στο ίδιο ακριβώς πνεύμα με την ορθή χρήση της Γιά, όπως και των υπολοίπων δομών, δηλαδή στο πνεύμα του ότι σωστός κώδικας δεν είναι μόνο αυτός που παράγει ένα σωστό αποτέλεσμα αλλά αυτός που διευκολύνει την μετέπειτα συντήρησή του, στο ίδιο πνεύμα δηλαδή με τους λόγους κατάργησης της περίφημης GOTO.
Κατανοώ βεβαίως ότι αυτά είναι ψιλά γράμματα για το συγκεκριμένο επίπεδο.

evry

Παράθεση από: MichaelP στις 24 Ιαν 2009, 09:44:41 ΠΜ
δηλαδή στο πνεύμα του ότι σωστός κώδικας δεν είναι μόνο αυτός που παράγει ένα σωστό αποτέλεσμα αλλά αυτός που διευκολύνει την μετέπειτα συντήρησή του, στο ίδιο πνεύμα δηλαδή με τους λόγους κατάργησης της περίφημης GOTO.
Κατανοώ βεβαίως ότι αυτά είναι ψιλά γράμματα για το συγκεκριμένο επίπεδο.
Ακριβώς, είναι πολύ ψιλά γράμματα αλλά το θέμα δεν είναι αυτό. Το θέμα είναι ότι αυτό που θίγεις είναι εκτός του αναλυτικού προγράμματος σπουδών. Δεν ελέγχουμε τα παιδιά αν γράφουν σωστό κώδικα, απλά αν σκέφτονται σωστά και αν μπορούν να αποτυπώσουν τη σκέψη τους στο χάρτι σε κάποια αναπαράσταση αλγορίθμου. Προσπαθούμε δηλαδή να μην κάνουμε προγραμματισμό, απλά κάποιες βασικές έννοιες αλγορίθμων. Για παράδειγμα η έννοια του αποδοτικού αλγορίθμου είναι εκτός ύλης. Αν ο αλγόριθμος βγάζει σωστό αποτέλεσμα δεν υπάρχει πρόβλημα. Καλώς ή κακώς έτσι είναι.
    Στο πνεύμα λοιπόν αυτό και ενώ η χρήση goto ή η αλλαγή μετρητή μέσα στη Για παράγουν επίσης σωστό αποτέλεσμα εμείς τους λέμε ότι αυτό είναι κακό και να μην το κάνουν. Αυτό όμως δεν είναι ασυνεπές? Δεν μπορεί τη μια να λες αυτό και την άλλη να τα αλλάζεις. Λέμε δηλαδή αυτό που μας συμφέρει κάθε φορά για να καλύψουμε τις ασυνέπειες του βιβλίου.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

MichaelP

Ισχύει. Και σε πολλά σημεία μάλιστα. Δεν μπαίνω στο κόπο να αναφέρω σε πόσα γιατί ήδη γνωρίζετε !