ΣΥΝΑΡΤΗΣΗ - ΔΙΑΔΙΚΑΣΙΑ

Ξεκίνησε από klitos, 13 Φεβ 2006, 09:44:45 ΠΜ

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

νεος-89

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

evry

Δε διαφωνώ αλλά στο τετράδιο του μαθητή στην ΔΤ1 δίνει κάποιες λειτουργίες και ο μαθητής πρέπει να απαντήσει αν πρέπει να υλοποιήθουν σαν διαδικασία ή συνάρτηση.

Πιο συγκεκριμένα

Α) Εισαγωγή τριών δεδομένων
Β) Εισαγωγή ενός δεδομένου

Στο βιβλίο του καθηγητή οι απαντήσεις είναι

Α) Διαδικασία
Β) Συνάρτηση

σα να σου λέε:ι ότι και να κάνεις αν έχεις μια έξοδο ορίζεις συνάρτηση.

Αυτά ως δικηγόρος του διαβόλου
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

Πέτρος

τωρα αν πω παλι κατι για το  βιβλιο/διδακτικο πακέτο, θα θεωρηθώ κακοπροαίρετος...

Επίσης τι ακριβως εννοει το βιβλίο με τη φράση "Η συναρτηση ειναι ..   που υπολογίζει και επιστρέφει  μόνο μια τιμή    με το όνομα της ..." (σ211).

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

EleniK

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

Πετρος

1 Συναρτηση Μπλα(α,β):πραγματική
2  Μεταβλητές
3    Πραγματικές: α,β,γ
4 Αρχή
5  γ<--α+β
6  Μπλα<--γ/2
7 Τέλος_Συνάρτησης

Η παραπάνω είναι η δεν είναι εγκυρη συνάρτηση? Και πιο συγκεκριμένα η έκφραση της 5ης γραμμής είναι σύμφωνη με το "υπολογίζει και επιστρέφει  μόνο μια τιμή" ?


alkisg

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

EleniK

Έχει δίκιο ο Άλκης. Το 'μόνο' αναφέρεται στη μία τιμή που επιστρέφει και όχι στους ενδιάμεσους υπολογισμούς π.χ. μέγιστο τριών αριθμών, θα επιστρέφει το max. H συνάρτησή σου είναι σωστή.
Ελένη Κοκκίνου
Καθηγήτρια Πληροφορικής, ΠΕ19

klitos

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

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

Πέτρος

klito το  "υπολογίζει και επιστρέφει μόνο μια τιμή" με προβληματίζει. Και εγώ γενικά ασπάζομαι την άποψη του Άλκη, ωστόσο αν θέλουμε να είμαστε ακριβείς και να ακολουθήσουμε κατά γράμμα τον ορισμό της συνάρτησης, θα οφείλαμε να μη χρησιμοποιούμε εντολή εκχώρησης σε μεταβλητή διαφορετική από το όνομα της. (για να είναι η πρόταση αληθής πρεπει ΚΑΙ να υπολογίζει ΚΑΙ να επιστρεφει μονο 1 τιμή, έτσι για να θυμηθούμε και τις λογικές προτάσεις ...  ;) )

Επισκέπτης

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

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

Ας μη γινόμαστε παράλογα τυπικοί στην "ερμηνεία" των ελληνικών.  Η ουσία είναι νομίζω σαφής. 

Η συνάρτηση δε μπορεί να επιστρέψει περισσότερες από μία τιμές.  Επιστρέφει μόνο μία, και αυτό όχι με κάποια παράμετρο (όπως κάνουν οι διαδικασίες) αλλά με το όνομά της.

Πέτρος

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

alkisg

#26
Άσχετο #1)
Και γιατί να συνδέουμε το «υπολογίζει» με την εκχώρηση τιμής;
Δηλαδή στο
ΔΙΑΒΑΣΕ ακτίνα
ΓΡΑΨΕ "Περίμετρος = ", 2*π*R
δε γίνεται υπολογισμός;
Επίσης, πόσοι υπολογισμοί έγιναν; Απάντηση: δύο, πρώτα υπολογίστηκε το 2*π και μετά το αποτέλεσμά τους πολλαπλασιάστηκε επί R.

Επομένως, αν ήταν να ακριβολογήσουμε και να είμαστε πιστοί στον ορισμό της συνάρτησης, θα έπρεπε να συμπεράνουμε ότι στις συναρτήσεις επιστρέπεται ΜΟΝΟ ΜΙΑ ΠΡΑΞΗ (είτε πολλαπλασιασμός είτε διαίρεση κτλ).
Με άλλα λόγια, και το
ΌνομαΣυνάρτησης <- 2*π*R
είναι λάθος, αφού κάνει και άλλους ενδιάμεσους υπολογισμούς εκτός από τον ΜΟΝΟ έναν που επιτρέπεται...

(εννοείται ότι διαφωνώ με όλα όσα έγραψα παραπάνω) :) :) :)

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

ʼσχετο #3)
Το ΚΑΙ, στον προφορικό ή γραπτό λόγο, δεν έχει πάντα την έννοια του λογικού ΚΑΙ. Επομένως δε χρειάζεται να ερμηνεύουμε πάντα τις προτάσεις του βιβλίου σαν να ήταν λογικές προτάσεις. Μερικές φορές το ΚΑΙ έχει απλά την έννοια του συνδετικού κρίκου μεταξύ παρατακτικών προτάσεων...

gpapargi

Θυμήθηκα κάτι που είχα διαβάσει και το γράφω στο περίπου.

Κάποτε ο μεγάλος φυσικός Richard Feynman  έδινε μια διάλεξη. Κάποιος τον διέκοψε για να διορθώσει κάποιο λάθος που είχε κάνει καθώς μιλούσε. Ο Feynman του απάντησε: «Μη στέκεσαι σε αυτό που είπα. Στάσου σε αυτό που σκέφτομαι».

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

nekis

Αλκη θέλω βοήθεια με το .... παρατακτικές!!! Τα έχω ξεχάσει τελείως :) :) :)

alkisg

Καλά Νεκτάριε μη νομίζεις ότι εγώ τα θυμάμαι, απλά έμπλεξα με φιλολόγους γυναίκα και πεθερά ;) και επίσης λόγω του Διερμηνευτή αναγκάστηκα να έχω πρόχειρα τη Γραμματική και το Συντακτικό της Νέας Ελληνικής του Γυμνασίου...

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

Αν το έχω καταλάβει καλά, όταν γράφουμε «έκανα το τάδε πράγμα ΚΑΙ μετά πήγα εκεί ΚΑΙ μετά έκανα το άλλο», τότε οι προτάσεις αυτές λέγονται παρατακτικές και φυσικά το ΚΑΙ δεν έχει την έννοια του λογικού ΚΑΙ, είναι απλά συνδετικός κρίκος (παρατακτικός σύνδεσμος που τον λέει και το συντακτικό).
Αν λοιπόν στο «υπολογίζει ΚΑΙ επιστρέφει μια μόνο τιμή» το ΚΑΙ το θεωρήσουμε παρατακτικό σύνδεσμο, τότε ερμηνεύεται διαφορετικά απ' ότι αν το θεωρήσουμε σαν λογικό ΚΑΙ... Δηλαδή το ΜΟΝΟ σ' αυτήν την περίπτωση αναφέρεται μόνο στο δεύτερο ρήμα, το "επιστρέφει".

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