Πραγματικές και Τυπικές Παράμετροι

Ξεκίνησε από MichaelP, 23 Μαρ 2008, 12:49:13 ΜΜ

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

MichaelP

Αγαπητοί,

Θα ήθελα να συζητήσουμε λίγο, τη διαφορά Πραγματικής και Τυπικής Παραμέτρου.

Ας υποθέσουμε το παρακάτω τμήμα προγράμματος:

ΠΡΟΓΡΑΜΜΑ ΥΠΟΛΟΓΙΣΜΟΣ_ΕΜΒΑΔΟΥ_ΤΕΤΡΑΓΩΝΟΥ
...
ΚΑΛΕΣΕ ΥΠΟΛΟΓΙΣΜΟΣ_ΕΜΒΑΔΟΥ(Α)
...
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΔΙΑΔΙΚΑΣΙΑ ΥΠΟΛΟΓΙΣΜΟΣ_ΕΜΒΑΔΟΥ(Α)
ΜΕΤΑΒΛΗΤΕΣ
ΠΡΑΓΜΑΤΙΚΕΣ: Α
ΑΡΧΗ
ΔΙΑΒΑΣΕ Α
...
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

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

Με τιμή,

P.Tsiotakis

Η μεταβλητή Α του κυρίου προγράμματος είναι ΔΙΑΦΟΡΕΤΙΚΗ απο αυτήν της διαδικασίας. Πρόκειται για διαφορετικές θέσεις μνήμης που όμως είναι συγκοινωνούντα δοχεία (ανταλλαγή περιεχομένου) και ... έχουν το ίδιο όνομα (απλή συνωνυμία).

Επομένως η μεταβλητή Α του κυρίου προγράμματος είναι η πραγματική (κλήση)
και η μεταβλητή Α της διαδικασίας η τυπική παράμετρος (δήλωση).

Το βιβλίο λίγο μπερδεμένα τα έχει γράψει.

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

MichaelP

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

Σε ευχαριστώ για την άμεση απάντησή σου.

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

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

Ευχαριστώ.

Μιχάλης

petrosp13

Στην πραγματικότητα, δεν είναι καν διαφορετικές θέσεις μνήμης (κλήση κατά αναφορά)...
Παπαδόπουλος Πέτρος
Καθηγητής Πληροφορικής

EleniK

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

P.Tsiotakis


EleniK

Ελένη Κοκκίνου
Καθηγήτρια Πληροφορικής, ΠΕ19

terzantonis

Καλημέρα,

Μία ερώτηση έχω πάνω σ'αυτό. Όταν μέσα από μία διαδικασία καλώ ένα άλλο υποπρόγραμμα τα ορίσματα που χρησιμοποιώ για να καλέσω είναι πραγματικές παράμετροι της διαδικασίας;

Νίκος Αδαμόπουλος

Ναι. Στο σημείο της κλήσης είναι πραγματικές παράμετροι.

terzantonis