Αποστολέας Θέμα: Ασκήσεις και Οδηγίες Μελέτης Μαθητή αναρτημένες στο ΙΕΠ  (Αναγνώστηκε 6378 φορές)

Αθανάσιος Πέρδος

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 288
Στη διεύθυνση http://iep.edu.gr/images/school_books/ASKHSEIS_AEPP_G_HMERHSIA_GEL.pdf-.pdf όπως είναι γνωστό έχουν αναρτηθεί συμπληρωματικές ασκήσεις για το μάθημα.
Θα ήθελα να σταθώ σε κάποια σημεία που αφορούν τα θέματα των διαγωνισμών πληροφορικής.

Γενικές Ασκήσεις μέχρι και την Δομή Επανάληψης

Παρατήρηση 1η
Όπως έχουν διατυπωθεί οι εκφωνήσεις στα θέματα 1, 2, 5 είναι απαραίτητη η χρήση πίνακα για τη λύση τους αν και αναφέρεται ότι είναι γενικές ασκήσεις μέχρι και τη Δομή Επανάληψης.

Παρατήρηση 2η
Τα θέματα 1, και 5, 6 είναι άλυτα με τη ΓΛΩΣΣΑ αφού οι πίνακες είναι στατικές δομές δεδομένων και πρέπει να είναι γνωστό το μέγεθος πριν από την μετάφραση του προγράμματος. Υπενθυμίζω τι συνέβη το 2010 με το περίφημο Γ θέμα αλλά και τις αναφορές που υπάρχουν στις οδηγίες που στάλθηκαν στις 08/12 όπως.
«Να παρουσιασθούν οι Στατικές δομές δεδομένων, με έμφαση στο ότι το ακριβές μέγεθος της απαιτούμενης μνήμης καθορίζεται κατά τη στιγμή του προγραμματισμού τους και ότι τα στοιχεία τους αποθηκεύονται σε συνεχόμενες θέσεις μνήμης»
«Στατικές δομές: Αποθηκεύονται σε συνεχόμενες θέσεις μνήμης και έχουν σταθερό μέγεθος, το οποίο καθορίζεται στην αρχή του προγράμματος. Οι στατικές δομές υλοποιούνται με πίνακες.»
«Πέρα από την διαφορά τους στην αποθήκευση στην κύρια μνήμη, οι μαθητές θα πρέπει να κατανοήσουν ότι για τις στατικές δομές (όπως αντιμετωπίζονται και στο βιβλίο) πρέπει να ορίζουν το μέγεθός τους, πριν από την έναρξη του προγράμματος, στο τμήμα δηλώσεων.»
«Η γλώσσα προγραμματισμού ΓΛΩΣΣΑ, που χρησιμοποιείται στο βιβλίο, υποστηρίζει μόνο στατικές δομές.»


Παρατήρηση 3η
Το θέμα 6ο υπάρχει και στις γενικές ασκήσεις μέχρι τη δομή επανάληψης αλλά και στις ασκήσεις εμπέδωσης στους πίνακες (θέμα 9ο). Και αυτό το πρόβλημα δεν λύνεται χωρίς πίνακα.

Ασκήσεις Εμπέδωσης Πίνακες

Στα θέματα 9, 12, 16 δεν είναι γνωστός ο μέγιστος αριθμός των στοιχείων προς επεξεργασία.


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

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

Επίσης θα υποβάλλω και τα λάθη που έχω εντοπίσει αλλά και που έχουν αναφερθεί και από άλλους συναδέλφους στις ΟΔΗΓΙΕΣ ΜΕΛΕΤΗΣ ΜΑΘΗΤΗ



ether

  • Επισκέπτης
Στη διεύθυνση http://iep.edu.gr/images/school_books/ASKHSEIS_AEPP_G_HMERHSIA_GEL.pdf-.pdf όπως είναι γνωστό έχουν αναρτηθεί συμπληρωματικές ασκήσεις για το μάθημα.
Θα ήθελα να σταθώ σε κάποια σημεία που αφορούν τα θέματα των διαγωνισμών πληροφορικής.

Γενικές Ασκήσεις μέχρι και την Δομή Επανάληψης

Παρατήρηση 1η
Όπως έχουν διατυπωθεί οι εκφωνήσεις στα θέματα 1, 2, 5 είναι απαραίτητη η χρήση πίνακα για τη λύση τους αν και αναφέρεται ότι είναι γενικές ασκήσεις μέχρι και τη Δομή Επανάληψης.
Το θέμα 5 λυνόταν και χωρίς πίνακα έτσι όπως είχε διατυπωθεί στον ΠΔΠ, όπου έλεγε "Το ελάχιστο κοινό πολλαπλάσιο όλων των αριθμών δε θα υπερβαίνει το 2.000.000.000". Εδώ βέβαια δεν αναφέρεται ούτε αυτό.
« Τελευταία τροποποίηση: 07 Απρ 2016, 12:33:13 πμ από ether »

Αθανάσιος Πέρδος

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 288
Το θέμα 5 λυνόταν και χωρίς πίνακα έτσι όπως είχε διατυπωθεί στον ΠΔΠ, όπου έλεγε "Το ελάχιστο κοινό πολλαπλάσιο όλων των αριθμών δε θα υπερβαίνει το 2.000.000.000". Εδώ βέβαια δεν αναφέρεται ούτε αυτό.

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

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

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3147
  • to Iterate is human to Recurse divine
Το 2*109 δεν έχει να κάνει με πίνακα αλλά με τον μέγιστο αριθμό που μπορεί να αναπαραστήσει ο υπολογιστής ή υποστηρίζει η γλώσσα στην οποία δουλεύεις.
Στην ΓΛΩΣΣΑ και στην ψευδογλώσσα το βιβλίο δεν βάζει κάποιο όριο οπότε μπορούμε να χρησιμοποιήσουμε όσο μεγάλο ακέραιο αριθμό θέλουμε (ειδικά στην ψευδογλώσσα)
Αν έχω καταλάβει καλά και μιλάμε για την ίδια άσκηση, δεν αρκεί να διαβάζεις τους αριθμούς έναν-έναν και κάθε φορά να κρατάς το ΕΚΠ? Αν ο επόμενος αριθμός διαιρείται με το ΕΚΠ των προηγούμενων είναι αυτός που ψάχνεις.
Δεν χρειάζεται πουθένα πίνακας.
Αυτό δεν εννοείτε ή έχω καταλάβει κάτι λάθος?

Το θέμα 5 λυνόταν και χωρίς πίνακα έτσι όπως είχε διατυπωθεί στον ΠΔΠ, όπου έλεγε "Το ελάχιστο κοινό πολλαπλάσιο όλων των αριθμών δε θα υπερβαίνει το 2.000.000.000". Εδώ βέβαια δεν αναφέρεται ούτε αυτό.

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

ether

  • Επισκέπτης
Το 2*109 δεν έχει να κάνει με πίνακα αλλά με τον μέγιστο αριθμό που μπορεί να αναπαραστήσει ο υπολογιστής ή υποστηρίζει η γλώσσα στην οποία δουλεύεις.
Στην ΓΛΩΣΣΑ και στην ψευδογλώσσα το βιβλίο δεν βάζει κάποιο όριο οπότε μπορούμε να χρησιμοποιήσουμε όσο μεγάλο ακέραιο αριθμό θέλουμε (ειδικά στην ψευδογλώσσα)
Αν έχω καταλάβει καλά και μιλάμε για την ίδια άσκηση, δεν αρκεί να διαβάζεις τους αριθμούς έναν-έναν και κάθε φορά να κρατάς το ΕΚΠ? Αν ο επόμενος αριθμός διαιρείται με το ΕΚΠ των προηγούμενων είναι αυτός που ψάχνεις.
Δεν χρειάζεται πουθένα πίνακας.
Αυτό δεν εννοείτε ή έχω καταλάβει κάτι λάθος?

Επίσης αν δινόταν η διευκρίνηση που λες νομίζω ότι θα μπέρδευε τους μαθητές περισσότερο γιατί δεν θα ήξεραν που να το χρησιμοποιήσουν αφού δεν έχουν ακούσει καθόλου για περιορισμούς στην αναπαράσταση των αριθμών στην ΓΛΩΣΣΑ
Οι μαθητές μαθαίνουν στο κεφάλαιο 7 του βιβλίου της ΑΕΠΠ ότι:

