Αποστολέας Θέμα: Συνάρτηση και ΔΙΑΒΑΣΕ/ΓΡΑΨΕ  (Αναγνώστηκε 2535 φορές)

Παναγιώτης Τσιωτάκης

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3136
  • Dracarys
    • Panagiotis Tsiotakis
Συνάρτηση και ΔΙΑΒΑΣΕ/ΓΡΑΨΕ
« στις: 07 Ιούν 2007, 05:51:44 μμ »
Τετράδιο μαθητή:
Σελ 108: Υποδείξεις – Συμβουλές:
Κάθε γλώσσα προγραμματισμού έχει τους δικούς της κανόνες και τις δικές της αρχές για τη σύνταξη και χρήση των υποπρογραμμάτων...Υπάρχουν κάποιοι γενικοί κανόνες που πρέπει να ακολουθείς:
- Να μελετάς αν ένα υποπρόγραμμα πρέπει να υλοοποιηθεί με διαδικασία ή συνάρηση.

Βιβλίο καθηγητή:
- Σελ 194 Ειδικός διδακτικός σκοπός: να διακρίνουν τις διαδικασίες από τις συναρτήσεις
- Ο τρόπος που υλοποιούνται τα υποπρογράμματα σε κάθε γλώσσα προγραμματισμού έχει ιδιαιτερότητες.

Σελ 203-204 υποπρογράμματα που έχουν διάβασε και γράψε αν και επιστρέφουν μόνο μια τιμή υλοποιούνται με διαδικασία

Βιβλίο μαθητή:
- Σελ 210: Οι διαδικασίες μπορούν να εκτελέσουν οποιαδήποτε λειτουργία από αυτές που μπορεί να εκτελέσει ένα πρόγραμμα.... Αντίθετα η λειτουργία των συναρτήσεων είναι πιο περιορισμένη...Οι συναρτήσεις μοιάζουν με τις συναρτήσεις των μαθηματικών και τις ενσωματωμένες συναρτήσεις της ΓΛΩΣΣΑΣ.

Οι συναρτήσεις των μαθηματικών αν θυμάμαι καλά όλες οι τιμές που απαιτούνται είναι είσοδος και επιστρέφεται το αποτέλεσμα, σωστά;

Σελ. 211: Αφού το υποπρόγραμμα πρέπει να διαβάζει δεδομένα, υλοποιείται με διαδικασία  :D
Σελ. 212: Εφόσον απαιτείται από αυτό (υποπρόγραμμα) η εκτέλεση της λειτουργίας της εκτύπωσης, πρέπει να υλοποιηθεί με διαδικασία.  :D :D
Σελ 213: δεν αναφέρεται οτι η συνάρτηση μπορεί να μην έχει παραμέτρους εισόδου: πρέπει να έχει παραμέτρους εισόδου



Απο που εξάγεται το συμπέρασμα οτι μια συνάρτηση μπορεί να περιέχει τις εντολές Διάβασε και Γράψε; Εγώ το ακριβώς αντίθετο διαβάζω.

Αν αυτό επιτρέπεται στη C ή οπουδήποτε αλλού, θα το καταγράψω ως χρήσιμη πληροφορία, ΑΛΛΑ ΔΕΝ ΕΠΙΤΡΕΠΕΤΑΙ ΣΤΗ ΓΛΩΣΣΑ.

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

Οι δυο τύποι υποπρογραμμάτων δεν είναι ισοδύναμοι, και είναι ζητούμενο του μαθήματος η επιλογή του σωστού τύπου υποπρογράμματος σε κάποια άσκηση.


pfan

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 104
  • ...
Απ: Συνάρτηση και ΔΙΑΒΑΣΕ/ΓΡΑΨΕ
« Απάντηση #1 στις: 09 Ιούν 2007, 01:52:51 μμ »
Τετράδιο μαθητή:
Σελ 108: Υποδείξεις – Συμβουλές:
Κάθε γλώσσα προγραμματισμού έχει τους δικούς της κανόνες και τις δικές της αρχές για τη σύνταξη και χρήση των υποπρογραμμάτων...Υπάρχουν κάποιοι γενικοί κανόνες που πρέπει να ακολουθείς:
- Να μελετάς αν ένα υποπρόγραμμα πρέπει να υλοοποιηθεί με διαδικασία ή συνάρηση.

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

Βιβλίο καθηγητή:
- Σελ 194 Ειδικός διδακτικός σκοπός: να διακρίνουν τις διαδικασίες από τις συναρτήσεις
- Ο τρόπος που υλοποιούνται τα υποπρογράμματα σε κάθε γλώσσα προγραμματισμού έχει ιδιαιτερότητες.

Σελ 203-204 υποπρογράμματα που έχουν διάβασε και γράψε αν και επιστρέφουν μόνο μια τιμή υλοποιούνται με διαδικασία


