Μια απλή ερώτση για την ΓΙΑ

Ξεκίνησε από BlackPainter, 15 Νοε 2005, 01:37:27 ΠΜ

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

BlackPainter

Αγαπητοί συνάδελφοι σας χαιρετώ
μπαίνω για πρώτη φορά και σας ρωτώ
αν έχω το εξής τμήμα αλγορίθμου

ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
<ΕΝΤΟΛΕΣ>
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ Ι

τι εμφανίζεται στην οθόνη
10 ή 11?

sl

Έχει αναπτυχθεί αυτό το θέμα και σε παραπέμπω στη σελίδα 4 του Forum 'Εντολή Επανάληψης Για'

andrika

Καλημερα. Προφανως θα εχει παρει την τιμη 11. Αυτο μπορεις να το διαπιστωσεις και αν μετατρεψεις αυτη την για σε οσο.

Sergio

Ήταν ένα από τα πρώτα θέματα που 'απασχόλησαν ' το Στέκι... βλ. http://cgi.tripod.com/tosteki/cgi-bin/YaBB.pl?board=LukeioAEPP;action=display;num=1041002458;start=8#8 (Συζήτηση για τις δομές επανάληψης)
Απ τη μια η θητεία μου σε σχολικές αίθουσες: να φλυαρώ - να ελπίζω πως κατι κατάλαβαν - να εξερευνώ - να μαθαίνω. Απ την άλλη, σχεδόν συνομήλικη, η Διδακτική της Πληροφορικής: ερευνά διαδικασίες μάθησης - φλερτάρει με την Ψυχολογία - με καλεί να αφήσω το βλέμμα του Πληροφορικού και να δω με τα μάτια του δασκάλου. Τέκνα των 2, οι απόψεις μου.. (προσαρμοσμένο από τον πρόλογο του βιβλίου "Το μακρόν Φυσική προ του βραχέως διδάσκω" του Ανδρέα Κασσέτα)

BlackPainter

Διαβάζοντας πολύ προσεκτικά τόσο τις απαντήσεις που δώσατε σε εμένα όσο
και τις απαντήσεις από την πρηγούμενη συζήτηση που έχετε κάνει, θεωρώ ότι η
περισσότερο τεκμητιωμένη άποψη είναι η απάντηση 10 του Sergio η οποία βέβαια
μάλον με φέρνει και στις αρχικές μου σκέψεις, οι οποίες δεν είναι ξεκάθαρες (" Όμως, πιστεύω ότι στο θέμα μας πρέπει να ερωτηθούν ίσως και οι συγγραφείς του βιβλίου.  (Ή ίσως το Υπουργείο;;;".)
Θέτω ακόμα μία παράμετρο στην όλη κουβέντα που μόνο διαισθητικά και
εμπειρικά μπορώ να πω ότι αλλάζει τα δεδομένα(συμβαίνει). Βάζω στοίχημα ότι αν ρωτηθούν καθηγητές σχολείου , διορθωτές ή άνθρωποι του υπουργείου
θα έχουν διαφορετική αντιμετώπιση των παρακάτω αλγορίθμων.

Για ι από 1 μέχρι 10
<εντολές>
Τέλος_επανάληψης
Γράψε ι

Εδώ θα πουν ότι η τιμή που εμφανίζεται  είναι 11


ενώ για το

Για ι από 1 μέχρι 10
Διάβασε Α[ι]
Τέλος_επανάληψης
Γράψε Α[ι]

Θα πουν ότι εμφανίζεται το 10ο κελί του άρτη αναγνωσθέντα πίνακα!!!!!

DO YOU AGREE?

ΠΡΟΣΟΧΗ Δεν λέω ότι έτσι είναι, λέω ότι θα πουν πως είναι έτσι

ΠΡΕΠΕΙ ΝΑ ΕΧΟΥΜΕ ΑΠΑΝΤΗΣΗ ΑΠΟ ΚΑΠΟΙΟΝ ΕΠΙΣΗΜΟ ΦΟΡΕΑ

Sergio

Συνάδελφε,