"Στην πραγματικότητα τα δεδομένα καταχωρίζονται στη μνήμη του υπολογιστή καταλαμβάνοντας συγκεκριμένο αριθμό θέσεων (bytes). Ανάλογα με τον τύπο του δεδομένου και το διατιθέμενο αριθμό bytes ποικίλει και το εύρος τιμών που μπορούν να λάβουν. ‘Ετσι στον υπολογιστή διαθέτουμε ένα υποσύνολο ακεραίων ή πραγματικών αριθμών. Συνήθεις τύποι δεδομένων στις διάφορες γλώσσες προγραμματισμού είναι ο ακέραιος (integer) σε 1, 2 ή 4 bytes και ο πραγματικός (real) σε 4 ή 8 bytes."

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

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

Θέλω να πω ότι το πρόβλημα κάποιου μαθητή μάλλον θα ήταν να σκεφτεί τη λύση με το ελάχιστο κοινό πολλαπλάσιο χωρίς χρήση πίνακα παρά να καταλάβει τι σημαίνει η παραπάνω αναφορά και να μπερδευτεί απ' αυτήν.
« Τελευταία τροποποίηση: 07 Απρ 2016, 01:29:52 μμ από ether »

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3147
  • to Iterate is human to Recurse divine
Οι μαθητές μαθαίνουν στο κεφάλαιο 7 του βιβλίου της ΑΕΠΠ ότι:

"Στην πραγματικότητα τα δεδομένα καταχωρίζονται στη μνήμη του υπολογιστή καταλαμβάνοντας συγκεκριμένο αριθμό θέσεων (bytes). Ανάλογα με τον τύπο του δεδομένου και το διατιθέμενο αριθμό bytes ποικίλει και το εύρος τιμών που μπορούν να λάβουν. ‘Ετσι στον υπολογιστή διαθέτουμε ένα υποσύνολο ακεραίων ή πραγματικών αριθμών. Συνήθεις τύποι δεδομένων στις διάφορες γλώσσες προγραμματισμού είναι ο ακέραιος (integer) σε 1, 2 ή 4 bytes και ο πραγματικός (real) σε 4 ή 8 bytes."

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

Παράθεση
Θέλω να πω ότι το πρόβλημα κάποιου μαθητή μάλλον θα ήταν να σκεφτεί τη λύση με το ελάχιστο κοινό πολλαπλάσιο χωρίς χρήση πίνακα παρά να καταλάβει τι σημαίνει η παραπάνω αναφορά και να μπερδευτεί απ' αυτήν.
τι εννοείς χωρίς χρήση πίνακα; Δηλαδή ποια διαφορά θα υπήρχε αν χρησιμοποιούσες πίνακα? δεν θα είχες πάλι πρόβλημα με μεγάλους αριθμούς? αφού πάλι ο ζητούμενος αριθμός θα ήταν μεγαλύτερος από το ΕΚΠ θα είχες πάλι το ίδιο πρόβλημα. Άρα πάλι θα ήθελες την διευκρίνηση στην οποία αναφέρεσαι είτε χρησιμοποιήσεις πίνακα είτε όχι.
Ο αλγόριθμος αλλάζει στη λογική του και γίνεται πιο εύκολος αλλά χειρότερος από πλευράς απόδοσης αφού είναι brute force πια.

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

ether

  • Επισκέπτης
Πιστεύεις ειλικρινά ότι οι μαθητές μαθαίνουν το παραπάνω? Έχει ποτέ ζητηθεί κάτι τέτοιο σε άσκηση?
Δηλαδή να πρέπει ο μαθητές να σκεφτεί περιορισμό στην αναπαράσταση των αριθμών στη μνήμη?
ή έστω έχει δοθεί ποτέ τέτοια διευκρίνηση?
Φαντάζομαι ότι το πιστεύω τουλάχιστον όσο πιστεύεις εσύ ότι θα μπορούσε ένας μαθητής να σκεφτεί τη λύση με την ιδέα του ελάχιστου κοινού πολλαπλασίου χωρίς χρήση πίνακα.

τι εννοείς χωρίς χρήση πίνακα; Δηλαδή ποια διαφορά θα υπήρχε αν χρησιμοποιούσες πίνακα? δεν θα είχες πάλι πρόβλημα με μεγάλους αριθμούς? αφού πάλι ο ζητούμενος αριθμός θα ήταν μεγαλύτερος από το ΕΚΠ θα είχες πάλι το ίδιο πρόβλημα. Άρα πάλι θα ήθελες την διευκρίνηση στην οποία αναφέρεσαι είτε χρησιμοποιήσεις πίνακα είτε όχι.
Από πού προκύπτει ότι ο ζητούμενος αριθμός θα είναι μεγαλύτερος από το ΕΚΠ;

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

Ακόμη, αν χρησιμοποιήσω πίνακα μπορώ να το λύσω (με brute force) ακόμη κι αν η γλώσσα που χρησιμοποιώ δεν έχει τύπο δεδομένων που να μπορεί να αναπαραστήσει έναν αριθμό τόσο μεγάλο όσο το ελάχιστο κοινό πολλαπλάσιο όλων των δεδομένων εισόδου.
Συνεπώς, υπάρχει διαφορά και δε χρειάζεται η διευκρίνηση για το ΕΚΠ για τη brute force λύση με πίνακα.

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

Αθανάσιος Πέρδος

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 288
Αν και o ether με καλύπτει πλήρως σε αυτά που γράφει θέλω να προσθέσω δύο πράγματα.

Το 2*109 δεν έχει να κάνει με πίνακα αλλά με τον μέγιστο αριθμό που μπορεί να αναπαραστήσει ο υπολογιστής ή υποστηρίζει η γλώσσα στην οποία δουλεύεις.
Στην ΓΛΩΣΣΑ και στην ψευδογλώσσα το βιβλίο δεν βάζει κάποιο όριο οπότε μπορούμε να χρησιμοποιήσουμε όσο μεγάλο ακέραιο αριθμό θέλουμε (ειδικά στην ψευδογλώσσα)

...αφού δεν έχουν ακούσει καθόλου για περιορισμούς στην αναπαράσταση των αριθμών στην ΓΛΩΣΣΑ
Η αναφορά του ether στη σελίδα 129 του βιβλίου (έκδοση 2014) δίπλα από την παράγραφο 7.2 Τύποι Δεδομένων μιλάει σαφέστατα για εύρος τιμών. Άρα αυτό που λες δεν ισχύει.

Επίσης (το λέει και ether) φέτος οι μαθητές εξετάζονται σε ΓΛΩΣΣΑ και όχι σε ψευδογλώσσα όπως αναφέρεται στις οδηγίες της 08/12:
Οι Αλγόριθμοι να υλοποιούνται σε αμιγώς προγραμματιστικό περιβάλλον και συγκεκριμένα αυτό της ΓΛΩΣΣΑΣ. (Σελ 1)
Επίσης να παρουσιασθούν, οι τύποι δεδομένων που υποστηρίζει η γλώσσα, οι μεταβλητές και οι σταθερές. Να αναλυθούν θέματα όπως: η διαφορά μεταβλητής και σταθεράς, η  σχέση της μεταβλητής με τη μνήμη και οι κανόνες ονοματολογίας στις μεταβλητές. Να δοθούν παραδείγματα και ασκήσεις. (Σελ 5)
Το μάθημα να διδαχθεί στο εργαστήριο και ο καθηγητής να παρουσιάσει και έτοιμες ασκήσεις, όπου οι μαθητές μπορούν στη συνέχεια να τις εκτελέσουν στον Η/Υ. (σελ 6)


Ο Διερμηνευτής της ΓΛΩΣΣΑΣ όπου για παράδειγμα θα εκτελεστούν τα προγράμματα σαφέστατα έχει όριο στο εύρος των τιμών που μπορεί να διαχειριστεί.

Μάλιστα εγώ δίνω στους μαθητές μου συγκεκριμένο παράδειγμα για να δείξω ακριβώς τα υπολογιστικά όρια.

Το βακτήριο E. coli διαιρείται, σε ιδανικές συνθήκες, κάθε 20 min. Να αναπτύξετε πρόγραμμα το οποίο θα υπολογίζει πόσα βακτήρια θα προκύψουν σε 15 μέρες από ένα αρχικό βακτήριο και  να εμφανίζει επίσης μετά από κάθε διαίρεση το τρέχον πλήθος των βακτηρίων.

Η λύση που παίρνω πανώ κάτω είναι η ακόλουθη:
Κώδικας: [Επιλογή]
ΠΡΟΓΡΑΜΜΑ Παράδειγμα
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Λ, Λ15
  ΠΡΑΓΜΑΤΙΚΕΣ: ΠΛ
