Αποστολέας Θέμα: Απορία για Συναρτήσεις  (Αναγνώστηκε 425 φορές)

ElenaP

  • Νέος
  • *
  • Μηνύματα: 2
Απορία για Συναρτήσεις
« στις: 19 Απρ 2021, 05:11:32 μμ »
Καλησπέρα σας.
Σε μία συνάρτηση η οποία υπολογίζει σύνολο τιμών ενός πίνακα, δεν μπορώ να χρησιμοποιήσω το ονομά της σε περισσότερες απο μία εκχωρήσεις?
Για παράδειγμα,
 ΣΥΝΑΡΤΗΣΗ ΣΥΝΟΛΟ(Α): ΠΡΑΓΜΑΤΙΚΗ
ΜΕΤΑΒΛΗΤΕΣ
  ΠΡΑΓΜΑΤΙΚΕΣ: Α[100]
  ΑΚΕΡΑΙΕΣ: Ι
ΑΡΧΗ
ΣΥΝΟΛΟ<-- 0
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 100
  ΣΥΝΟΛΟ<-- ΣΥΝΟΛΟ + Α[Ι]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Αυτό θεωρείται λάθος? Πρέπει να υπάρχει μία εκχώρηση στο όνομα και να χρησιμοποιηθεί επιπλέον μεταβλητή (π.χ S), η οποία θα εκχωρηθεί στο ΣΥΝΟΛΟ πάνω από το ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ?


George Eco

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 437
Απ: Απορία για Συναρτήσεις
« Απάντηση #1 στις: 19 Απρ 2021, 05:20:50 μμ »
Έλενα κοίτα, επειδή θες να χρησιμοποιήσεις τη συνάρτηση ως μεταβλητή,  εντός της συνάρτησης, η συνάρτηση πρέπει να επιστρέψει τιμή, αλλά αυτό είναι αδύνατο προτου ολοκληρωθεί ( ; ; ) βάζω ερωτηματικά γιατί η ΓΛΩΣΣΑ είναι ορισμένη επί χάρτου. ΔΕ μπορώ να αποφανθώ αν είσαι ή όχι λάθος εδώ, διίστανται οι απόψεις, αλλά μπορώ να σου πω, ότι καλό θα ήταν να χρησιμοποιήσεις μία πραγματική μεταβλητή για αυτή τη διαδικασία εντός της συνάρτησης και να της δώσεις της συνάρτησης τη τιμή της μεταβλητής στο τέλος.
Γενικά αν δεν είσαι σίγουρη για κάτι, παίχτο με ασφάλεια, με τα εργαλεία που ξέρεις πως δουλεύουν σίγουρα.
Πρόσεξε το εξής (γιατί στα λέω αυτά): Μεταβλητές με όνομα συνάρτησης, απαγορεύεται να υπάρξουν, το όνομα της συνάρτησης, εντός της συνάρτησης αναφέρεται στη συνάρτηση και ΔΕΝ είναι μεταβλητή.
Γενικά να δώσεις πολλαπλές αναθέσεις τιμής, δε νομίζω να είναι λάθος, αλλά είναι γκρίζο τοπίο.
Ωστόσο εδώ, δε μου κάθεται καθόλου καλά, ο τρόπος που χρησιμοποιείται.
 

petrosp13

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 2351
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

ΔΗΜΗΤΡΗΣ Χ

  • Βετεράνος
  • ****
  • Μηνύματα: 90
Απ: Απορία για Συναρτήσεις
« Απάντηση #3 στις: 19 Απρ 2021, 09:10:54 μμ »
ΝΑ ΚΟΙΤΑΞΕΙΣ ΛΙΓΟ ΠΙΟ ΠΑΝΩ ΑΠΟ ΕΚΕΙ ΠΟΥ ΣΕ ΣΤΕΛΝΕΙ O ΠΕΤΡΟΣ, 2-3 ΑΝΑΡΤΗΣΕΙΣ, ΔΙΟΤΙ ΤΟ ΔΕΝ ΥΠΑΡΧΕΙ ΛΟΓΟΣ ΝΑ ΑΠΑΓΟΡΕΥΕΤΑΙ...ΑΝΑΦΕΡΕΤΑΙ ΣΕ ΑΥΤΟ ΠΟΥ ΓΡΑΦΕΙ Ο ΛΑΜΠΡΑΚΗΣ. ΠΙΟ ΠΑΝΩ Ο ΠΕΤΡΟΣ ΕΞΗΓΕΙ ΚΑΙ ΠΟΛΥ ΣΩΣΤΑ ΜΑΛΙΣΤΑ ΓΙΑ ΑΥΤΟ ΠΟΥ ΡΩΤΑΣ. ΜΠΟΡΕΙ ΝΑ ΘΕΩΡΗΘΕΙ ΑΝΑΔΡΟΜΗ. ΓΕΝΙΚΑ ΣΥΜΦΩΝΩ ΑΠΟΛΥΤΩΣ ΜΕ ΑΥΤΑ ΠΟΥ ΣΟΥ ΕΓΡΑΨΕ O GEORGE ECO ΠΑΝΩ ΣΕ ΑΥΤΟ. ΔΥΣΤΥΧΩΣ ΥΠΑΡΧΟΥΝ ΣΗΜΕΙΑ ΤΕΤΟΙΑ. ΑΣ ΠΡΟΤΙΜΑΣ ΤΟ ΣΙΓΟΥΡΟ