η άποψη που είχα υποστηρίξει όταν είχε πρωτοσυζητηθεί το θέμα (http://cgi.tripod.com/tosteki/cgi-bin/YaBB.pl?board=LukeioAEPP;action=display;num=1041002458;start=8#8 ) ήταν ότι η τιμή που θα έχει το I μετά την εκτέλεση του Για I από 1 μέχρι 10 θα είναι το 11 και όχι το 10.  Το 10 προκύπτει ως το αναμενόμενο αποτέλεσμα του όμοιου βρόχου σε Pascal (βάση του standard της γλώσσας)

Εν τούτοις, η δομή Για της ψευδογλώσσας (και ΓΛΩΣΣΑΣ) του διδ. Πακέτου θεωρείται ορισμένη ως ανάλογη του:
I <-- 1
ΟΣΟ I <= 10 ΕΠΑΝΑΛΑΒΕ
  ...
  I <-- I + 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΛΗΨΗΣ

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

Δηλαδή, και στο δεύτερο παράδειγμα που αναφέρεις, η απάντηση ορίζεται μονοσήμαντα.  Αφού το i θα έχει την τιμή 11, επομένως η εντολή μετά το τέλος επανάληψης προσπελαύνει το 11ο στοιχείο του πίνακα.  Αν, επομένως, ο πίνακας έχει 10 στοιχεία, ο αλγόριθμος δεν πληροί το κριτήριο της καθοριστικότητας.

Όποιος συνάδελφος πει ότι θα εμφανιστεί το 10ο στοιχείο δε θα έχει απαντήσει προσεκτικά.

Όσο για το θέμα που θέτεις σχετικά με την απάντηση επίσημου φορέα έχουμε ήδη διαπιστώσει ότι κάτι τέτοιο είναι αρκετά δύσκολο και συχνά περιττό.  Έχουμε στη διάθεσή μας το διδακτικό πακέτο και με βάση αυτό μπορούμε και πρέπει να λειτουργήσουμε αφού προηγούμενα μελετήσουμε όλοι προσεκτικά και κατανοήσουμε τους στόχους του μαθήματος όπως αυτοί παρουσιάζονται στο διαθέσιμο υλικό (βιβλίο - τετράδιο μαθητή, βιβλίο καθηγητή, ΑΠΣ μαθήματος, και ΕΠΠΣ Πληροφορικής).  Είναι αλήθεια ότι πολλοί προβληματισμοί μας, όπως έχει κατ επανάληψη φανεί) συχνά προκύπτουν από την κεκτημένη ταχύτητα (αδράνεια) όλων στη «συμμόρφωση» με τους στόχους του μαθήματος.

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

Πάντως η άποψη που έδειξε να διαμορφώνεται στο στρογγυλό τραπέζι που διοργανώθηκε με κεντρικό θέμα το μάθημα της ΑΕΠΠ στο συνέδριο της Κορίνθου τον Οκτώβριο 2005, έδειξε να καταλήγει σε συμπεράσματα σαν αυτό που δίνω πιο πάνω.  Προσεκτική μελέτη των «πηγών» και συστηματική προσπάθεια διδασκαλίας του μαθήματος βάση των επίσημων στόχων και όχι απλά ως ένα μάθημα προγραμματισμού.  Δες σχετικά και τις απόψεις σε ανάλογες συζητήσεις όπως http://cgi.tripod.com/tosteki/cgi-bin/YaBB.pl?board=LukeioAEPP;action=display;num=1131303807;start=15#16 (σχετικά με την εντολή επίλεξε) ή το γενικότερο http://cgi.tripod.com/tosteki/cgi-bin/YaBB.pl?board=LukeioAEPP;action=display;num=1132180731 (σχετικά με τους στόχους του μαθήματος)

ΜΣΦΧ
Απ τη μια η θητεία μου σε σχολικές αίθουσες: να φλυαρώ - να ελπίζω πως κατι κατάλαβαν - να εξερευνώ - να μαθαίνω. Απ την άλλη, σχεδόν συνομήλικη, η Διδακτική της Πληροφορικής: ερευνά διαδικασίες μάθησης - φλερτάρει με την Ψυχολογία - με καλεί να αφήσω το βλέμμα του Πληροφορικού και να δω με τα μάτια του δασκάλου. Τέκνα των 2, οι απόψεις μου.. (προσαρμοσμένο από τον πρόλογο του βιβλίου "Το μακρόν Φυσική προ του βραχέως διδάσκω" του Ανδρέα Κασσέτα)

P.Tsiotakis


Μόλις το μάθημα γίνει γενικής παιδείας να δείτε τι γέλια έχουμε να ρίξουμε  ;D