ΑΡΧΗ
  ΠΛ <- 1
  Λ15 <- 60*24* 15
  Λ <- 0
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    Λ <- Λ + 20
    ΠΛ <- ΠΛ* 2
    ΓΡΑΨΕ ΠΛ
  ΜΕΧΡΙΣ_ΟΤΟΥ Λ >= Λ15
  ΓΡΑΨΕ 'Ο αριθμός των βακτηρίων σε 15 ημέρες είναι ', ΠΛ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Όπως φαίνεται ακόμη και πραγματική να δηλωθεί η μεταβλητή πλήθος, το μήνυμα που βγάζει ο Διερμηνευτής είναι:
....
8.98846567431158E307
Σφάλμα «Υπερχείλιση πραγματικού αριθμού» κατά τον υπολογισμό της πράξης «*». Τιμές ορισμάτων:
«ΠΛ» = 8.98846567431158E307
«2» = 2

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


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

bugman

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 380
  • The Bug Eater
    • Πληροφορική Προγραμματισμός
Μια ιδέα είναι να έχουμε μια δεύτερη μεταβλητή που θα κρατάει έναν πολλαπλασιαστή. Κάθε φορά που η βασική μας μεταβλητή περνάει ένα όριο που βάζουμε κάνουμε διαίρεση δια 1000 και πολλαπλασιασμό επί 1000 της βοηθητικής. Στο τέλος παρουσιάζούμε γινόμενο, ή αν έχουμε κέφι ονομάζουμε την τάξη μεγέθους της βοηθητικής, Το 1000 μπορεί να αλλάζει αν έχουμε αύξηση της βασικής μεταβλητής με εκθετική μεταβολή.

itt

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 428
  • Real stupidity beats ΑΙ any time
Αν και o ether με καλύπτει πλήρως σε αυτά που γράφει θέλω να προσθέσω δύο πράγματα.
Η αναφορά του ether στη σελίδα 129 του βιβλίου (έκδοση 2014) δίπλα από την παράγραφο 7.2 Τύποι Δεδομένων μιλάει σαφέστατα για εύρος τιμών. Άρα αυτό που λες δεν ισχύει.

Επίσης (το λέει και ether) φέτος οι μαθητές εξετάζονται σε ΓΛΩΣΣΑ και όχι σε ψευδογλώσσα όπως αναφέρεται στις οδηγίες της 08/12:
Οι Αλγόριθμοι να υλοποιούνται σε αμιγώς προγραμματιστικό περιβάλλον και συγκεκριμένα αυτό της ΓΛΩΣΣΑΣ. (Σελ 1)
Επίσης να παρουσιασθούν, οι τύποι δεδομένων που υποστηρίζει η γλώσσα, οι μεταβλητές και οι σταθερές. Να αναλυθούν θέματα όπως: η διαφορά μεταβλητής και σταθεράς, η  σχέση της μεταβλητής με τη μνήμη και οι κανόνες ονοματολογίας στις μεταβλητές. Να δοθούν παραδείγματα και ασκήσεις. (Σελ 5)
Το μάθημα να διδαχθεί στο εργαστήριο και ο καθηγητής να παρουσιάσει και έτοιμες ασκήσεις, όπου οι μαθητές μπορούν στη συνέχεια να τις εκτελέσουν στον Η/Υ. (σελ 6)


Mιλάει για εύρος τιμών στην "πραγματικότητα', δεν καθορίζει πουθένα τι εύρος έχει ο ακέραιος στη ΓΛΩΣΣΑ. Επίσης η σχέση της μεταβλητής με τη μνήμη δεν σημαίνει απαραίτητα ότι πρέπει να περιορίσεις τον τύπο της μεταβλητής ως προς το εύρος του, μπορείς να υποθέσεις ότι έχει arbitrary μέγεθος, αφού πουθενά δεν ορίζεται επίσημα πώς αναπαριστάται.

ether

  • Επισκέπτης
Mιλάει για εύρος τιμών στην "πραγματικότητα', δεν καθορίζει πουθένα τι εύρος έχει ο ακέραιος στη ΓΛΩΣΣΑ. Επίσης η σχέση της μεταβλητής με τη μνήμη δεν σημαίνει απαραίτητα ότι πρέπει να περιορίσεις τον τύπο της μεταβλητής ως προς το εύρος του, μπορείς να υποθέσεις ότι έχει arbitrary μέγεθος, αφού πουθενά δεν ορίζεται επίσημα πώς αναπαριστάται.
Θεωρείς ότι παρόλο που το βιβλίο δεν κάνει καμία αναφορά σε δυνατότητα arbitrary μεγέθους, παρόλο που το βιβλίο αναφέρει αυτά που αναφέρθηκαν σε προηγούμενο μήνυμα, παρόλο που οι υλοποιήσεις της ΓΛΩΣΣΑΣ που έχουμε στη διάθεσή μας έχουν όριο μεγέθους, είναι εύλογο ένας μαθητής να υποθέσει ότι η ΓΛΩΣΣΑ υποστηρίζει arbitrary μέγεθος αλλά απίθανο να υποθέσει ότι και σε υλοποιήσεις της ΓΛΩΣΣΑΣ υπάρχει κάποιο όριο που δεν αναφέρεται -είτε εσκεμμένα γιατί μπορεί να θεωρηθεί θέμα υλοποίησης είτε ατυχώς, ως η μόνη ασάφεια- στο βιβλίο; Και ότι μια τέτοια αναφορά σε όριο μεγέθους για το ΕΚΠ στην εκφώνηση του συγκεκριμένου προβλήματος θα τον μπέρδευε, ενώ θα ήταν κατά τα άλλα σε θέση να σκεφτεί και να υλοποιήσει τη λύση με το ΕΚΠ αν δεν υπήρχε αυτή η αναφορά στο όριο μεγέθους;

itt

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 428
  • Real stupidity beats ΑΙ any time
Θεωρείς ότι παρόλο που το βιβλίο δεν κάνει καμία αναφορά σε δυνατότητα arbitrary μεγέθους, παρόλο που το βιβλίο αναφέρει αυτά που αναφέρθηκαν σε προηγούμενο μήνυμα, παρόλο που οι υλοποιήσεις της ΓΛΩΣΣΑΣ που έχουμε στη διάθεσή μας έχουν όριο μεγέθους, είναι εύλογο ένας μαθητής να υποθέσει ότι η ΓΛΩΣΣΑ υποστηρίζει arbitrary μέγεθος αλλά απίθανο να υποθέσει ότι και σε υλοποιήσεις της ΓΛΩΣΣΑΣ υπάρχει κάποιο όριο που δεν αναφέρεται -είτε εσκεμμένα γιατί μπορεί να θεωρηθεί θέμα υλοποίησης είτε ατυχώς, ως η μόνη ασάφεια- στο βιβλίο;

Θεωρώ ότι δεν θα τον έχει απασχολήσει ποτέ, ούτε θα έπρεπε να τον απασχολήσει ποτέ, αν χωράει το 2 * 109 σε ακέραιο της ΓΛΩΣΣΑΣ. Εφόσον δεν ορίζεται όριο πουθενά στην ύλη, δεν υπάρχει όριο.

Και ότι μια τέτοια αναφορά σε όριο μεγέθους για το ΕΚΠ στην εκφώνηση του συγκεκριμένου προβλήματος θα τον μπέρδευε, ενώ θα ήταν κατά τα άλλα σε θέση να σκεφτεί και να υλοποιήσει τη λύση με το ΕΚΠ αν δεν υπήρχε αυτή η αναφορά στο όριο μεγέθους;

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

ether

  • Επισκέπτης
