Αποστολέας Θέμα: Απορία στην ΓΙΑ  (Αναγνώστηκε 1435 φορές)

tkon

  • Ομάδα διαγωνισμάτων 2014
  • *
  • Μηνύματα: 26
Απορία στην ΓΙΑ
« στις: 02 Ιούν 2017, 02:33:04 μμ »
Στην επαναληπτική δομή ΓΙΑ η επαναληπτική διαδικασία δεν ικανοποιεί το κριτήριο της περατότητας μόνο στην περίπτωση που το Βήμα είναι μηδέν
Σωστό ή Λάθος;
Και γιατί;

thanos_xg

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 22
Απ: Απορία στην ΓΙΑ
« Απάντηση #1 στις: 02 Ιούν 2017, 05:34:47 μμ »
H ΓΙΑ συμπεριφέρεται όπως και η αντίστοιχή της ΟΣΟ. Αν το βήμα είναι 0 τότε η μεταβλητή ελέγχου της ΓΙΑ άρα και της ΟΣΟ δεν μεταβάλλεται. Έτσι έχουμε ατέρμονα βρόχο.
Σε κάθε άλλη περίπτωση η ΓΙΑ δεν θα εκτελείται καθόλου ή θα εκτελείται κάποιες συγκεκριμένες φορές σύμφωνα με τον τύπο
(τελ_τιμή-αρχ_τιμη) div βήμα +1....

Μετά από αυτά η απάντηση στο σωστό-λάθος είναι ΣΩΣΤΟ
Θανάσης Χ.

tkon

  • Ομάδα διαγωνισμάτων 2014
  • *
  • Μηνύματα: 26
Απ: Απορία στην ΓΙΑ
« Απάντηση #2 στις: 02 Ιούν 2017, 05:48:27 μμ »
Σε διαγώνισμα 11/12/2016 ( Εκπαίδευση εν τάξη)
Στις απαντήσεις το δίνει ΛΑΘΟΣ

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2922
  • to Iterate is human to Recurse divine
Απ: Απορία στην ΓΙΑ
« Απάντηση #3 στις: 02 Ιούν 2017, 09:26:05 μμ »
Δίνω δυο τμήματα κώδικα με Για
Κώδικας: Pascal
  1. Για i από 10 μέχρι 1 με βήμα 0

Κώδικας: Pascal
  1. Για i από 1 μέχρι 10 με βήμα 0

Αφού για τις παραπάνω υπάρχει ισοδύναμο τμήμα της Όσο ποιο είναι αυτό σε κάθε περίπτωση?
H ΓΙΑ συμπεριφέρεται όπως και η αντίστοιχή της ΟΣΟ. Αν το βήμα είναι 0 τότε η μεταβλητή ελέγχου της ΓΙΑ άρα και της ΟΣΟ δεν μεταβάλλεται. Έτσι έχουμε ατέρμονα βρόχο.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

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

  • Ομάδα διαγωνισμάτων 2017
  • *
  • Μηνύματα: 474
Απ: Απορία στην ΓΙΑ
« Απάντηση #4 στις: 02 Ιούν 2017, 10:24:22 μμ »
εγώ αυτό που έχω στο μυαλό μου  είναι το εξής: (αν δεν κάνω λάθος το είχα διαβάσει εδώ από τον συνάδελφο Παναγιώτη Τσιωτάκη, για να μην το ψάχνω το γράφω απευθείας)

όταν εκτελείται ένας βρόγχος ΓΙΑ είναι σαν να εκτελείται το ακόλουθο

Αν βήμα= 0 τότε
   γράψε "άπειρες"
Αλλιώς_αν βήμα>'τότε
   κ<-- τιμή_από
   'Οσο κ<= τιμή_μέχρι επανάλαβε
       εντολές
       κ<--κ+βήμα
   Τέλος_επανάληψης
Αλλιώς   ! βήμα<0 τότε
   κ<-- τιμή_από
   'Οσο κ>= τιμή_μέχρι επανάλαβε
       εντολές
       κ<--κ+βήμα
   Τέλος_επανάληψης
Τέλος_αν

..... εγώ έτσι το αντιλαμβάνομαι, το βήμα 0 οδηγεί "αυτόματα" σε ατέρμων βρόχο


evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2922
  • to Iterate is human to Recurse divine
Απ: Απορία στην ΓΙΑ
« Απάντηση #5 στις: 02 Ιούν 2017, 10:52:23 μμ »
Το θέμα δεν είναι πως το αντιλαμβάνεται ο καθένας μας αλλά πως προκύπτει αυτό με κάποιον μεθοδολογικό τρόπο. Και εγώ μπορώ να παραθέσω ένα άλλο σκεπτικό αλλά το θέμα είναι
α) ποιο είναι το σκεπτικό του βιβλίου
β) αν αυτό είναι ορθολογικό και δεν έρχεται σε σύγκρουση με αυτό που συμβαίνει στις περισσότερες γλώσσες προγραμματισμού