BlackPainter

Συνάδελφοι,

Δεν υπονόησα σε καμία περίπτωση ότι είχε διατυπώσει κανείς την άποψη ότι η τιμή του Ι είναι 10. Αυτή είναι η δική μου άποψη και δεν στηρίζεται ούτε στην Pascal ούτε σε καμία άλλη γλώσσα (αν και νομίζω ότι καμία γλώσσα σε μία επαναληπτική δομή FOR δεν θα έδινε τιμή στην μεταβλητή μεγαλύτερη από το πάνω όριο ούτε καν ο Compiler της ΓΛΩΣΣΟΜΑΘΕΙΑΣ.)

Μετά από προσεκτική μελέτη των πηγών κατέληξα ότι αν ένας μαθητής διαβάσει το 2ο κεφάλαιο θα διαμορφώσει την άποψη ότι η μεταβλητή λαμβάνει την τιμή 10 και όχι 11.

«Οπως γίνεται φανερό, η εντολή Για...από...μέχρι περιλαμβάνει όλα τα
απαιτούμενα στοιχεία για την επανάληψη, δηλαδή αρχική τιμή της μεταβλητής
i (=1) και τελική τιμή (=100)» σελ 43. από το σχολικό.

Όταν λοιπόν μιλάει για αρχική και τελική τιμή δεν μπορεί παρά να καταλάβει κάποιος ότι πρόκειται για την πρώτη και την τελευταία τιμή που θα πάρει η μεταβλητή ι. Άρα ούτε καν υπονοείται ότι παίζει κάπου και το 101.

Στο 8ο κεφάλαιο όμως λέει :

«Η εντολή αυτή χειρίζεται μια μεταβλητή, στην οποία αρχικά εκχωρείται η αρχική τιμή. Η τιμή της μεταβλητής συγκρίνεται με την τελική τιμή και εφόσον είναι μικρότερη από αυτή, τότε εκτελούνται οι εντολές που βρίσκονται στο βρόχο (ανάμεσα στις εντολές ΓΙΑ και ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ). Στη συνέχεια η μεταβλητή ελέγχου αυξάνεται κατά την τιμή που ορίζει το ΒΗΜΑ. Αν η νέα τιμή είναι μικρότερη της τελικής, τότε ο βρόχος εκτελείται ξανά. Η διαδικασία αυτή επαναλαμβάνεται συνεχώς, έως ότου η τιμή ελέγχου γίνει μεγαλύτερη της τελικής τιμής, οπότε η τερματίζεται η επανάληψη και το πρόγραμμα συνεχίζει με την εντολή που ακολουθεί το ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ.» σελ. 178 από το σχολικό.

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

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

Όσον αφορά στην εξήγηση που δίνετε ορισμένοι ότι δηλαδή η δομή ΓΙΑ θεωρείται ισοδύναμη με αυτή την ΟΣΟ ή με εκείνο το ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ έχω την εξής παρατήρηση:

Η εντολή ΓΙΑ είναι μία από τις 8 εντολές που μαθαίνουν τα παιδία και άρα πρέπει να είναι ορισμένη σαφώς και αυτόνομα (πράγμα που δεν γίνεται όπως είδατε παραπάνω).

Άλλωστε και στη σχολή όταν κάναμε διάγραμμα ροής ή μετατροπή μίας FOR σε WHILE το ίδιο κάναμε παρόλο που εκεί η FOR σαφώς δεν έπαιρνε την παραπάνω τιμή όπως το διάγραμμα ή η WHILE.

Ισοδύναμο άλλωστε είναι η λέξη που χρησιμοποιούμε και όχι ολόιδιο. Πρέπει λοιπόν να ορίσουμε πρώτα από όλα τι σημαίνει ισοδύναμο στην πληροφορική.

Συνεχίζετε να πιστεύεται ότι το εκπαιδευτικό πακέτο σας καλύπτει?
Συνεχίζετε να είστε σίγουροι ότι η τιμή είναι 10 και όχι 11.

Δεν  θέλω να φανώ σοφιστής αλλά θέλω να με πείσετε για να μπορώ να πείσω και εγώ τους μαθητές μου. Οι οποίοι μέσα στην «ελεύθερη» αναπαράσταση αλγοριθμικής σκέψης λένε κατά συντριπτική πλειοψηφία ότι μία φράση «ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10» δεν βρίσκουν τον λόγο να δίνει στο Ι την τιμή 11. Είναι λοιπόν σαφές πως πρέπει να τους πείσω με ορισμό μέσα από το βιβλίο και όχι με ένα άλλων εποχών «αυταρχικό» μοντέλο.

