Απορία στην ΓΙΑ

Ξεκίνησε από tkon, 02 Ιουν 2017, 02:33:04 ΜΜ

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

akalest0s

Έχω κάνει τεράστια προσπάθεια να κρατηθώ κόσμιος με αυτό το μάθημα. Πραγματικά έχω βγει από τα ρούχα μου άπειρες φορές, τα τελευταία χρόνια που διαβάζω ΑΕΠΠ. Άπειρα εγκεφαλικά... ΒΟΗΘΑΤΕ!
"Abstraction is not the first stage, but the last stage, in a mathematical development." MK
"I don't want to write about a high level thing, unless I fully understand about a low level thing" DK

itt

Παράθεση από: akalest0s στις 09 Ιουν 2017, 02:01:37 ΜΜ
Έχω κάνει τεράστια προσπάθεια να κρατηθώ κόσμιος με αυτό το μάθημα. Πραγματικά έχω βγει από τα ρούχα μου άπειρες φορές, τα τελευταία χρόνια που διαβάζω ΑΕΠΠ. Άπειρα εγκεφαλικά... ΒΟΗΘΑΤΕ!

Ίσως θα ήθελες να γίνεις πιο συγκεκριμένος;

akalest0s

Μιλάω για τις ασάφειες που υπάρχουν. Δε μπορεί να χωρέσει το μυαλό μου το χάος που έχει δημιουργηθεί με τις αλλεπάλληλες ασάφειες του μαθήματος, την αποτυχία υλοποίησης μιας αρχικά καλής σκέψης (να αναπτυχθεί η αλγοριθμική σκέψη και όχι να "βγάλουμε" προγραμματιστές), κλπ.
Συγγνώμη αν μπέρδεψε το προηγούμενο μήνυμά μου, απλά μου φαίνεται ασύλληπτη η κατάσταση. Δεν θέλω να επεκταθώ, σίγουρα δεν είναι του παρόντος.
Ως νέος καθηγητής, με μεγάλη αγάπη για το αντικείμενο, θλίβομαι πάντως.
"Abstraction is not the first stage, but the last stage, in a mathematical development." MK
"I don't want to write about a high level thing, unless I fully understand about a low level thing" DK

Laertis

Παράθεση από: akalest0s στις 09 Ιουν 2017, 02:01:37 ΜΜ
Έχω κάνει τεράστια προσπάθεια να κρατηθώ κόσμιος με αυτό το μάθημα. Πραγματικά έχω βγει από τα ρούχα μου άπειρες φορές, τα τελευταία χρόνια που διαβάζω ΑΕΠΠ. Άπειρα εγκεφαλικά... ΒΟΗΘΑΤΕ!

Δεν έχεις εντελώς άδικο akalest0s αλλά σκέψου ότι αυτό το βιβλίο έχει πλέον ενηλικιωθεί (έγινε 18 ετών), γράφηκε το 1999 και χρήζει σίγουρα αντικατάστασης. Αλλά δυστυχώς εδώ που φτάσαμε, το πρωτεύον ζήτημα είναι να κρατήσουμε το μάθημα και την Πληροφορική ζωντανή στο εκπαιδευτικό μας σύστημα γιατί από όσα είδαμε μέχρι τελευταία είμαστε στην εντατική και από ότι ότι διαφαίνεται μάλλον θα βλέπουμε τα ραδίκια ανάποδα σύντομα αν δεν υπάρξει κοινή και αποφασιστική δράση.
Οπότε θα σε παρακαλούσα να μετριάσεις το θυμό σου γιατί πιθανώς σε λίγο καιρό να μην έχει λόγο ύπαρξης, και να βρεις κάποιους λόγους να υπερασπιστείς το μάθημα αντί να το λιθοβολάς.
Νικολακάκης Γιώργος
Μηχανικός Η/Υ Συστημάτων
Καθηγητής Πληροφορικής
http://users.sch.gr/gnikola

akalest0s

Εξήγησε γιατί θεωρείς ότι το λιθοβόλησα.
Λόγω off-topic, συνεχίζουμε αν θες σε πιο κατάλληλο θέμα, ή σε πμ.
"Abstraction is not the first stage, but the last stage, in a mathematical development." MK
"I don't want to write about a high level thing, unless I fully understand about a low level thing" DK