Ναι έχουν διαδικασίες που έχουν διάβασε και γράψε αν και επιστρέφουν μόνο μια τιμή και ίσως να θέλει το βιβλίο να προωθήσει ότι όταν έχω επικοινωνία με Διάβασε Γράψε καλό θα ήταν να έχω διαδικασία. Έλα όμως που έχει και την απάντηση ακριβώς για το θέμα που έβαλε η επιτροπή: ότι όταν έχω εισαγωγή ενός δεδομένου χρησιμοποιώ Συνάρτηση (έκδοση βιβλίου καθηγητή 2004) Εγώ το ερμηνεύω ότι αφού επιστρέφει μια τιμή μόνο, μπορώ να έχω και διαδικασία και συνάρτηση άρα και τα δύο σωστά.



Βιβλίο μαθητή:
- Σελ 210: Οι διαδικασίες μπορούν να εκτελέσουν οποιαδήποτε λειτουργία από αυτές που μπορεί να εκτελέσει ένα πρόγραμμα.... Αντίθετα η λειτουργία των συναρτήσεων είναι πιο περιορισμένη...Οι συναρτήσεις μοιάζουν με τις συναρτήσεις των μαθηματικών και τις ενσωματωμένες συναρτήσεις της ΓΛΩΣΣΑΣ.

Παναγιώτη οι 3 τελείες κρύβουν ένα κείμενο που δεν έχεις παραθέσει το παραθέτω εγώ:

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

Γιατί δεν κοιτάμε τι κάνει μια συνάρτηση και όλοι ψάχνουμε να βρούμε τι δεν κάνει η συνάρτηση;
Επίσης η λέξη "μοιάζουν" δεν είναι ταυτόσημη έννοια με τη λέξη "ίδιες"


Σελ. 211: Αφού το υποπρόγραμμα πρέπει να διαβάζει δεδομένα, υλοποιείται με διαδικασία 
Σελ. 212: Εφόσον απαιτείται από αυτό (υποπρόγραμμα) η εκτέλεση της λειτουργίας της εκτύπωσης, πρέπει να υλοποιηθεί με διαδικασία.

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

Μα καλά ένα πρόγραμμα 3 γραμμών το κάναμε μια σελίδα τι πράγματα είναι αυτά; 

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

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

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

Ας θέσω κάποια ερωτήματα που με βασανίζουν:
  • Γιατί η επιτροπή αφού πήρε την άσκηση από το τετράδιο του μαθητή (ΔΤ1 από κεφ10) κράτησε τις 6 προτάσεις από τις 7 που είχε; Γιατί διάλεξε να κρατήσει την πρόταση "Εισαγωγή ενός δεδομένου" και όχι την πρόταση "Εισαγωγή τριών δεδομένων"; Αν είχε κρατήσει τη δεύτερη τώρα δεν θα συζητούσαμε για αυτό.
  • Το βιβλίο του καθηγητή απαντά στο θέμα ακριβώς: "πρέπει να είναι Συνάρτηση" (λάθος για κάποιους - σωστά για άλλους). Δηλαδή πρέπει σαν "καλοί" καθηγητές να πούμε στα παιδιά αυτό που εμείς νομίζουμε ως σωστό; Και αν στην φετινή επιτροπή ήταν κάποιοι από τους καθηγητές που θεωρούσαν σωστό αυτό που απαντά το βιβλίο του καθηγητή τότε τι θα λέγαμε στα παιδιά; Δηλαδή πρέπει να μαντέψω τη σκέψη της επιτροπής;
  • Γιατί στην μια περίπτωση δεν πρέπει να ακολουθώ τις οδηγίες του βιβλίου και άρα είμαι "σωστή" καθηγήτρια και στην άλλη περίπτωση αν δεν ακολουθώ τις οδηγίες της επιπτροπής και κάνω του κεφαλιού μου είμαι "κακή" καθηγήτρια;
  • Τελικά να ακολουθώ ή να μην ακολουθώ οδηγίες;

Ο καθένας υποστηρίζει τη θέση του τα παιδιά ποιός θα τα υποστηρίξει δεν ξέρω.

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

Ελπίζω μέσα από αυτούς τους προβληματισμούς που έχουμε όλοι μας στο μέλλον να γίνουμε καλύτεροι. Νομίζω 'οτι τα φετινά θέματα ήταν καλά και ελπίζω ότι τα επόμενα θα είναι καλύτερα.
Πύρζα Φανή
Μηχανικός Η/Υ Συστημάτων
Καθηγήτρια Πληροφορικής

andreas_p

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 1006
Απ: Συνάρτηση και ΔΙΑΒΑΣΕ/ΓΡΑΨΕ
« Απάντηση #2 στις: 09 Ιούν 2007, 10:09:54 μμ »
Βιβλίο μαθητή.  σελ. 211 και 212  το  αναφέρει  ΞΕΚΑΘΑΡΑ.