P.Tsiotakis

Το διάγραμμα ροής του παραδείγματος 10 είναι το παράδειγμα ροής της δομής επανάληψης Για. Στο κεφάλαιο 8 λέει οτι μόλις ξεπεραστεί η τελική τιμή τερματίζεται η επανάληψη. Στη σελίδα 43 λέει οτι 100 είναι η τελική τιμή του Για, όχι η τελική τιμή του μετρητή.

Πάντως, στην προσπάθεια να υλοποιηθεί ο πίνακας τιμών μιας άσκησης που περιέχει Για ΠΑΝΤΑ τα παιδιά μετά το τέλος επανάληψης "ανεβαίνουν" στο Για ώστε να δουν ΑΝ θα υπάρξει επόμενη επανάληψη. Αν μετά την αύξηση του μετρητή ξεπεραστεί (προς τα πάνω ή προς τα κάτω) η τελική τιμή, η ροή του αλγορίθμου μεταβαίνει στην εντολή μετά το τέλος επανάληψης
διαφορετικά πως θα δουλεύουμε σε παραδείγματα όπως το
Για i από -34 μέχρι 23 με_βήμα 9  ;

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


Θεωρώ οτι κανείς σε αυτό το στέκι δεν το παίζει κάποιος. Και σε καμία περίπτωση από αυτό το forum δεν παρέχεται μάθημα σε καθηγητές. Είναι μια εθελοντική προσπάθεια για συζήτηση γύρω από το μάθημα και αν μη τι άλλω για την παροχή βοήθειας σε νέους συναδέλφους που τώρα καταπιάνονται με το μάθημα (όπως και για μας όταν ξεκινήσαμε). Επίσης, προσπαθούμε από κοινού να φωτίσουμε κάποια θολά θέματα του βιβλίου
Το σχόλιο μου (μερικά posts πριν) στο συγκεκριμένο θέμα δεν αφορούσε την ερώτησή σου

ΥΓ:  Τα "αυταρχικά" δεν τα έπιασα

BlackPainter

Λοιπόν
1ον το διάγραμμα ροής είναι του ΓΙΑ αλλά επαναλαμβάνω ότι αυτό συνέβαινε και σε οποιαδήποτε γλώσσα προγραμματισμού ακόμα και αν δεν έπερνε την τιμή 11 (δηλ. σε όλες)

2ον συμφωνώ και το είπα ότι στο κεφάλαιο 8 λέει ότι παίρνει την παραπάνω τιμή (11) αλλά κάνει ακι δύο φριχτά λάθη αφού λεέι ότι ελέγχει αν είναι μικρότερη η τιμή

3ον λέει κατά λέξη η αρχική και τελική τιμή της μεταβλητής και όχι της επανάληψης  
στο 2ο κεφ.

4ον δεν καταλαβαίνω την διαφορά της απλής για ι απο 1 μεχρι 10 με την περισσοτερο περίεργη για από -34 μέχρι 23 με_βήμα 9

5ον συμφωνώ ότι τα παιδιά ανεβαίνουν αν κοιτάξουν αλλά τι γράφουν στον πίνακα τιμών; είναι το ερώτημα και μάλιστα τι πρέπει να γράφουν

6ον ποιός είπε για απουσία κανόνων, ποιός είπε για ελέυθερη αναπαράσταση

7ον είπα εγώ ότι το παίζει κάποιος κάποιος (πολύ καλή σύνταξη έχω;χαχα)

8ον κάνω το μάθημα αυτό από όταν ακριβώς άρχισε να διδάσκεται άρα δεν καταπιάνομαι με το μάθημα πρώτη φορά

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

10ον δεν έχω απάντηση απλά δεν μπορώ να κατανοήσω πως με τέτοια σιγουριά (και από που προέρχεται) λέτε ότι θα πάρει την τιμή 11

11ον αυταρχικό=παιδαγωγικό στυλ (επίσημη ονομασία) που πίστευαν ότι ήταν σωστό πρίν μερικά χρόνια. τώρα το στυλ που επικρατεί είναι το student driven ή oriented σε ελέυθερη βαρβαρική μετάφραση

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