όσον αφορά το σκεπτικό του βιβλίου στο βιβλίο καθηγητή σελ. 71 λέει

ισχύουν οι επόμενοι περιορισμοί:
1) από <= μέχρι με βήμα >0
2) από >= μέχρι με βήμα <0
3) βήμα <> 0


Από αυτό καταλαβαίνω ότι το βήμα δεν μπορεί να είναι 0.

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

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

Όσον αφορά το β) νομίζω δεν θέλει δικαιολόγηση. Η συγκεκριμένη Για είναι μια από τις χειρότερες προγραμματιστικές δομές που έχω δει.
Δημιουργεί πολλές παρανοήσεις στους μαθητές γιατί η σειρά των βημάτων (έλεγχος, μεταβολή μετρητή, εντολές) δεν φαίνεται ξεκάθαρα όπως στην Όσο.
 
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

bagelis

  • Ομάδα διαγωνισμάτων 2009
  • *
  • Μηνύματα: 506
Απ: Απορία στην ΓΙΑ
« Απάντηση #6 στις: 02 Ιούν 2017, 11:38:20 μμ »
σελίδα 8 οδηγίες διδασκαλίας έτους 2017-18

Είναι αποδεκτή και διδάσκεται η αναφορά του βιβλίου της Γ' ΓΕΛ, δηλαδή αν το βήμα είναι

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

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2922
  • to Iterate is human to Recurse divine
Απ: Απορία στην ΓΙΑ
« Απάντηση #7 στις: 03 Ιούν 2017, 08:56:26 πμ »
σελίδα 8 οδηγίες διδασκαλίας έτους 2017-18
Βγήκαν κιόλας οι οδηγίες για του χρόνου?  :D

Παράθεση
Είναι αποδεκτή και διδάσκεται η αναφορά του βιβλίου της Γ' ΓΕΛ, δηλαδή αν το βήμα είναι
μηδέν, σε κάθε περίπτωση, ο βρόχος εκτελείται άπειρες φορές.
Αυτό προσκρούει στο β) που έλεγα ότι πρέπει να υπάρχει ένας μηχανισμός που να έχει νόημα στην λειτουργία της Για. Η μετατροπή της Για σε Όσο με 2-3 Αν δείχνει ότι κάτι δεν πάει καλά στην όλη θεώρηση.
Πέρα από το γεγονός ότι μια ξερή οδηγία δε μου λέει κάτι, γιατί όπως αυτή η οδηγία αναίρεσε το βιβλίο καθηγητή μπορεί αύριο κάποιος άλλος να στείλει μια άλλη οδηγία που να αναιρεί αυτή. Πέρα από το γεγονός ότι αυτό είναι μειωτικό για το μάθημα δείχνει αντιεπιστημονικότητα. Όλες αυτές οι αποφάσεις πρέπει να έχουν από πίσω ένα σκεπτικό επιστημονικό και παιδαγωγικό.
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

bugman

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 231
  • The Bug Eater
    • Πληροφορική Προγραμματισμός
Απ: Απορία στην ΓΙΑ
« Απάντηση #8 στις: 03 Ιούν 2017, 10:28:21 πμ »
Η  Για πρέπει να έχει καθορισμένο αριθμό επαναλήψεων. Οι άπειρες επαναλήψεις δεν μπορεί να είναι σωστή λειτουργία. Με μηδενικό βήμα η εκτέλεση θα πρέπει να σταματάει και να βγαίνει λάθος. Βήμα, αρχική και τελική τιμή λογαριάζονται μια φορά πριν ξεκινήσει η επανάληψη, άρα η συνθήκη..."το βήμα είναι μηδέν" είναι γνωστή πριν πάει σε "άπειρες" επαναλήψεις. Μόνο αν το θέλει ο κατασκευαστής της υλοποίησης της ΓΛΩΣΣΑΣ μπορεί να αφήσει να μπορεί να μπει η Για σε άπειρες επαναλήψεις.
Δεν υπάρχει περίπτωση να ζητηθεί σε άσκηση μηδενικό βήμα. Δηλαδή μηδενικό βήμα σημαίνει αυτόματα λάθος.
Κάθε πρόγραμμα πρέπει να τερματίζει και αν θεωρήσουμε αποδεκτή την δυνατότητα για άπειρες επαναλήψεις της Για, τότε πρέπει να υπάρχει εντολή  εξόδου από την Για, κάτι σαν Έξοδος Για. Όμως δεν υπάρχει τέτοια εντολή, ούτε παρόμοια για άλλες επαναλήψεις. Άρα ένα πρόγραμμα με Για με μηδενικό βήμα δεν μπορεί προγραμματιστικά να τερματίσει, και αυτό δεν είναι αποδεκτό.