Θεωρώ ότι δεν θα τον έχει απασχολήσει ποτέ, ούτε θα έπρεπε να τον απασχολήσει ποτέ, αν χωράει το 2 * 109 σε ακέραιο της ΓΛΩΣΣΑΣ. Εφόσον δεν ορίζεται όριο πουθενά στην ύλη, δεν υπάρχει όριο.
Αυτό που θα τον απασχολούσε με την αναφορά της εκφώνησης στη μέγιστη τιμή του ΕΚΠ δεν είναι αν χωράει το 2 * 109 σε ακέραιο της ΓΛΩΣΣΑΣ αλλά αν χωράει το ΕΚΠ όλων των δεδομένων εισόδου σε ακέραιο της ΓΛΩΣΣΑΣ.
Επίσης, το ότι δεν αναφέρεται το όριο σημαίνει ότι δεν αναφέρεται, δε σημαίνει ότι δεν υπάρχει. Στις "πραγματικές" γλώσσες προγραμματισμού που υποστηρίζουν τύπους χωρίς όριο μεγέθους, τι από τα δύο συμβαίνει σε ότι αφορά στις προδιαγραφές αυτών των γλωσσών και των υλοποιήσεών τους: δεν αναφέρεται τίποτα για το μέγιστο μέγεθος ή αναφέρεται ότι είναι "απεριόριστο";
π.χ.
στην Python αναφέρει: "Long integers have unlimited precision." (https://docs.python.org/2/library/stdtypes.html#typesnumeric),
στην Java αναφέρει για την κλάση BigInteger: "Immutable arbitrary-precision integers." (https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html)
ενώ με το δικό σου σκεπτικό θα μπορούσαν να μην αναφέρουν τίποτα.
Αν λοιπόν το βιβλίο περιέγραφε σοβαρά τις προδιαγραφές της ΓΛΩΣΣΑΣ, μάλλον είτε θα ανέφερε όριο είτε θα ανέφερε ότι δεν υπάρχει.

Δεν μπορώ να σου απαντήσω, αλλά και τα 5 λεπτά που μπορεί να χάσεις κάποιος για να σκεφτεί γιατί ο ποιητής αναφέρει κάτι που δεν έχει αναφερθεί πουθενά ένα χρόνο τώρα, θα μπορούσαν να είναι πολύτιμα.
Το ότι δεν έχει αναφερθεί ένα χρόνο τώρα εξαρτάται μάλλον από το τι του είπαν οι καθηγητές του και το πόσο σχολαστικά διάβασε ο ίδιος το βιβλίο. Επίσης, αυτό που αναφέρει ο ποιητής είναι αυτό που σου επιτρέπει να δώσεις μια γρήγορη λύση σε μια γλώσσα που δεν υποστηρίζει απεριόριστο μέγεθος.
« Τελευταία τροποποίηση: 08 Απρ 2016, 12:05:52 πμ από ether »

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3147
  • to Iterate is human to Recurse divine
Από πού προκύπτει ότι ο ζητούμενος αριθμός θα είναι μεγαλύτερος από το ΕΚΠ;
Εννοώ ότι ο ζητούμενος αριθμός θα είναι μεγαλύτερος από το ΕΚΠ των αριθμών πριν από αυτόν. Αυτό δεν έχει σημασία στον αλγόριθμο?

Παράθεση
Επίσης, σε κάθε πρόβλημα που δε μου δίνεται κάποια διευκρίνηση, είναι εύλογο να υποθέσω ότι τα δεδομένα και τα ζητούμενα θα είναι τέτοια που να μπορούν να αναπαρασταθούν από κάποιους από τους τύπους δεδομένων που υποστηρίζει η γλώσσα που χρησιμοποιώ.
ακριβώς!!! πολύ σωστά το είπες. Τα δεδομένα και τα ζητούμενα!
Στην συγκεκριμένη περίπτωση θα έλεγα ότι το ΕΚΠ είναι κατά κάποιο τρόπο.... ζητούμενο

Όταν κάποιος σου λέει να βρεις το ΕΚΠ δέκα αριθμών σε ΓΛΩΣΣΑ , δεν υποννοεί ότι αυτό θα είναι τέτοιο που να μπορεί να αναπαρασταθεί σε ΓΛΩΣΣΑ? όταν σου ζητάει να βρεις κάτι που απαιτεί ενδιάμεσα να βρεις το ΕΚΠ δεν είναι το ίδιο? Νομίζω ότι αυτό που έχεις γράψει είναι αυτονόητο και σε αυτή την περίπτωση.

Θεωρώ ότι δεν θα τον έχει απασχολήσει ποτέ, ούτε θα έπρεπε να τον απασχολήσει ποτέ, αν χωράει το 2 * 109 σε ακέραιο της ΓΛΩΣΣΑΣ. Εφόσον δεν ορίζεται όριο πουθενά στην ύλη, δεν υπάρχει όριο.
Πολύ σωστά itt, θα το έλεγα καλύτερα,

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

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

Το ότι κάνουμε ΓΛΩΣΣΑ δεν σημαίνει ότι μας ενδιαφέρει περισσότερο το συντακτικό κομμάτι και οι τεχνικές λεπτομέρειες από ότι ο αλγόριθμος.
Πάντως τόσα χρόνια που γίνεται το μάθημα δεν έχει τεθεί ποτέ τέτοιο θέμα, ούτε στο βιβλίο , ούτε στο τετράδιο του μαθητή που έχει τόσες ασκήσεις με αριθμούς ούτε πουθενά. Αυτό κάτι θα σημαίνει. Με το σκεπτικό που το παρουσιάζεις ether , θα έπρεπε σε κάθε άσκηση που εμπλέκονται υπολογισμοί να υπάρχει μια λίστα από περιορισμούς.
Έτσι όμως χάνουμε το δάσος και ασχολούμαστε με το δέντρο.

Τες πα η λύση με ΕΚΠ είναι μια χαρά και όποιος μαθητής τη σκεφτεί μπράβο του. Δε νομίζω να του πει κανείς ότι είναι λάθος.

Επίσης ο itt έχει δίκιο στο γεγονός ότι η συγκεκριμένη παράθεση που γράφτηκε πιο πάνω από το βιβλίο στη σελίδα 129 και αναφέρεται σε όριο για τους ακεραίους δεν έχει καμία σχέση με τη ΓΛΩΣΣΑ γιατί ξεκινάει με το "στην πραγματικότητα", και εσφαλμένα χρησιμοποιήθηκε ως επιχείρημα.
Προηγουμένως που ορίζονται οι ακέραιοι στη ΓΛΩΣΣΑ δεν γίνεται καμία κουβέντα για όριο ακεραίων άρα τσάμπα συζητάμε το θέμα. Νομίζω ότι το μάθημα και οι σημειώσεις έχουν πολύ σοβαρότερα προβλήματα.
« Τελευταία τροποποίηση: 08 Απρ 2016, 12:58:21 πμ από evry »
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

Αθανάσιος Πέρδος

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 288
Αν θα γράψετε compiler με arbitrary μέγεθος και μπορούν οι μαθητές μου να τρέχουν τη λύση που προτείνετε τότε κανένα πρόβλημα.
Σε αυτά τα περιβάλλοντα που δουλεύουν στο σχολικό εργαστήριο άρα στην πραγματικότητα όπως έδειξα με τις 5 γραμμές κώδικα παραπάνω, η λύση που προτείνετε δεν δουλεύει.

Και για να το πω απλά. Τόσα χρόνια η ΓΛΩΣΣΑ είναι μία υποθετική γλώσσα προγραμματισμού (Τετράδιο μαθητή σελ 9) η οποία περιέχει τα χαρακτηριστικά, τις δομές και τις εντολές που περιέχονται σε διάφορες σύγχρονες γλώσσες προγραμματισμού όπως η Pascal, Visual Basic, C, C+ +, Java και άλλες, χωρίς όμως να ασχολείται με τις τεχνικές λεπτομέρειες αυτών (Βιβλίο μαθητή σελ 127).
Φέτος όμως, με βάση τις οδηγίες, οι Αλγόριθμοι να υλοποιούνται σε αμιγώς προγραμματιστικό περιβάλλον και συγκεκριμένα αυτό της ΓΛΩΣΣΑΣ και οι οι μαθητές να μπορούν στη συνέχεια να τις εκτελέσουν στον Η/Υ. Άσε λοιπόν Ευριπίδη τις αναφορές περί λανθασμένης επιχειρηματολογίας που προκύπτει από τη σελίδα 129 και πες μας τι θα έλεγες στους μαθητές σου όταν θα εμφανίζονταν η υπερχείλιση.   

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

Πρέπει να αναδιατυπωθούν ή όχι; Αυτό είναι το ζητούμενο.
« Τελευταία τροποποίηση: 08 Απρ 2016, 07:56:17 πμ από Αθανάσιος Πέρδος »

itt

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 428
  • Real stupidity beats ΑΙ any time
Αυτό που θα τον απασχολούσε με την αναφορά της εκφώνησης στη μέγιστη τιμή του ΕΚΠ δεν είναι αν χωράει το 2 * 109 σε ακέραιο της ΓΛΩΣΣΑΣ αλλά αν χωράει το ΕΚΠ όλων των δεδομένων εισόδου σε ακέραιο της ΓΛΩΣΣΑΣ.

Το οποίο είναι αυτό που συζητάμε;

Επίσης, το ότι δεν αναφέρεται το όριο σημαίνει ότι δεν αναφέρεται, δε σημαίνει ότι δεν υπάρχει.

Όχι, σημαίνει ότι δεν υπάρχει, αφού δεν αναφέρεται άρα και δεν ορίζεται.

Στις "πραγματικές" γλώσσες προγραμματισμού που υποστηρίζουν τύπους χωρίς όριο μεγέθους, τι από τα δύο συμβαίνει σε ότι αφορά στις προδιαγραφές αυτών των γλωσσών και των υλοποιήσεών τους: δεν αναφέρεται τίποτα για το μέγιστο μέγεθος ή αναφέρεται ότι είναι "απεριόριστο";
π.χ.
στην Python αναφέρει: "Long integers have unlimited precision." (https://docs.python.org/2/library/stdtypes.html#typesnumeric),
στην Java αναφέρει για την κλάση BigInteger: "Immutable arbitrary-precision integers." (https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html)
ενώ με το δικό σου σκεπτικό θα μπορούσαν να μην αναφέρουν τίποτα.

Το δικό μου σκεπτικό δεν έχει να κάνει με τις πραγματικές γλώσσες προγραμματισμού. Αν είχαμε specification της ΓΛΩΣΣΑΣ που όριζε τι ό,τι χρειαζόμασταν θα ήταν όλα πολύ καλά (εντάξει, προφανώς και πάλι θα κάναμε τους δικηγόρους πάνω στο spec αλλά τουλάχιστον θα είχαμε κάτι) αλλά δεν έχουμε και στο βιβλίο δεν ορίζει πουθενά όρια στους ακέραιους για τη ΓΛΩΣΣΑ, τι να κάνουμε;

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

Δεν καταλαβαίνω τι σχέση έχει αυτό που έγραψες. Το ότι δεν προσφέρει η υλοποίηση της ΓΛΩΣΣΑΣ που χρησιμοποιείς arbitrary ακέραιο, είναι πρόβλημα της υλοποίησης, όχι δικό μας.


Φέτος όμως, με βάση τις οδηγίες, οι Αλγόριθμοι να υλοποιούνται σε αμιγώς προγραμματιστικό περιβάλλον και συγκεκριμένα αυτό της ΓΛΩΣΣΑΣ και οι οι μαθητές να μπορούν στη συνέχεια να τις εκτελέσουν στον Η/Υ. Άσε λοιπόν Ευριπίδη τις αναφορές περί λανθασμένης επιχειρηματολογίας που προκύπτει από τη σελίδα 129 και πες μας τι θα έλεγες στους μαθητές σου όταν θα εμφανίζονταν η υπερχείλιση.   

Δεν μιλάω εκ μέρους του Ευριπίδη, αλλά θα σου απαντήσω τι θα τους έλεγα εγώ. Έχουμε υπερχείλιση επειδή η υλοποίηση της ΓΛΩΣΣΑΣ που χρησιμοποιούμε δεν υποστηρίζει arbitrary precision ακεραίους. Το πρόγραμμα δεν είναι λάθος γραμμένο, αφού πουθενά δεν ορίζεται πώς πρέπει να αναπαρίσταται ο ακέραιος και οπότε δεν προκύπτουν περιορισμοί για το εύρος του.

Αν σε απασχολεί τόσο πολύ το τι κάνει ο interpreter, ο Άλκης υποθέτω ότι διανείμει τον κώδικα ελεύθερα, κάνε ένα patch λοιπόν που θα χρησιμοποιεί την GMP ή κάτι τέτοιο και το πρόβλημα λύθηκε;

Αθανάσιος Πέρδος

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 288
Εντάξει itt ευχαριστώ για τις παρατηρήσεις σου.

Το κείμενο που θα αποστείλω σχετικά με το ζήτημα θα είναι το εξής:

Ένα θέμα που προέκυψε φέτος με τις υλοποιήσεις της ΓΛΩΣΣΑΣ στο σχολικό εργαστήριο είναι ότι δεν υποστηρίζουν arbitrary precision ακεραίους.
Στο σχολικό βιβλίο δεν ορίζεται πουθενά το εύρος τιμών των ακεραίων. Αυτό οδηγεί πολλούς συναδέλφους να θεωρούν ότι η ΓΛΩΣΣΑ υποστηρίζει  arbitrary precision ακεραίους.
Από την άλλη στο σχολικό βιβλίο ακριβώς δίπλα από την περιγραφή αριθμητικών τύπων δεδομένων στη σελίδα 129 υπάρχει σχόλιο για το τι συμβαίνει στην πραγματικότητα και αναφέρει ότι υπάρχει όριο στο εύρος τιμών που μπορούν να αποδοθούν σε μία ακέραια μεταβλητή. Αυτό οδηγεί άλλους συναδέλφους να θεωρούν ότι στη ΓΛΩΣΣΑ, η οποία μέχρι φέτος ήταν μια υποθετική γλώσσα προγραμματισμού αλλά με βάση τις οδηγίες από φέτος δεν είναι αφού οι μαθητές πρέπει να εκτελούν τα προγράμματα σε Η/Υ, οι ακέραιοι μπορούν να δεχτούν συγκεκριμένο εύρος τιμών.

Το όλο θέμα προέκυψε από την 5η άσκηση της δομής επανάληψης η οποία προέρχεται από τους διαγωνισμούς πληροφορικής και είναι αναρτημένη στο ΙΕΠ ως υποστηρικτικό υλικό και τον τρόπο λύσης της. Από τη μία η άσκηση δεν μπορεί να λυθεί με τις υπάρχουσες υλοποιήσεις της ΓΛΩΣΣΑΣ γιατί υπάρχει πιθανότητα τιμή που θα αποδοθεί σε μεταβλητή να ξεπερνά το εύρος τιμών που μπορούν να χειριστούν οι υλοποιήσεις και από την άλλη δεν μπορεί να χρησιμοποιηθεί πίνακας αφού δεν είναι γνωστό το μέγεθος των στοιχείων προς επεξεργασία.


Αν έχεις itt κάποια παρατήρηση ακόμη ευχαρίστως να την συμπεριλάβω.
Επίσης θεωρώ ότι συμφωνείτε τόσο εσύ όσο και ο Ευριπίδης με όσα έγραψα για τις άλλες ασκήσεις μιας και δεν τις έχετε σχολιάσει.
Δηλαδή ότι δεν λύνονται με ΓΛΩΣΣΑ και ότι η ομάδα εργασίας πρέπει να τις επαναδιατυπώσει.
Φυσικά θα συμπεριλάβω και οποιαδήποτε παρατήρηση συναδέλφων που παρακολουθούν το post και θέλουν να παρέμβουν.

ολγα

  • Βετεράνος
  • ****
  • Μηνύματα: 70
Α) Όσον αφορά το μέγεθος του ακέραιου στη Γλώσσα συμφωνώ 100% με  το σκεπτικό του evry και toy itt. Δεν πρέπει να μας απασχολεί κάτι τέτοιο στο  μάθημα αυτό.

Β) Στις γενικές ασκήσεις μέχρι και τη Δομή Επανάληψης:
-  η 6 νομίζω λύνεται και χωρίς πίνακα (απ’ ότι είδα βιαστικά). Δε βλέπω κάποιο πρόβλημα εκεί που είναι.
- η 1 νομίζω πρέπει να παραμείνει στις γενικές ασκήσεις μέχρι και τη Δομή Επανάληψης (είναι πολύ καλή άσκηση στην κατηγορία αυτή), απλώς θα πρέπει να αλλάξει λίγο η εκφώνηση και στη θέση της πρότασης 
«Το πρόγραμμα θα εμφανίζει τον αριθμό των νικητών του αγωνίσματος και τη σειρά συμμετοχής, που αυτός /αυτοί είχε/είχαν.»
να γίνει:   
«Το πρόγραμμα θα εμφανίζει τον αριθμό των νικητών του αγωνίσματος και σε περίπτωση που υπάρχει ένας μόνο νικητής τη σειρά συμμετοχής που αυτός  είχε.»
- η 2 μάλλον πρέπει να μπει στους πίνακες.