Laertis

Ίσως το "λιθοβολάς" ακούστηκε βαρύ, οπότε σου στέλνω pm για να μην απασχολούμε το topic.
Νικολακάκης Γιώργος
Μηχανικός Η/Υ Συστημάτων
Καθηγητής Πληροφορικής
http://users.sch.gr/gnikola

Sergio

Παράθεση από: akalest0s στις 09 Ιουν 2017, 02:36:52 ΜΜ
..την αποτυχία υλοποίησης μιας αρχικά καλής σκέψης (να αναπτυχθεί η αλγοριθμική σκέψη και όχι να "βγάλουμε" προγραμματιστές)..

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

Sergio

Με μεγάλη μου έκπληξη διαπίστωσα, για μια ακόμα φορά, πως, παρά τα 15 και πλέον χρόνια ενασχόλησής μου με το μάθημα από διάφορες θέσεις, μόλις αντιλήφθηκα πως το υπό συζήτηση θέμα πιθανόν είναι ήδη απαντημένο στο βιβλίο.  Και η έκπληξή μου αφορά αποκλειστικά ΕΜΕΝΑ οπότε δεν θα ήθελα να ληφθεί σε καμία περίπτωση ως άμεση ή έμμεση αιχμή για τους συναδέλφους που συμμετέχουν σε συζητήσεις σχετικά με το μηδενικό βήμα της Για.  Κρίνω απαραίτητο να κάνω αυτή την επισήμανση αφού η μέχρι τώρα εμπειρία στο εξαιρετικό αυτό forum συζήτησης έχει να επιδείξει πολλές περιπτώσεις ατέρμονων συζητήσεων που συχνά καταλήγουν σε στείρες αντιπαραθέσεις που χαλούν το κλίμα συνεργασίας και ανταλλαγής απόψεων που θεωρώ απαραίτητο για την προαγωγή του μαθήματος.

Ξαναδιαβάζοντας, λοιπόν, το βιβλίο παρατηρώ τα εξής:  :

1. (Παράδειγμα 10. κεφαλαίου 2 - ΠΡΩΤΗ αναφορά την εντολή ΓΙΑ) "..Οπως γίνεται φανερό, η εντολή Για...από...μέχρι περιλαμβάνει όλα τα απαιτούμενα στοιχεία για την επανάληψη, δηλαδή αρχική τιμή της μεταβλητής i (=1) και τελική τιμή (=100). Το βήμα μεταβολής της μεταβλητής i είναι 1, το οποίο υπονοείται και δεν σημειώνεται, όταν είναι 1..."

2. ΑΚΡΙΒΩΣ κάτω από αυτό το κείμενο, δίνεται η διαγραμματική αναπαράσταση της ΓΙΑ που χρησιμοποιεί ως συνθήκη συνέχειας την "i <= 100".

Μέχρι στιγμής, ΚΑΜΙΑ αναφορά στο πρόσημο του βήματος, απεναντίας παρουσίαση της "προφανούς" χρήσης βήματος με τιμή 1 !!

3. (Παράδειγμα 11. κεφαλαίου 2) "..το βήμα δεν μπορεί να είναι μηδέν, γιατί τότε ο βρόχος εκτελείται επ' άπειρον..".  ΠΡΩΤΗ αναφορά σε μηδενικό βήμα.  Εν τούτοις, το πλαίσιο λειτουργίας της εντολής ΓΙΑ, όπως έχει ήδη οικοδομηθεί από τα προηγούμενα, "αιτιολογεί" το "ατέρμον" της συμπεριφοράς της.

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

4. ΑΚΡΙΒΩΣ από κάτω, στο ίδιο παράδειγμα «..Είναι δυνατόν όμως το βήμα να έχει αρνητική τιμή, αρκεί η τιμή από να είναι μεγαλύτερη από την τιμή μέχρι..".  Σε αυτό το σημείο γίνεται η πρώτη αναφορά σε "διαφορετική" συμπεριφορά της ΓΙΑ, και η διαφοροποίηση αφορά σε αρνητικό βήμα.