vistrian

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 173
Απ: Απορία στην ΓΙΑ
« Απάντηση #9 στις: 03 Ιούν 2017, 01:12:39 μμ »
ΘΕΜΑ: Οδηγίες για τη διδασκαλία του μαθήματος «Ανάπτυξη Εφαρμογών σε
Προγραμματιστικό Περιβάλλον» της Γ΄ τάξης Ημερήσιου Γενικού Λυκείου για το σχολ. έτος 2015
– 2016


13. Μετατροπές από μία δομή επανάληψης σε άλλη
σελίδα 8

Στο βιβλίο της Β' (ΕΑΕΗΥ σελ 41, στο περιθώριο) Αναφέρεται:
Αν τ1 > τ2 και β=0 δεν θα εκτελεστούν οι εμπεριεχόμενες εντολές, ενώ αν τ1<=τ2 και β=0 θα
εκτελείται άπειρες φορές (ατέρμονας βρόχος).
Στο Βιβλίο της Γ' (ΑΕΠΠ σελ 44, στην παλιά εκτύπωση του βιβλίου) αναφέρεται: "Έτσι το βήμα δεν
μπορεί να είναι μηδέν γιατί τότε ο βρόχος εκτελείται επ'άπειρον".

Είναι αποδεκτή και διδάσκεται η αναφορά του βιβλίου της Γ' ΓΕΛ, δηλαδή αν το βήμα είναι μηδέν,
σε κάθε περίπτωση, ο βρόχος εκτελείται άπειρες φορές.



ΠΑΡΑΡΤΗΜΑ Α
ΟΔΗΓΙΕΣ ΜΕΛΕΤΗΣ ΜΑΘΗΤΗ

σελίδα 15
Ο αριθμός του βήματος μπορεί να είναι θετικός ή αρνητικός και αυτό καθορίζει τον έλεγχο για την επανάληψη. Έτσι έχουμε τις περιπτώσεις:
1. Βήμα =1 : παραλείπεται το ΜΕ_ΒΗΜΑ 1 και η μεταβλητή αυξάνεται κατά +1.
2. Βήμα > 0 : τότε πρέπει να ισχύει τιμή1 ≤ τιμή2 για να εκτελεστεί τουλάχιστον μια φορά ο βρόχος.
3. Βήμα < 0 : τότε πρέπει να ισχύει τιμή ≥ τιμή2 για να εκτελεστεί τουλάχιστον μια φορά ο βρόχος.
4. Βήμα = 0 : τότε ο βρόχος είναι ατέρμων.
Τριανταφύλλου Βησσαρίων
HND in Computing
BSc in Computing
Post.Diploma in Information Systems

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2922
  • to Iterate is human to Recurse divine
Απ: Απορία στην ΓΙΑ
« Απάντηση #10 στις: 03 Ιούν 2017, 04:22:22 μμ »
Στο βιβλίο της Β' (ΕΑΕΗΥ σελ 41, στο περιθώριο) Αναφέρεται:
Αν τ1 > τ2 και β=0 δεν θα εκτελεστούν οι εμπεριεχόμενες εντολές,

Παράθεση
Στο Βιβλίο της Γ' (ΑΕΠΠ σελ 44, στην παλιά εκτύπωση του βιβλίου) αναφέρεται: "Έτσι το βήμα δεν μπορεί να είναι μηδέν γιατί τότε ο βρόχος εκτελείται επ'άπειρον".

Παράθεση
Είναι αποδεκτή και διδάσκεται η αναφορά του βιβλίου της Γ' ΓΕΛ, δηλαδή αν το βήμα είναι μηδέν,
σε κάθε περίπτωση, ο βρόχος εκτελείται άπειρες φορές.


Πολύ σωστά. Διαφορετικές οδηγίες σε διαφορετικά βιβλία και διαφορετικές χρονιές όπως έλεγα και πριν. Τι από όλα ισχύει? Θα μου πείτε η τελευταία οδηγία για το φετινό σχολικό έτος.
Σε αυτή την περίπτωση μπορώ να απαντήσω ότι αυτή η οδηγία ισχύει μέχρι το τέλος του σχολικού έτους, δηλαδή έχει λίγες μέρες ζωής ακόμα. Από 1η Ιούλιου παύει να ισχύει, άρα?