Γ) Στις Ασκήσεις Εμπέδωσης Πίνακες
Στα θέματα 9, 12, 16 αν και δεν είναι γνωστός ο μέγιστος αριθμός των στοιχείων προς επεξεργασία θα έλεγα ο διδάσκων να προσθέσει μια διευκρίνιση του στυλ «Το πρόγραμμα να δέχεται σαν μέγιστη τιμή του Ν τον αριθμό (π.χ.) 1000» παρά να πετάξει στον Καιάδα τρεις ενδιαφέρουσες ασκήσεις.

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

Αθανάσιος Πέρδος

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 288
Β) Στις γενικές ασκήσεις μέχρι και τη Δομή Επανάληψης:
-  η 6 νομίζω λύνεται και χωρίς πίνακα (απ’ ότι είδα βιαστικά). Δε βλέπω κάποιο πρόβλημα εκεί που είναι.
Εγώ δεν μπορώ να τη λύσω χωρίς πίνακα. Για αυτό ζήτησα και τη συνδρομή των συναδέλφων. Αν έχεις λύση θα ήθελα πολύ να τη δω.


Γ) Στις Ασκήσεις Εμπέδωσης Πίνακες
Στα θέματα 9, 12, 16 αν και δεν είναι γνωστός ο μέγιστος αριθμός των στοιχείων προς επεξεργασία θα έλεγα ο διδάσκων να προσθέσει μια διευκρίνιση του στυλ «Το πρόγραμμα να δέχεται σαν μέγιστη τιμή του Ν τον αριθμό (π.χ.) 1000» παρά να πετάξει στον Καιάδα τρεις ενδιαφέρουσες ασκήσεις.