Συνεπώς ποιος ο λόγος αυτής της ανούσιας κουβέντας ;

Υ.Γ.

Ελάχιστα γραπτά έδωσαν λανθασμένη απάντηση.

Ανδρέας

filippos

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 139
Απ: Συνάρτηση και ΔΙΑΒΑΣΕ/ΓΡΑΨΕ
« Απάντηση #3 στις: 10 Ιούν 2007, 02:28:06 πμ »
Δε μππορώ να κρύψω πραγματικά την έκπληξή μου στα όσα συζητούνται στο στέκι με αφορμή τα φετινά θέματα.

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

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

ΤΙ ποιό σαφές θα μπορούσε να υπάρχει από τον "ορισμό" των συναρτήσεων και διαδικασιών των σελίδων 210-212;

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

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

Μία συνάρτηση είναι ένας αλγόριθμος που δέχεται δεδομένα μέσω των παραμέτρων του, υπολογίζει και επιστρέφει ένα αποτέλεσμα με το όνομά του.  Η χρήση τους είναι όμοια με τη χρήση των ενσωματωμένων συναρτήσεων που υποστηρίζει η ΓΛΩΣΣΑ.  ΚΑΜΙΑ συνάρτηση ΔΕΝ κάνει είσοδο ή έξοδο μέσω του χρήστη.  Η έννοια της συνάρτησης, όπως αυτή παρουσιάζεται στο βιβλίο εισάγει ομαλά το μαθητή στην ιεραρχική σχεδίαση (και κατ' επέκταση τον τμηματικό προγραμματισμό) υλοποιώντας την ελάχιστη δυνατή παρέκκλιση από την ένοια που έχει ήδη στο μυαλό του από τα μαθηματικά.

Αλγόριθμος Κατι_Τις
Δεδομένα //α, β//
..
Αποτελέσματα //γ//
Τέλος ΚατιΤις

Είναι ισοδύναμο του:

ΣΥΝΑΡΤΗΣΗ ΚατιΤις(α, β): γ_ΤΥΠΟΣ
...
   ΚατιΤις <- γ
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ


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

ΈΤΣΙ στηρίζουμε τους μαθητές μας και αν έχουμε κάνει λάθος οφείλουμε να το παραδεχτούμε έστω και αν αφορά θέμα πανελλαδικών. 

Τελικά, κάθε εμπόδιο για καλό.  Φαντάζεστε να είχε παραληφθεί το επίμαχο ερώτημα από τα επτά;; Θα εξακολουθούσαμε να θεωρούμε κάποιοι (λίγοι απ'ότι φαίνεται από τις απαντήσει των μαθητών) ότι αποτελεί ασάφεια.  Δηλαδή πρέπει οπωσδήποτε να ερμηνευτεί ως ΔΕΙΛΙΑ της επιτροπής η μονοσήμαντη απάντηση που δίνει στο συγκεκριμένο ερώτημα; Αποκλείεται να πρόκειται για κατηγορι\ηματική δήλωση της διδακτικής σαφήνειας του βιβλίου στο συγκεκριμένο θέμα;  Ας σταματήσουμε να τρώμε τις σάρκες μας για έναν προβληματισμό χωρίς βάση.

Έχει δει κανένας άσκηση σε ΟΠΟΙΟΔΗΠΟΤΕ σημείο στο διδακτικό πακέτο που να κάνει είσοδο / έξοδο δεδομένων με συνάρτηση;

Παναγιώτης Τσιωτάκης

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3136
  • Dracarys
    • Panagiotis Tsiotakis
Απ: Συνάρτηση και ΔΙΑΒΑΣΕ/ΓΡΑΨΕ
« Απάντηση #4 στις: 11 Ιούν 2007, 05:54:10 μμ »
Και να συμπληρώσω σε αυτά που λέει ο Φίλιππος, αν μου επιτρέπει

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

Από αυτά που γράφονται στις εφημερίδες, τα θέματα των εξετάσεων στο νέο σύστημα θα τα επιλέγουν κυρίως οι πανεπιστημιακοί. Φαντάζεστε γέλιο που θα ρίξουμε τότε;  >:D

gpapargi

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2442
  • I 'm not young enough to know everything
Απ: Συνάρτηση και ΔΙΑΒΑΣΕ/ΓΡΑΨΕ
« Απάντηση #5 στις: 12 Ιούν 2007, 09:13:34 πμ »
Καλημέρα

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

http://alkisg.mysch.gr/steki/index.php?topic=959.msg5395#msg5395

Μπορεί κάποιος να μου πει αν υπάρχει λάθος στο συλλογισμό;

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