Συμπεραίνω πως, το πλαίσιο λειτουργίας της ΓΙΑ "συμπληρώνεται" με τον όρο: "εφόσον το βήμα είναι αρνητικό, η συνθήκη συνέχειας ελέγχει την -ΜΗ- υπέρβαση της τελικής τιμής ως i >= τιμή_μέχρι"




ΑΠΟ ΤΑ ΠΑΡΑΠΑΝΩ, πιστεύω πως είναι ασφαλές, ΜΕ ΒΑΣΗ ΤΟ ΒΙΒΛΙΟ να θεωρήσουμε πως η "συμπεριφορά" της ΓΙΑ ορίζεται ως:

i <- τιμή_από
ΟΣΟ εντός_ορίων ΕΠΑΝΑΛΑΒΕ
   ...
   ...
   i <- i + τιμή_βήματος
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

Θεωρώντας πως η συνθήκη συνέχειας εντός_ορίων διαμορφώνεται ως
i <= τιμή_μέχρι (όταν τιμή_βήματος >= 0)
i >= τιμή_μέχρι (όταν τιμή_βήματος  < 0)

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

Κωστας τζιαννης

δεν ξερω τι λεει το σχολικο βιβλιο γιατι δεν ειμαι καθηγητης σε σχολειο ομως αν πας στη c,python,c++ κτλ ισχυουν τα εξης.

για ι απο 1 μεχρι 5 με βημα 1
γραψε"γεια σου"
τελος_επαναληψης

θα εκτελεστει 5 φορες

για ι απο 1 μεχρι 5 με βημα -1
γραψε"γεια σου"
τελος_επαναληψης

θα εκτελεστει απειρες φορες και αυτο ειναι λογικο αν τη μετατρεψουμε σε οσο.

ι<-1
ΟΣΟ ι<=5 επαναλαβε
  γραψε"γεια σου"
  ι<-ι-1
τελος_επαναληψης

το προγραμμα θα κρασαρει αφου εμφανισει καποιες χιλιαδες φορες το μηνυμα "γεια σου".το ιδιο και αν εχω βημα μηδεν.αυτα συμβαινουν στις αληθινες
προγραμματιστικες γλωσσες αλλα σε αυτη του λυκειου ουτε οι ιδιοι δεν ξερουν τι εχουν γραψει .στην πραγματικοτητα ομως ακομα κι οταν το βημα δεν ειναι μηδεν αλλα εχω περιπτωση σαν την παραπανω εχω και τοτε ατερμονα βροχο

ozorgnax

Αυτό:

για ι απο 1 μεχρι 5 με βημα -1
γραψε"γεια σου"
τελος_επαναληψης

δεν εκτελείται καμία φορά τόσο στη ΓΛΩΣΣΑ όσο και στην Python (μπορείς να το τσεκάρεις αν θέλεις). Όταν το μετατρέπεις σε ΟΣΟ, επειδή το βήμα είναι αρνητικό πρέπει να αλλάξεις το <= με >= άρα γίνεται:

ι<-1
ΟΣΟ ι>=5 επαναλαβε
  γραψε"γεια σου"
  ι<-ι-1
τελος_επαναληψης

οπότε δεν μπαίνει καθόλου μέσα

Κωστας τζιαννης

#25
Παράθεση από: ozorgnax στις 25 Μαΐου 2018, 03:33:30 ΜΜ
Αυτό:

για ι απο 1 μεχρι 5 με βημα -1
γραψε"γεια σου"
τελος_επαναληψης

δεν εκτελείται καμία φορά τόσο στη ΓΛΩΣΣΑ όσο και στην Python (μπορείς να το τσεκάρεις αν θέλεις). Όταν το μετατρέπεις σε ΟΣΟ, επειδή το βήμα είναι αρνητικό πρέπει να αλλάξεις το <= με >= άρα γίνεται:

ι<-1
ΟΣΟ ι>=5 επαναλαβε
  γραψε"γεια σου"
  ι<-ι-1
τελος_επαναληψης

οπότε δεν μπαίνει καθόλου μέσα