Δεν πετάει κανένας ασκήσεις στον Καιάδα. Δες τι έγραψα και τι πρότεινα στο αρχικό μήνυμά μου.

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



Υ.Γ. Έχει πολλή ομορφιά το μάθημα αυτό, ας μην το χαλάμε διυλίζοντας τον κώνωπα. Μέχρι και χτες με ρώτησε μαθητής αν πρέπει να γράφει τα προγράμματα με κεφαλαία!!!
Συγγνώμη αλλά η επισήμανση ότι υπάρχουν λάθη σε έγγραφο αναρτημένο στο ΙΕΠ κατά την άποψη μου δεν διυλίζει τον κώνωπα και ούτε έχει καμία σχέση με το αν ο καθηγητής ή η καθηγήτρια στο σχολείο ή στο φροντιστήριο του μαθητή που σε ρώτησε, δεν είναι καλά ενημερωμένος/ ενημερωμένη και του λέει να γράφει με κεφαλαία.
Η επισήμανση αναδεικνύει την αστοχία ώστε να διορθωθεί.   

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 5028
    • alkisg@im.sch.gr
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Επειδή δεν παρακολούθησα αναλυτικά τη συζήτηση, να αναφέρω μόνο ένα μικρό σημείο, ότι αν κάποια γλώσσα χρησιμοποιεί βιβλιοθήκη τύπων άπειρης ακρίβειας, τότε σ' αυτήν την γλώσσα το
i <- i + 1
δεν εκτελείται πια σε Ο(1) αλλά σε Ο(μέγεθος του i σε bit, συν χρόνος για realloc όταν χρειάζεται).

Δηλαδή δεν μπορούμε και να υποθέτουμε άπειρη ακρίβεια και να υποθέτουμε ότι η προσπέλαση μεταβλητών γίνεται σε Ο(1).

Μπορούμε όμως να περιορίσουμε το πεδίο τιμών της εισόδου (να εννοείται κατά την εκφώνηση των προβλημάτων) ώστε να θεωρούμε ότι οι τύποι δεδομένων που έχουμε είναι επαρκείς και δεν χρειάζεται να μας απασχολούν κατά την επίλυση των ασκήσεων. Είτε σε δυσκολότερα προβλήματα όπως το ΕΚΠ, είτε σε απλούστερα όπως το a <- b*c, η πιθανότητα υπερχείλισης υφίσταται, το αν θα αναφερθούμε ή όχι σε αυτήν δεν εξαρτάται και τόσο πολύ από το ίδιο το πρόβλημα παρά από την διδακτέα ύλη.

itt

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 428
  • Real stupidity beats ΑΙ any time
Εντάξει itt ευχαριστώ για τις παρατηρήσεις σου.

Το κείμενο που θα αποστείλω σχετικά με το ζήτημα θα είναι το εξής:

Ένα θέμα που προέκυψε φέτος με τις υλοποιήσεις της ΓΛΩΣΣΑΣ στο σχολικό εργαστήριο είναι ότι δεν υποστηρίζουν arbitrary precision ακεραίους.
Στο σχολικό βιβλίο δεν ορίζεται πουθενά το εύρος τιμών των ακεραίων. Αυτό οδηγεί πολλούς συναδέλφους να θεωρούν ότι η ΓΛΩΣΣΑ υποστηρίζει  arbitrary precision ακεραίους.
Από την άλλη στο σχολικό βιβλίο ακριβώς δίπλα από την περιγραφή αριθμητικών τύπων δεδομένων στη σελίδα 129 υπάρχει σχόλιο για το τι συμβαίνει στην πραγματικότητα και αναφέρει ότι υπάρχει όριο στο εύρος τιμών που μπορούν να αποδοθούν σε μία ακέραια μεταβλητή. Αυτό οδηγεί άλλους συναδέλφους να θεωρούν ότι στη ΓΛΩΣΣΑ, η οποία μέχρι φέτος ήταν μια υποθετική γλώσσα προγραμματισμού αλλά με βάση τις οδηγίες από φέτος δεν είναι αφού οι μαθητές πρέπει να εκτελούν τα προγράμματα σε Η/Υ, οι ακέραιοι μπορούν να δεχτούν συγκεκριμένο εύρος τιμών.

Το όλο θέμα προέκυψε από την 5η άσκηση της δομής επανάληψης η οποία προέρχεται από τους διαγωνισμούς πληροφορικής και είναι αναρτημένη στο ΙΕΠ ως υποστηρικτικό υλικό και τον τρόπο λύσης της. Από τη μία η άσκηση δεν μπορεί να λυθεί με τις υπάρχουσες υλοποιήσεις της ΓΛΩΣΣΑΣ γιατί υπάρχει πιθανότητα τιμή που θα αποδοθεί σε μεταβλητή να ξεπερνά το εύρος τιμών που μπορούν να χειριστούν οι υλοποιήσεις και από την άλλη δεν μπορεί να χρησιμοποιηθεί πίνακας αφού δεν είναι γνωστό το μέγεθος των στοιχείων προς επεξεργασία.


Αν έχεις itt κάποια παρατήρηση ακόμη ευχαρίστως να την συμπεριλάβω.
Επίσης θεωρώ ότι συμφωνείτε τόσο εσύ όσο και ο Ευριπίδης με όσα έγραψα για τις άλλες ασκήσεις μιας και δεν τις έχετε σχολιάσει.
Δηλαδή ότι δεν λύνονται με ΓΛΩΣΣΑ και ότι η ομάδα εργασίας πρέπει να τις επαναδιατυπώσει.
Φυσικά θα συμπεριλάβω και οποιαδήποτε παρατήρηση συναδέλφων που παρακολουθούν το post και θέλουν να παρέμβουν.

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

ether

  • Επισκέπτης
Ζητώ εκ των προτέρων συγνώμη που θα "χαλάσω το μάθημα". Δε θα το ξανακάνω.

Στο συνημμένο αρχείο υπάρχουν ενδεικτικές λύσεις της άσκησης 5-Γενικές Ασκήσεις μέχρι και την Δομή Επανάληψης (23ος ΠΔΠ, Γ φάση, θέμα Α).
Στη μία ενδεικτική λύση χρησιμοποιείται πίνακας, στην άλλη όχι.

Τα αρχεία ελέγχου 1-11 είναι τα αντίστοιχα αρχεία που δόθηκαν και στο διαγωνισμό. Και οι δυο λύσεις δίνουν σ' αυτά την ίδια -προφανώς- σωστή απάντηση.
Στο αρχείο ελέγχου 0, η λύση με τον πίνακα δίνει τη σωστή απάντηση (15485863), ενώ η λύση χωρίς πίνακα, στον υπολογιστή μου (με την έκδοση 1.5.1.3 του διερμηνευτή της ΓΛΩΣΣΑΣ του Άλκη) δίνει λανθασμένη απάντηση (328276198696976133) λόγω υπερχείλισης.

Αν κάποιος έχει κάποια λύση χωρίς πίνακα η οποία να μην παρουσιάζει πρόβλημα υπερχείλισης και να μη χρησιμοποιεί κάτι που δεν υπάρχει στη διδακτέα ύλη της ΑΕΠΠ το οποίο θα προβλημάτιζε και θα μπέρδευε έναν μαθητή περισσότερο από μια αναφορά στην εκφώνηση του τύπου "θεωρήστε ότι το ελάχιστο κοινό πολλαπλάσιο όλων των αριθμών δε θα υπερβαίνει τη μέγιστη τιμή που μπορεί να αναπαρασταθεί με τον ακέραιο τύπο δεδομένων της γλώσσας που χρησιμοποιείτε", θα με ενδιέφερε να την έχω υπ' όψη μου.
« Τελευταία τροποποίηση: 09 Απρ 2016, 09:28:29 πμ από ether »

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3147
  • to Iterate is human to Recurse divine