andreas_p

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 1073
Απ: Απορία για Συναρτήσεις
« Απάντηση #4 στις: 19 Απρ 2021, 09:51:38 μμ »
 ΣΥΝΟΛΟ<-- ΣΥΝΟΛΟ + Α[Ι]

Αναδρομή !

George Eco

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 437
Απ: Απορία για Συναρτήσεις
« Απάντηση #5 στις: 20 Απρ 2021, 12:34:11 μμ »
ΣΥΝΟΛΟ<-- ΣΥΝΟΛΟ + Α[Ι]

Αναδρομή !

Κι άρα εκτός ύλης. :(

petrosp13

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 2351
Απ: Απορία για Συναρτήσεις
« Απάντηση #6 στις: 20 Απρ 2021, 01:14:32 μμ »
Νομίζω ότι μπορεί να εξηγηθεί και χωρίς να αναφέρουμε την έννοια της αναδρομής ως εξής:
Κάθε εμφάνιση του ονόματος της συνάρτησης που δεν είναι αριστερά από βέλος, λαμβάνεται ως κλήση της συνάρτησης κι επειδή σε αυτή την περίπτωση δεν καλούμε την συνάρτηση (με παρενθέσεις, παραμέτρους κτλ), προκύπτει συντακτικό λάθος
Νομίζω ότι δεν είναι κάτι βαρύ για τους μαθητές
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

George Eco

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 437
Απ: Απορία για Συναρτήσεις
« Απάντηση #7 στις: 20 Απρ 2021, 02:43:53 μμ »
Νομίζω ότι μπορεί να εξηγηθεί και χωρίς να αναφέρουμε την έννοια της αναδρομής ως εξής:
Κάθε εμφάνιση του ονόματος της συνάρτησης που δεν είναι αριστερά από βέλος, λαμβάνεται ως κλήση της συνάρτησης κι επειδή σε αυτή την περίπτωση δεν καλούμε την συνάρτηση (με παρενθέσεις, παραμέτρους κτλ), προκύπτει συντακτικό λάθος
Νομίζω ότι δεν είναι κάτι βαρύ για τους μαθητές
Συμφωνώ. Τους λες πως ζητά να χρησιμοποιηθεί η ΣΥΝΟΛΟ για το παράδειγμά μας, προτού αυτή επιστρέψει τιμή.

gpapargi

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2465
  • I 'm not young enough to know everything
Απ: Απορία για Συναρτήσεις
« Απάντηση #8 στις: 20 Απρ 2021, 04:40:43 μμ »
Αν δεχτούμε ότι μπορούμε να έχουμε συνάρτηση χωρίς παραμέτρους και να την καλούμε χωρίς παρενθέσεις (το γράφει ο Άλκης στο εγχειρίδιο της ΓΛΩΣΣΑΣ)  τότε δημιουργείται αντίφαση.
Πχ έστω η χωρίς παραμέτρους συνάρτηση:
Συνάρτηση άθροισμα : ακέραια
Μεταβλητές
Ακέραιες: Σ,ι
Αρχή
Σ<-0
Για ι από 1 μέχρι 100
 Σ<-Σ+ι
Τέλος_επανάληψης
Άθροισμα<-Σ
Τέλος_συνάρτησης
Επιστρέφει πάντα το άθροισμα των ακεραίων από το ως το 100.
Αν το κάνουμε χρησιμοποιώντας σα μεταβλητή το όνομα της συνάρτησης. Έχουμε
Συνάρτηση άθροισμα : ακέραια
Μεταβλητές
Ακέραιες: ι
Αρχή
άθροισμα<-0
Για ι από 1 μέχρι 100
 άθροισμα<-άθροισμα+ι
Τέλος_επανάληψης
Τέλος_συνάρτησης
Στην εντολή άθροισμα<-άθροισμα+ι δεν ξέρω αν θέλω το περιεχόμενο ή καλώ τη συνάρτηση.