οχι εννοω αυτο που εγραψα.αν δηλαδη καποιος θελει να παει απο το 1 στο 5 με βημα -1 αντι για βημα 1 δηλαδη αν μπερδευτει κατα λαθος και αντι να αυξανει το ι αυτος το μειωνει.τοτε θα εκτελεστει απειρες φορες.στη c και c++ το δοκιμασα και το τρεχει απειρες φορες σε  python δεν το δοκιμασα ειναι η αληθεια αλλα επειδη ειναι γλωσσα υψηλου επιπεδου και επειδη η γλωσσα αυτη ειναι open-source και ο καθενας μπορει να κανει βελτιωσεις που κρινει σημαντικες,μπορει καποιοι προγραμματιστες να μεριμνησαν για αυτο οποτε ισως το καταλαβαινει και σε προστατευει μην αφηνοντας σε να μπεις μες στη για και να κανεις απειρες επαναληψεις

οντως το δοκιμασα σε python και δεν σε αφηνει.η javascript απο την αλλη και αυτη οπως η C σε αφηνει και τρεχει απειρες φορες(μεχρι να κρασαρει)

Λαμπράκης Μανώλης

Καλησπέρα σε όλους
Φίλοι συνάδελφοι η γνώμη μου είναι πως πρέπει να συμβαδίζουμε με το σχολικό βιβλίο, καλώς ή κακώς....δεν πρέπει να απασχολεί τους μαθητές τι γίνεται στις γλώσσες προγραμματισμού, εμείς ΓΛΩΣΣΑ διδάσκουμε...οπότε στην γλώσαα το ΓΙΑ κάνει άπειρες επαναλήψεις μόνο με βήμα 0 ... για ι από 1 μέχρι 5 μεβήμα -1 κάνει 0 σύμφωνα με το βιβλίο, υπάρχει στις οδηγίες μελέτης, οπότε όλα καλά

Κωστας τζιαννης

Παράθεση από: Λαμπράκης Μανώλης στις 25 Μαΐου 2018, 06:57:23 ΜΜ
Καλησπέρα σε όλους
Φίλοι συνάδελφοι η γνώμη μου είναι πως πρέπει να συμβαδίζουμε με το σχολικό βιβλίο, καλώς ή κακώς....δεν πρέπει να απασχολεί τους μαθητές τι γίνεται στις γλώσσες προγραμματισμού, εμείς ΓΛΩΣΣΑ διδάσκουμε...οπότε στην γλώσαα το ΓΙΑ κάνει άπειρες επαναλήψεις μόνο με βήμα 0 ... για ι από 1 μέχρι 5 μεβήμα -1 κάνει 0 σύμφωνα με το βιβλίο, υπάρχει στις οδηγίες μελέτης, οπότε όλα καλά

και γω απο οτι θυμαμαι οταν την εκανα χρονια πριν στο σχολειο νομιζω μονο με βημα μηδεν εκανε απειρες επαναληψεις ενω σε περιπτωσεις σαν την παραπανω
πχ για ι απο 1 μεχρι 5 με βημα -1 ή για ι απο 5 μεχρι 1 με βημα 1 δεν εμπαινε καθολου απο οτι θυμαμαι

evry

Παράθεση από: Κωστας τζιαννης στις 25 Μαΐου 2018, 06:46:32 ΜΜ
οχι εννοω αυτο που εγραψα.αν δηλαδη καποιος θελει να παει απο το 1 στο 5 με βημα -1 αντι για βημα 1 δηλαδη αν μπερδευτει κατα λαθος και αντι να αυξανει το ι αυτος το μειωνει.τοτε θα εκτελεστει απειρες φορες

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

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

Κωστας τζιαννης

Παράθεση από: evry στις 26 Μαΐου 2018, 10:11:01 ΠΜ
Επειδή το φόρουμ το διαβάζουν μαθητές και πλησιάζουν εξετάσεις καλό είναι να μην λέμε λάθος πράγματα που θα χαντακώσουν κανένα παιδάκι.

σωστος απλα διευκρινησα οτι ισχυει για  καποιες γλωσσες προγραμματισμου μονο οχι για τη γλωσσα.