@ether
Δεν μπορώ να καταλάβω το σκεπτικό σου. Έτσι όπως το παρουσιάζεις, ακόμα και μια πιο απλή άσκηση όπως

Να γίνει πρόγραμμα που να διαβάζει 3 αριθμούς και να εμφανίζει το γινόμενό τους

έχει πρόβλημα , γιατί αν δοθεί τρεις φορές το 1.000.000 θα κάνει υπερχείλιση. Με το σκεπτικό σου όλες οι ασκήσεις που κάναμε τόσα χρόνια δεν είναι σωστές.
Από την στιγμή που δεν υπάρχει στο βιβλίο τέτοιος περιορισμός για τη ΓΛΩΣΣΑ, και από τι στιγμή που τόσα χρόνια κάναμε και ΓΛΩΣΣΑ και όχι ξαφνικά φέτος, γιατί ανακαλύψαμε τώρα αυτό το πρόβλημα? δεν μπορώ να καταλάβω. Δηλαδή τις προηγούμενες χρονιές που έπεφταν προγράμματα δεν υπήρχε αντίστοιχο πρόβλημα?
« Τελευταία τροποποίηση: 08 Απρ 2016, 10:24:53 μμ από evry »
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

ether

  • Επισκέπτης
@ether
Δεν μπορώ να καταλάβω το σκεπτικό σου. Έτσι όπως το παρουσιάζεις, ακόμα και μια πιο απλή άσκηση όπως

Να γίνει πρόγραμμα που να διαβάζει 3 αριθμούς και να εμφανίζει το γινόμενό τους

έχει πρόβλημα , γιατί αν δοθεί τρεις φορές το 1.000.000 θα κάνει υπερχείλιση. Με το σκεπτικό σου όλες οι ασκήσεις που κάναμε τόσα χρόνια δεν είναι σωστές.
Από την στιγμή που δεν υπάρχει στο βιβλίο τέτοιος περιορισμός για τη ΓΛΩΣΣΑ, και από τι στιγμή που τόσα χρόνια κάναμε και ΓΛΩΣΣΑ και όχι ξαφνικά φέτος, γιατί ανακαλύψαμε τώρα αυτό το πρόβλημα? δεν μπορώ να καταλάβω. Δηλαδή τις προηγούμενες χρονιές που έπεφταν προγράμματα δεν υπήρχε αντίστοιχο πρόβλημα?
Θα το ξαναπώ για μια ακόμα, τελευταία, φορά, χωρίς να ελπίζω ότι θα γίνω κατανοητός αφού δεν είναι θέμα δυνατότητας αλλά θέλησης: στο παράδειγμα που αναφέρεις οι τρεις αριθμοί είναι δεδομένα εισόδου και το γινόμενο είναι αποτέλεσμα. Είναι εύλογο ότι θα μπορούν να αναπαρασταθούν σε κάποιον από τους τύπους δεδομένων που υποστηρίζει η γλώσσα που καλούμαι να υλοποιήσω τη λύση, αλλιώς δεν έχει νόημα η άσκηση.

Στην άσκηση 5, το ελάχιστο κοινό πολλαπλάσιο δεν είναι ούτε δεδομένο ούτε ζητούμενο αφού: α) δεν αναφέρεται στην εκφώνηση ως τέτοιο, β) υπάρχει τουλάχιστον μια λύση που δεν το χρησιμοποιεί/απαιτεί.

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

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

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3147
  • to Iterate is human to Recurse divine
Θα το ξαναπώ για μια ακόμα, τελευταία, φορά, χωρίς να ελπίζω ότι θα γίνω κατανοητός αφού δεν είναι θέμα δυνατότητας αλλά θέλησης: στο παράδειγμα που αναφέρεις οι τρεις αριθμοί είναι δεδομένα εισόδου και το γινόμενο είναι αποτέλεσμα. Είναι εύλογο ότι θα μπορούν να αναπαρασταθούν σε κάποιον από τους τύπους δεδομένων που υποστηρίζει η γλώσσα που καλούμαι να υλοποιήσω τη λύση, αλλιώς δεν έχει νόημα η άσκηση.

οκ, άρα κατά τη γνώμη σου η παρακάτω άσκηση λύνεται ή όχι;

Άσκηση 1
Στο προγραμματιστικό περιβάλλον του εργαστηρίου του σχολείου σας:
Να γράψεις πρόγραμμα το οποίο θα διαβάζει δυο αριθμούς και θα υπολογίζει το Μέγιστο Κοινό Διαιρέτη (ΜΚΔ) αξιοποιώντας τον τύπο x∙y = ΜΚΔ(x,y) ∙ ΕΚΠ(x,y)
Προσοχή!!! Το ΕΚΠ δεν πρέπει να εμφανιστεί  γιατί δεν αποτελεί αποτέλεσμα του αλγορίθμου

Πρόκειται για τη δραστηριότητα ΔΕ1 από το τετράδιο του μαθητή σελίδα 105. Η μόνη αλλαγή είναι ότι τώρα δεν εμφανίζει το ΕΚΠ.

Τώρα αν αυτή λύνεται δεν λύνεται και η παρακάτω;

Άσκηση 2
Στο προγραμματιστικό περιβάλλον του εργαστηρίου του σχολείου σας:
Να γράψεις πρόγραμμα το οποίο θα διαβάζει δυο αριθμούς και θα υπολογίζει το Μέγιστο Κοινό Διαιρέτη (ΜΚΔ).
« Τελευταία τροποποίηση: 08 Απρ 2016, 11:37:27 μμ από evry »
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

Αθανάσιος Πέρδος

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 288
Δεν διαφωνώ σε τίποτα, αλλά δυστήχως δεν είχα χρόνο να διαβάσω όλες τις υπόλοιπες ασκήσεις (δεν έχω κάποια παρατήρηση σε αυτές που είδα) αυτή τη βδομάδα λόγο πηξίματος. Πότε σκοπεύεις να στείλεις τις παρατηρήσεις σου;

Σκοπεύω να στείλω τις παρατηρήσεις αύριο το βράδυ. Δεν μπορώ όμως να μην συμπεριλάβω στο παραπάνω κείμενο και την παρέμβαση του Άλκη.

αν κάποια γλώσσα χρησιμοποιεί βιβλιοθήκη τύπων άπειρης ακρίβειας, τότε σ' αυτήν την γλώσσα το
 i <- i + 1
δεν εκτελείται πια σε Ο(1) αλλά σε Ο(μέγεθος του i σε bit, συν χρόνος για realloc όταν χρειάζεται).

Δηλαδή δεν μπορούμε και να υποθέτουμε άπειρη ακρίβεια και να υποθέτουμε ότι η προσπέλαση μεταβλητών γίνεται σε Ο(1).



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

Παρατήρηση 1η
Στη σελίδα 17 στη μεθοδολογία που παρουσιάζεται στην πρώτη περίπτωση για την εύρεση μεγίστου και ελαχίστου, υπάρχει πιθανότητα μη αρχικοποίησης μεταβλητών αν η είσοδος των τιμών γίνεται με τιμή φρουρό και δοθεί πρώτη φορά τιμή ίση με το μέγιστο ή το ελάχιστο και στη συνέχεια η τιμή φρουρός.
Στο παράδειγμα 4 στη σελίδα 21 -22 αν οι μαθητές δεν ήταν 70 αλλά ο βρόχος εκτελούνταν με τιμή φρουρό και η είσοδος των τιμών ήταν η παραπάνω, μία εκ των μεταβλητών Μαχ_ον και Μιν_ον δεν θα είχε οριστεί.
Νομίζω ότι εύκολα διορθώνεται αν οι μεταβλητές MAX και ΜΙΝ αρχικοποιηθούν με μία μικρότερη και μία μεγαλύτερη αντίστοιχα τιμή από αυτές του διαστήματος τιμών που επεξεργάζεται ο αλγόριθμος.

Παρατήρηση 2η
Στη σελίδα 39 υπάρχει ο αλγόριθμος της Σειριακής Αναζήτησης. Ο αλγόριθμος σε περίπτωση που δεν υπάρχει το στοιχείο βγαίνει εκτός ορίων πίνακα διότι κάνει προσπέλαση στην τιμή Α[101] που δεν υπάρχει τόσο στη συνθήκη του βρόχου όσο και στην εντολή επιλογής που ακολουθεί.
Νομίζω ότι ο αλγόριθμος πρέπει να αντικατασταθεί από αυτόν που υπάρχει στο σχολικό.

