Γενικό Λύκειο > Τμηματικός προγραμματισμός

Επιστροφή από Συνάρτηση

(1/5) > >>

kapapi:
Δίνεται το παρακάτω πρόγραμμα (κύριο πρόγραμμα και υποπρόγραμμα):

1. ΠΡΟΓΡΑΜΜΑ Εμβαδό_Τριγώνου
2. ΜΕΤΑΒΛΗΤΕΣ
3. ΠΡΑΓΜΑΤΙΚΕΣ: Β, Υ, Ε
4. ΑΡΧΗ
5.     Β <- 20
6.     Υ <- 5
7.     ΓΡΑΨΕ Β, Υ
8.     Ε <- Υπολογισμός (Β, Υ)
9.     ΓΡΑΨΕ Ε
10. ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
11. ! =============================
12. ΣΥΝΑΡΤΗΣΗ Υπολογισμός (αριθμός1, αριθμός2) : ΠΡΑΓΜΑΤΙΚΗ
13. ΜΕΤΑΒΛΗΤΕΣ
14. ΠΡΑΓΜΑΤΙΚΕΣ: αριθμός1, αριθμός2, αριθμός3
15. ΑΡΧΗ
16.     αριθμός3 <- αριθμός1 * αριθμός2
17.     Υπολογισμός <- αριθμός3 / 2
18. ΤΕΛΟΣ_ ΣΥΝΑΡΤΗΣΗΣ

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

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

Και κάτι ακόμη: Η ίδια η συνάρτηση ,Υπολογισμός, από ποιά εντολή παίρνει την τιμή που θα επιστρέψει: από την 17, την 18 ή από την 8;
Η εντολή 18 - ΤΕΛΟΣ_ ΣΥΝΑΡΤΗΣΗΣ -προκαλεί ή όχι μεταβολή;

Αν είχα Διαδικασία, η αντίστοιχη εντολή -ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ- προκαλεί ή όχι μεταβολές;

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

petrosp13:
Νομίζω ότι όλα αυτά αποτελούν τεχνικές λεπτομέρειες που δεν θα έπρεπε να αφορούν ένα λυκειακό μάθημα...

itt:

--- Παράθεση από: kapapi στις 05 Απρ 2015, 11:16:23 πμ ---Σύμφωνα με το νέο σχολικό βιβλίο (αντιγράφω σελίδα 179):
Σε κάθε περίπτωση μετά το τέλος της εκτέλεσης της διαδικασίας ή της συνάρτησης, γίνεται επιστροφή ακριβώς μετά το σημείο απ΄ όπου κλήθηκε.

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

--- Τέλος παράθεσης ---

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



kapapi:

--- Παράθεση από: petrosp13 στις 05 Απρ 2015, 11:46:15 πμ ---Νομίζω ότι όλα αυτά αποτελούν τεχνικές λεπτομέρειες που δεν θα έπρεπε να αφορούν ένα λυκειακό μάθημα...

--- Τέλος παράθεσης ---

Ναι αλλά αν φέτος έχουμε σε υποπρογράμματα θέματα όπως:
1. 2010-ΘΕΜΑ Β
2. 2010-ΘΕΜΑ Β2-ΕΠΑΝΑΛΗΠΤΙΚΕΣ
3. 2009-ΘΕΜΑ 2Α
4. 2009-ΘΕΜΑ 2Α-ΕΠΑΝΑΛΗΠΤΙΚΕΣ

τότε τι κάνουμε;

itt:

--- Παράθεση από: kapapi στις 05 Απρ 2015, 02:07:11 μμ ---Ναι αλλά αν φέτος έχουμε σε υποπρογράμματα θέματα όπως:
1. 2010-ΘΕΜΑ Β
2. 2010-ΘΕΜΑ Β2-ΕΠΑΝΑΛΗΠΤΙΚΕΣ
3. 2009-ΘΕΜΑ 2Α
4. 2009-ΘΕΜΑ 2Α-ΕΠΑΝΑΛΗΠΤΙΚΕΣ

τότε τι κάνουμε;

--- Τέλος παράθεσης ---

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

Πλοήγηση

[0] Λίστα μηνυμάτων

[#] Επόμενη σελίδα

Μετάβαση στην πλήρη έκδοση