Νομίζω ότι η συγκεκριμένη δομή ήταν εξαρχής προβληματική και θα πρέπει να επανοριστεί με πιο απλούς όρους και με έναν ενιαίο μηχανισμό λειτουργίιας όπως συμβαίνει σε όλες τις γλώσσες (C, Java, Python, κλπ)




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

bugman

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 231
  • The Bug Eater
    • Πληροφορική Προγραμματισμός
Απ: Απορία στην ΓΙΑ
« Απάντηση #11 στις: 03 Ιούν 2017, 08:28:02 μμ »
Σίγουρα μηδενικό βήμα είναι λάθος, και η περιγραφή ότι "τότε ο βρόχος είναι ατέρμων", δίνεται ως αιτιολογία για αποφυγή.

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2922
  • to Iterate is human to Recurse divine
Απ: Απορία στην ΓΙΑ
« Απάντηση #12 στις: 04 Ιούν 2017, 09:49:07 πμ »
@bugman
Συμφωνώ μαζί σου

Όμως επειδή το φόρουμ το παρακολουθούν και μαθητές και οι εξετάσεις πλησιάζουν να πούμε ότι αυτή τη στιγμή αν πέσει τέτοιο θέμα, αυτή τη στιγμή η αποδεκτή απάντηση είναι:
Αν ο βρόχος Για έχει μηδενικό βήμα εκτελείται άπειρες φορές!!
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

Sergio

  • Αστέριος Φανίκος, Καθηγητής Πληροφορικής, fanikosaATschDOTgr
  • Δεινόσαυρος
  • *****
  • Μηνύματα: 783
  • Κάλλιο γνώση, παρά γρόσι.. (ΛΑΪΚΗ ΠΑΡΟΙΜΙΑ)
    • Προσωπική Σελίδα
Απ: Απορία στην ΓΙΑ
« Απάντηση #13 στις: 07 Ιούν 2017, 10:01:04 μμ »
Όμως επειδή το φόρουμ το παρακολουθούν και μαθητές και οι εξετάσεις πλησιάζουν να πούμε ότι αυτή τη στιγμή αν πέσει τέτοιο θέμα, αυτή τη στιγμή η αποδεκτή απάντηση είναι:
Αν ο βρόχος Για έχει μηδενικό βήμα εκτελείται άπειρες φορές!!

Συμφωνώ απόλυτα..

Χωρίς να είμαι σίγουρος όμως, έχω την εντύπωση πως σε κάποιες οδηγίες που στάλθηκαν, υπήρχε αναφορά σε αυτό τον τρόπο "ερμηνείας" μιας ΓΙΑ:

Αν τ1 > τ2 και β=0 δεν θα εκτελεστούν οι εμπεριεχόμενες εντολές, ενώ αν τ1<=τ2 και β=0 θα
εκτελείται άπειρες φορές (ατέρμονας βρόχος).

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

.. πρέπει να υπάρχει ένας μηχανισμός που να έχει νόημα στην λειτουργία της Για..

Νομίζω πως εύκολα μπορούμε να διδάξουμε μια συνεπή "συμπεριφορά - λειτουργία" της ΓΙΑ που να καλύπτει επαρκώς ΚΑΙ τις 2 αναφορές σε σχολικά βιβλία, αν απλά θεωρούμε πως:

ΓΙΑ χ ΑΠΟ α ΜΕΧΡΙ μ ΜΕ_ΒΗΜΑ β

ισοδυναμεί με:

1) όταν β < 0
ΟΣΟ χ >= μ επανάλαβε

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

bagelis

  • Ομάδα διαγωνισμάτων 2009
  • *
  • Μηνύματα: 506
Απ: Απορία στην ΓΙΑ
« Απάντηση #14 στις: 08 Ιούν 2017, 09:47:30 μμ »
Αν τ1 > τ2 και β=0 δεν θα εκτελεστούν οι εμπεριεχόμενες εντολές, ενώ αν τ1<=τ2 και β=0 θα
εκτελείται άπειρες φορές (ατέρμονας βρόχος).

Χωρίς να είμαι σίγουρος όμως, έχω την εντύπωση πως σε κάποιες οδηγίες που στάλθηκαν, υπήρχε αναφορά σε αυτό τον τρόπο "ερμηνείας" μιας ΓΙΑ:

Ας βοηθήσει κάποιος που θυμάται καλύτερα, υπήρχε κάτι σχετικό σε κάποια  φετινή (ή περυσινή) οδηγία / εγκύκλιο;
Αυτά αναφέρει το βιβλίο της Β΄ Λυκείου