Παρατήρηση 3η
Το ίδιο πρόβλημα παρουσιάζεται και στον αλγόριθμο της δυαδικής αναζήτησης εφόσον γίνεται πλήρης αποτίμηση σύνθετης συνθήκης. Βέβαια δεν είναι ορισμένο στο σχολικό το συγκεκριμένο θέμα (πλήρης ή όχι αποτίμηση) και τουλάχιστον στον Διερμηνευτή της ΓΛΩΣΣΑΣ υπάρχει επιλογή για το πώς αντιμετωπίζεται.
Νομίζω ότι πρέπει να αντικατασταθεί με τον αλγόριθμο που υπάρχει στις οδηγίες της 08/12.

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

ολγα

  • Βετεράνος
  • ****
  • Μηνύματα: 70
Εγώ δεν μπορώ να τη λύσω χωρίς πίνακα. Για αυτό ζήτησα και τη συνδρομή των συναδέλφων. Αν έχεις λύση θα ήθελα πολύ να τη δω.

Συγνώμη έχεις δίκιο. Θέλει πίνακα.

Diotima

  • Επισκέπτης
Σκοπεύω να στείλω τις παρατηρήσεις αύριο το βράδυ. Δεν μπορώ όμως να μην συμπεριλάβω στο παραπάνω κείμενο και την παρέμβαση του Άλκη.



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

Παρατήρηση 1η
Στη σελίδα 17 στη μεθοδολογία που παρουσιάζεται στην πρώτη περίπτωση για την εύρεση μεγίστου και ελαχίστου, υπάρχει πιθανότητα μη αρχικοποίησης μεταβλητών αν η είσοδος των τιμών γίνεται με τιμή φρουρό και δοθεί πρώτη φορά τιμή ίση με το μέγιστο ή το ελάχιστο και στη συνέχεια η τιμή φρουρός.
Στο παράδειγμα 4 στη σελίδα 21 -22 αν οι μαθητές δεν ήταν 70 αλλά ο βρόχος εκτελούνταν με τιμή φρουρό και η είσοδος των τιμών ήταν η παραπάνω, μία εκ των μεταβλητών Μαχ_ον και Μιν_ον δεν θα είχε οριστεί.
Νομίζω ότι εύκολα διορθώνεται αν οι μεταβλητές MAX και ΜΙΝ αρχικοποιηθούν με μία μικρότερη και μία μεγαλύτερη αντίστοιχα τιμή από αυτές του διαστήματος τιμών που επεξεργάζεται ο αλγόριθμος.

Παρατήρηση 2η
Στη σελίδα 39 υπάρχει ο αλγόριθμος της Σειριακής Αναζήτησης. Ο αλγόριθμος σε περίπτωση που δεν υπάρχει το στοιχείο βγαίνει εκτός ορίων πίνακα διότι κάνει προσπέλαση στην τιμή Α[101] που δεν υπάρχει τόσο στη συνθήκη του βρόχου όσο και στην εντολή επιλογής που ακολουθεί.
Νομίζω ότι ο αλγόριθμος πρέπει να αντικατασταθεί από αυτόν που υπάρχει στο σχολικό.

Παρατήρηση 3η
Το ίδιο πρόβλημα παρουσιάζεται και στον αλγόριθμο της δυαδικής αναζήτησης εφόσον γίνεται πλήρης αποτίμηση σύνθετης συνθήκης. Βέβαια δεν είναι ορισμένο στο σχολικό το συγκεκριμένο θέμα (πλήρης ή όχι αποτίμηση) και τουλάχιστον στον Διερμηνευτή της ΓΛΩΣΣΑΣ υπάρχει επιλογή για το πώς αντιμετωπίζεται.
Νομίζω ότι πρέπει να αντικατασταθεί με τον αλγόριθμο που υπάρχει στις οδηγίες της 08/12.

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

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

Αθανάσιος Πέρδος

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

Ευχαριστώ πολύ για τον κόπο σου, θα στείλω το αρχείο όπως είναι.

dski

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 184
@Diotima:

Μπράβο για την πολύ καλή δουλειά που έκατσες κι έκανες!

Μια παρατήρηση μόνο: διαφωνώ με το 1ο σχόλιό σου για τις δομές επανάληψης. Φυσικά μανιέρες του στυλ "η ΟΣΟ χρησιμοποιείται όταν έχουμε «τιμή φρουρό» και η ΜΕΧΡΙΣ_ΟΤΟΥ σε όλες τις άλλες περιπτώσεις" είναι λάθος και πρέπει να αποφεύγονται, όμως η ΟΣΟ και η ΜΕΧΡΙΣ_ΟΤΟΥ δεν είναι ακριβώς ισοδύναμες καθώς οι εντολές της δεύτερης (όπως λες και στο παράδειγμα με τον έλεγχο εγκυρότητας) εκτελούνται τουλάχιστον μία φορά και, αν υπάρχει ενδεχόμενο να μην πρέπει να εκτελεστούν καμία φορά σε κάποια περίπτωση, τότε πρέπει να μπει μια επιπλέον δομή επιλογής στην ΜΕΧΡΙΣ_ΟΤΟΥ που θα ελέγχει αυτό το ενδεχόμενο.

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

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

Diotima

  • Επισκέπτης
@dski

Ευχαριστώ για τα καλά σου λόγια.

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

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

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

Διάβασε χ
Αν χ>=0 τότε
    Αρχή_επανάληψης
      .
      .
      Διάβασε χ
   Μέχρις_ότου χ<0
Τέλος_αν

που είναι πολύ καλύτερο γιατί δε χρειάζεται το ΑΝ μέσα στο βρόχο.
Τη μετατροπή από ΟΣΟ σε ΜΕΧΡΙΣ_ΟΤΟΥ τη διδάσκω έτσι.

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

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

γιατί σε μια θεωρητική ερώτηση, να δώσουν παραδείγματα που είναι προτιμότερη η χρήση της ΜΕΧΡΙΣ_ΟΤΟΥ, θα πρέπει να απαντήσουν έτσι. Οπότε καλύτερα και να το χρησιμοποιούν για λόγους εμπέδωσης.

Δες αν θέλεις και το Παράδειγμα 3 αμέσως μετά από αυτήν την παρατήρηση στο βιβλίο.
Κάνει τον έλεγχο εγκυρότητας με ΜΕΧΡΙΣ_ΟΤΟΥ, παρ' όλο που απαιτείται μήνυμα λάθους και πρέπει να χρησιμοποιηθεί το ΑΝ.
« Τελευταία τροποποίηση: 12 Απρ 2016, 08:46:33 μμ από Diotima »

Diotima

  • Επισκέπτης
Καλησπέρα,
είχα γράψει και διορθώσεις για τις ασκήσεις από ΠΔΠ μέχρι και δομή επανάληψης που συζητήσατε παραπάνω, που έχουν αναρτηθεί από το ΙΕΠ. Περιέχουν και προτάσεις μου για κάποια προβλήματα διατύπωσης και παράλειψης που νομίζω ότι έχουν κάποια και μετατροπής τους ώστε να λύνονται με βάση αυτά που συζητήσατε κι εσείς.
Ξέρω ότι μάλλον είναι αργά, αλλά ήθελα να τις ξαναδώ και ο χρόνος είναι πιεστικός, παρ' όλα αυτά επισυνάπτω το αρχείο και συζητάμε αν θέλετε κάτι από αυτό.

Manolis Kosmidis

  • Οπαδός
  • **
  • Μηνύματα: 15
    • ΑΕΠΠ, θέματα και λύσεις, εξετάσεων, τετραδίου μαθητή, παραδείγματα βιβλίου
Οι λύσεις των ασκήσεων σε ΓΛΩΣΣΑ, του παραρτήματος Β που είναι αναρτημένο στο ΙΕΠ, είναι διαθέσιμες εδώ:  https://wp.me/P7Wwdn-R1
Είναι αδύνατη η αποφυγή λαθών και φυσικά υπάρχουν βελτιώσεις, όποτε αν τύχει και αφιερώσετε κάποιο χρόνο, όταν εντοπίσετε, παρακαλώ, ενημερώστε με.

To μάθημα της Πληροφορικής πιστεύω ότι πρέπει να περιέχει στοιχεία Ηλεκτρονικής, Ρομποτικής και της ανάπτυξης προϊόντων μέσω CAD. Επίσης, πρέπει να είναι project oriented και να βαθμολογείται ανάλογα. Η ΑΕΠΠ, πιστεύω ότι θα γίνει το πρώτο μάθημα που θα εξετάζεται με adaptive online testing.
https://aepp.gr