Αποστολέας Θέμα: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ  (Αναγνώστηκε 7259 φορές)

ΝΙΚΟΣ ΧΑΤΖΗΓΙΑΝΝΑΚΗΣ

  • Επισκέπτης
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« στις: 27 Φεβ 2004, 09:10:30 μμ »
Τελικά στις συναρήσεις το πέρασμα παραμέτρων γίνεται με τιμή η με αναφορά.

Πάντως στον διερμηνευτή της "Γλώσσας" του Αλκη υλοποιείται με αναφορά
« Τελευταία τροποποίηση: 28 Φεβ 2004, 10:43:59 πμ από alkisg »

tommy

  • Νέος
  • *
  • Μηνύματα: 4
  • Γράψτε το προσωπικό σας σλόγκαν!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #1 στις: 28 Φεβ 2004, 02:14:30 πμ »
χαιρετε.
με τον τρόπο που φαίνεται να υλοποιείται το πέρασμα των τιμών σύμφωνα με το βιβλίο παρουσιάζεται σαν με αναφορά, καθώς επηρεάζεται άμεσα η τιμή που έχει η μεταβλητή-όρισμα στο κυρίως πρόγραμμα. Δεν θα έπρεπε όμως να έχει γίνει και μια αναφορά σε δείκτες και διευθύνσεις(έστω αναφορικά)?
« Τελευταία τροποποίηση: 28 Φεβ 2004, 10:44:19 πμ από alkisg »

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 5705
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #2 στις: 28 Φεβ 2004, 11:03:43 πμ »
Νίκο στον διερμηνευτή ΔΕΝ έχει γίνει υλοποίηση με αναφορά, αλλά με αντιγραφή. Πιστεύω ότι αυτόν τον μηχανισμό εννοεί η περιγραφή του σχολικού βιβλίου.
Ο μηχανισμός της αντιγραφής δεν υπάρχει ούτε στην basic ούτε στην pascal.

Εξηγώ σύντομα τις διαφορές των τριών αυτών μηχανισμών. Έστω ότι δηλώνουμε μια συνάρτηση
[glossa]Συνάρτηση Αύξησε(χ): Ακέραια[/glossa]η οποία αυξάνει το χ κατά 1 και ταυτόχρονα επιστρέφει την νέα τιμή του. Έστω ακόμα ότι την καλούμε από το κυρίως πρόγραμμα:
[glossa] α <-- Αύξησε(1)
β <-- 3
γ <-- Αύξησε(β)[/glossa]
Πέρασμα παραμέτρων με τιμή σημαίνει ότι κατά την Αύξησε(β) η τιμή του β δεν θα αλλάξει και θα παραμείνει 3.
Πέρασμα παραμέτρων με αναφορά σημαίνει ότι η Αύξησε(1) δεν είναι αποδεκτή, αφού μόνο οι μεταβλητές μπορούν να περαστούν με αναφορά και όχι οι σταθερές όπως είναι το 1.
Πέρασμα παραμέτρων με αντιγραφή σημαίνει ότι όλο το παραπάνω πρόγραμμα είναι αποδεκτό. Η τιμή της σταθεράς 1 θα αντιγραφεί στην τοπική μεταβλητή χ της συνάρτησης, το χ θα αυξηθεί αλλά φυσικά δεν θα μπορέσει να επιστρέψει την αλλαγμένη τιμή του στο κυρίως πρόγραμμα. Δηλαδή ενώ το α θα γίνει 2, η σταθερά 1 δεν θα γίνει 2 (εννοείται). Αν όμως περαστεί η τιμή της μεταβλητής β στην τοπική μεταβλητή χ με αναφορά, τότε και το β θα γίνει 4 και το γ θα γίνει επίσης 4.

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

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

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

Εννοείται βέβαια ότι αν η εκπαιδευτική κοινότητα καταλήξει σε κάποιο διαφορετικό συμπέρασμα (ή δοθεί διαφορετική διευκρίνηση από το Υπουργείο) θα τροποποιήσω κατάλληλα τον διερμηνευτή.

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #3 στις: 01 Μάρ 2004, 12:54:55 μμ »
Μερικές φορές κάνουμε τα πράγματα πολύ πιο δύσκολα απ'οτι είναι. Κάπου μας είχαν πει οτι ο καλύτερος δάσκαλος είναι αυτός που παίρνει τη θέση του μαθητή και εξετάζει τα πράγματα και από τη δική του σκοπιά.

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

Μια συνάρτηση δέχεται παραμέτρους και επιστρέφει μια τιμή, μια διαδικασία μπορεί να κάνει ό,τι και ένα πρόγραμμα.

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

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

Οι απορίες έχουν έννοια στην υλοποίηση του διερμηνευτή ή της γλωσσομάθειας ή αντίστοιχου άλλου περιβάλλοντος για την ΓΛΩΣΣΑ

Με εκτίμηση,

ΧΑΤΖΗΓΙΑΝΝΑΚΗΣ ΝΙΚΟΣ

  • Επισκέπτης
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #4 στις: 02 Μάρ 2004, 02:25:38 μμ »
Εφόσον λοιπόν μία συνάρτηση δεν μπορεί να μεταβάλει τις παραμέτρους τις (όπως μια διαδικασία) θεωρούμε οτι τις περναμε με τιμή ενω σε μια διαδικασία με αντιγραφή .

Αυτο που ειπα είναι οτι στο διερμηνευτή περνιουνται με αντιγραφή και στις δύο περιπτώσεις.

Εμείς τι διδάσκουμε ?

Μπορεί μια συνάρτηση να αλλάξει τις τιμές στις παραμέτρους τις ?

Ναι είναι ψιλά γράμματα αλλά δε μπορούμε να δίνουμε και αόριστες ερμηνίες

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #5 στις: 03 Μάρ 2004, 11:58:22 πμ »
Θεωρώ Νίκο, οτι απλά δεν χρειάζεται να θίξουμε το αν μια συνάρτηση μπορεί να αλλάζει τις παραμέτρους
Αλλά δεν υπάρχει αόριστη ερμηνεία: μια συνάρτηση δέχεται παραμέτρους και επιστρέφει μια τιμή με το όνομα της συνάρτησης. Η μόνη τιμή που επιστρέφεται είναι αυτή που εκχωρείται (ως τελευταία εντολή) στο όνομα της συνάρτησης, τίποτα άλλο, άρα αν αλλάζει η τιμή κάποιας παραμέτρου δεν σημαίνει οτι η αλλαγή αυτή θα έχει επίπτωση στην τιμή της στο κυρίως πρόγραμμα.
Χρειάζεται τα παιδιά να προβληματιστούν περισσότερο από αυτό ??

Αόριστη ερμηνεία είναι ό,τι δεν βασίζεται σε θεωρία ή παραδείγματα του βιβλίου

Με εκτίμηση,

tanius_nik

  • Επισκέπτης
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #6 στις: 19 Μάρ 2004, 12:00:01 πμ »
Χαιρετώ κι εγώ αυτήν την ψηφιακή κοινότητα,  ;) 8)
την οποία την βρίσκω πολύ σημαντική. Τώρα τελευταία ανακάλυψα αυτήν την κοινότητα και δηλώνω ενθουσιασμένη.
Να συστηθώ κι εγώ λοιπόν. Λέγομαι Τάνια και ζώ στην Λευκάδα.
Διδάσκω το μάθημα αυτό και το βρίσκω καταπληκτικό σαν αντικείμενο,
Όμως για το βιβλίο ας μην εκφραστώ καλύτερα  :furious3:

Βρίσκομαι στο κεφάλαιο 10 και ζητώ την γνώμη σας για τις ασκήσεις στο ΔΤ2
Για πχ το βιβλίο του καθηγητή και κάποιο άλλο βοήθημα που έχω την λύνει έτσι:
Α)
ΔΙΑΔΙΚΑΣΙΑ Τετράγωνο (Χ2)
ΠΡΑΓΜΑΤΙΚΕΣ Χ,Χ2
ΑΡΧΗ
ΔΙΑΒΑΣΕ Χ
Χ2<-Χ^2
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ Τετράγωνο

Προσωπικά πιστεύω ότι είναι λάθος. Όμως πώς να το διδάξεις στους μαθητές σου που πρέπει να γράψουν Πανελλήνιες??
Δηλαδή επειδή διαβάζει το χ , θεωρεί ότι γίνεται εισαγωγή δεδομένων και άρα είναι διαδικασία? Το ίδιο κάνει και στο Β&Γ
Εσείς τι λέτε για αυτό?

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #7 στις: 19 Μάρ 2004, 10:56:24 πμ »
Αγαπητή Τάνια,

Σου προτείνω να δημιουργήσεις λογαριασμό στο στέκι για καλύτερη οργάνωση

Σύμφωνα με το βιβλίο συνάρτηση είναι ο τύπος υποπρογράμματος που δέχεται τιμές και επιστρέφει μετά από την επεξεργασία τους ΜΙΑ τιμή. Ο,τιδήποτε άλλο είναι διαδικασία (τύπος υποπρογράμματος που κάνει ό,τι και ένα πρόγραμμα).
Άρα, δεν πρόκειται να δούμε ποτέ στο τμήμα εντολών μιας συνάρτησης τις εντολές ΔΙΑΒΑΣΕ και ΓΡΑΨΕ

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

Βέβαια το συγκεκεριμένο παράδειγμα ΜΕ ΑΛΛΗ ΕΚΦΩΝΗΣΗ θα έπρεπε να υλοποιείται με συνάρτηση την οποία παραθέτω στην ιστοσελίδα http://users.kor.sch.gr/ptsiotakis/aepp/aepp_ask/ch10/aepp_ask10_1.htm παράδειγμα 10.1.4.

Τάνια δεν ξέρω αν σε κάλυψα. Ή αν υπάρχει διαφορετική άποψη από τα 173 (!!!) εγγεγραμμένα μέλη του forum και λοιπούς μη εγγεγραμμένους αναγνώστες με χαρά αναμένω να την ακούσω

Με την γνωστή εκτίμηση,
« Τελευταία τροποποίηση: 19 Μάρ 2004, 10:58:12 πμ από ptsiotakis »

Γιώργος

  • Επισκέπτης
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #8 στις: 19 Μάρ 2004, 11:03:22 πμ »
Γεια σου Τανια. Λοιπόν το παράδειγμα που λές είναι σωστό γιατί σε μια διαδικασία όπως ξέρουμε μπορούμε να κάνουμε ότι ακριβώς και σε ένα πρόγραμμα , αρά και εισαγωγή στοιχείων


xaidi

  • Ομάδα διαγωνισμάτων 2009
  • *
  • Μηνύματα: 111
  • who is WHO!!!!!!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #9 στις: 19 Μάρ 2004, 11:51:55 πμ »
ΣΥΜΦΩΝΩ ΑΠΟΛΥΤΑ ΜΕ ΤΟΥΣ ΠΑΡΑΠΑΝΩ ΑΛΛΑ ΝΟΜΙΖΩ ΠΩΣ ΤΟ ΚΟΜΜΑΤΙ
ΔΙΑΔΙΚΑΣΙΑ Τετράγωνο (Χ2)  ΕΙΝΑΙ ΛΑΘΟΣ ΘΑ ΕΠΡΕΠΕ ΝΑ ΕΙΝΑΙ

ΔΙΑΔΙΚΑΣΙΑ Τετράγωνο (Χ)

ΘΑ ΣΟΥ ΠΡΟΤΕΙΝΑ ΤΑΝΙΑ ΝΑ ΜΠΕΙΣ ΣΤΗΝ ΙΣΤΟΣΕΛΙΔΑ ΤΟΥ ΠΑΝΑΓΙΩΤΗ. ΕΧΕΙ ΠΟΛΥ ΕΝΔΙΑΦΕΡΟΝ ΥΛΙΚΟ.
Ευχαριστώ,

xaidi

  • Ομάδα διαγωνισμάτων 2009
  • *
  • Μηνύματα: 111
  • who is WHO!!!!!!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #10 στις: 19 Μάρ 2004, 11:55:46 πμ »
ΔΙΑΔΙΚΑΣΙΑ Διαίρεσε_Μιγαδικούς (α, β, γ, δ, πραγμ_πηλίκο, μιγαδ_πηλίκο)

ΜΕΤΑΒΛΗΤΕΣ

   ΠΡΑΓΜΑΤΙΚΕΣ : α, β, γ, δ, πραγμ_πηλίκο, μιγαδ_πηλίκο

ΑΡΧΗ

   πραγμ_πηλίκο <- (α * γ + β * δ) / (γ^2 + δ^2)

   μιγαδ_πηλίκο <- (β * γ - α * δ) / (γ^2 + δ^2)

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

ΤΟ ΠΑΡΑΠΑΝΩ ΕΙΝΑΙ ΕΝΑ ΛΥΜΕΝΟ ΚΟΜΜΑΤΙ ΑΣΚΗΣΗΣ ΑΠΟ ΤΗΝ ΣΕΛΙΔΑ ΣΟΥ . ΘΑ ΜΠΟΡΟΥΣΕΣ ΣΕ ΠΑΡΑΚΑΛΩ ΝΑ ΜΟΥ ΕΞΗΓΗΣΕΙΣ ΤΟ ΚΟΜΜΑΤΙ  "(α, β, γ, δ, πραγμ_πηλίκο, μιγαδ_πηλίκο)"?
Ευχαριστώ,

tanius76

  • Βετεράνος
  • ****
  • Μηνύματα: 60
  • Γράψτε το προσωπικό σας σλόγκαν!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #11 στις: 19 Μάρ 2004, 12:23:16 μμ »

Καταρχήν παιδιά, Γιώργο και Παναγιώτη, ευχαριστώ
για τις απαντήσεις σας.

Η αλήθεια είναι Παναγιώτη από το δικό σου site, είδα την άσκηση και προβληματίστικα..

Καταπληκτική η δουλεία σου και πού χρήσιμη για μένα!

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

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #12 στις: 19 Μάρ 2004, 12:33:42 μμ »
Xaidi δεν έχει δίκιο, το σωστό είναι ΔΙΑΔΙΚΑΣΙΑ Τετράγωνο(Χ2) αφού αυτή η παράμετρος θα επιστραφεί όχι η Χ

Για την άλλη ερώτηση, αναφέρεσαι στην ιστοσελίδα http://users.kor.sch.gr/ptsiotakis/aepp/aepp_ask/tet_math/aepp_tm10.htm που προτείνω τις λύσεις για τις ασκήσεις του τετραδίου μαθητή και στην άσκηση ΔΕ3.

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

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

Με εκτίμηση,

xaidi

  • Ομάδα διαγωνισμάτων 2009
  • *
  • Μηνύματα: 111
  • who is WHO!!!!!!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #13 στις: 19 Μάρ 2004, 12:45:49 μμ »
ΤΟ ΠΡΟΒΛΗΜΑ ΜΟΥ ΕΙΝΑΙ ΤΟ ΕΞΗΣ: ΣΥΜΦΩΝΑ ΜΕ ΤΟ ΒΙΒΛΙΟ "Η ΛΙΣΤΑ ΠΑΡΑΜΕΤΡΩΝ ΕΙΝΑΙ ΜΙΑ ΛΙΣΤΑ ΜΕΤΑΒΛΗΤΩΝ ΤΩΝ ΟΠΟΙΩΝ ΟΙ ΤΙΜΕΣ.....ΤΗΣ ΔΙΑΔΙΚΑΣΙΑΣ. (ΣΕΛ 214)
ΣΤΗΝ ΠΑΡΑΠΑΝΩ ΔΙΑΔΙΚΑΣΙΑ ΔΗΛΩΝΕΙΣ ΟΛΕΣ ΤΙΣ ΜΕΤΑΒΛΗΤΕΣ. ΣΤΗΝ ΕΠΟΜΕΝΗ ΔΙΑΔΙΚΑΣΙΑ ΔΗΛΩΝΕΙΣ ΤΙΣ ΜΕΤΑΒΛΗΤΕΣ "ΕΙΣΟΔΟΥ". ΜΕ ΠΟΙΑ ΑΙΤΙΟΛΟΓΙΑ ΚΑΘΕ ΦΟΡΑ ΦΙΛΤΡΑΡΕΙΣ ΤΙ ΔΗΛΩΝΕΙΣ? ΑΝ ΚΑΤΑΛΑΒΑΙΝΩ ΚΑΛΑ ΣΥΜΦΩΝΑ ΜΕ ΤΟ ΒΙΒΛΙΟ ΤΙΣ ΔΗΛΩΝΟΥΜΕ ΟΛΕΣ.(?)
ΔΙΑΔΙΚΑΣΙΑ Υπολογισμός_ΦΠΑ (Τιμή, συντ_ΦΠΑ)

ΜΕΤΑΒΛΗΤΕΣ

    ΠΡΑΓΜΑΤΙΚΕΣ : Τιμή, συντ_ΦΠΑ, ποσό_ΦΠΑ, τελ_τιμή

ΑΡΧΗ

    Ποσό_ΦΠΑ <- Τιμή * συντ_ΦΠΑ

    τελ_τιμή <- Τιμή + Ποσό_ΦΠΑ

    ΓΡΑΨΕ 'Το ποσό ΦΠΑ είναι, Ποσό_ΦΠΑ, και η τελική τιμή του προϊόντος είναι', τελ_τιμή

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
ΙΣΩΣ ΕΓΩ ΔΕΝ "ΠΙΑΝΩ" ΚΑΤΙ.

« Τελευταία τροποποίηση: 19 Μάρ 2004, 12:48:13 μμ από xaidi »
Ευχαριστώ,

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #14 στις: 19 Μάρ 2004, 01:04:54 μμ »
Πάντα δηλώνω τις μεταβλητές εισόδου ΚΑΙ τις μεταβλητές εξόδου, αν κάπου δενμ το έχω κάνει είναι λάθος μου. Στο συγκεκριμένο παράδειγμα σε όλες τις διαδικασίες ακολυθώ την ίδια στρατηγική.

Στο άλλο παράδειγμα οι μεταβλητές Τιμή και συντ_ΦΠΑ είναι παράμετροι εισόδου. Υπάρχει εκτύπωση εντός της διαδικασίας, δεν επιστρέφεται τίποτα στο κυρίως πρόγραμμα

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

Υπάρχει κάτι άλλο;

Με εκτίμηση,

tommy

  • Νέος
  • *
  • Μηνύματα: 4
  • Γράψτε το προσωπικό σας σλόγκαν!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #15 στις: 19 Μάρ 2004, 03:45:43 μμ »
Χαίρετε,
σχετικά με το προηγούμενο post:
εστω οτι θέλουμε να φτιάξουμε μια διαδικασία που να προσθέτει 2 ακέραιους αριθμούς και να επιστρέφει το αποτέλεσμα στο κυρίως πρόγραμμα, θα ήταν σωστό το παρακάτω?

Διαδικασία Πρόσθεση(Αριθμός1, Αριθμός, Αποτέλεσμα)
Μεταβλητές
  Ακέραιες:Αριθμός1, Αριθμός2, Αποτέλεσμα
Αρχή
  Αποτέλεσμα<-Αριθμός1+Αριθμός2
Τέλος_Διαδικασίας

στο κυρίως πρόγραμμα δε θα πρέπει να δηλωθεί μια μεταβλητή που να δέχεται το Αποτέλεσμα?
και εστω οτι δηλώνεται θα καλέσουμε: Κάλεσε πρόσθεση(χ,χ1,y)?
αλλά η μεταβλητή y για το κυρίως πρόγραμμα δεν έχει κάποια τιμή και η μεταβλητή Αποτέλεσμα είναι τοπική μεταβλητή της διαδικασίας.
Θα σας ήταν εύκολο παρακαλώ να το αναλύσετε;
ευχαρίστώ πολύ



tanius76

  • Βετεράνος
  • ****
  • Μηνύματα: 60
  • Γράψτε το προσωπικό σας σλόγκαν!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #16 στις: 19 Μάρ 2004, 06:33:58 μμ »
Βέβαια το συγκεκεριμένο παράδειγμα ΜΕ ΑΛΛΗ ΕΚΦΩΝΗΣΗ θα έπρεπε να υλοποιείται με συνάρτηση την οποία παραθέτω στην ιστοσελίδα http://users.kor.sch.gr/ptsiotakis/aepp/aepp_ask/ch10/aepp_ask10_1.htm παράδειγμα 10.1.4.

Καταρχήν δεν υπάρχει παράθεση?Πώς γίνεται?
Αρα η εξής Ασκηση που παραθέτω
10.1.1. Να γράψετε υποπρόγραμμα που να διαβάζει έναν αριθμό και να επιστρέφει το τετράγωνό του

ΣΥΝΑΡΤΗΣΗ Εις_το_Τετράγωνο (Χ): ΠΡΑΓΜΑΤΙΚΗ

ΜΕΤΑΒΛΗΤΕΣ

    ΠΡΑΓΜΑΤΙΚΕΣ : Χ

ΑΡΧΗ

    Τετράγωνο <- Χ^2

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ


είναι λάθος Παναγιώτη σωστά? Τι λέτε?

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #17 στις: 19 Μάρ 2004, 07:09:16 μμ »
"Παραθέτω" σημαίνει οτι υπάρχει στην ιστοσελίδα μου και δεν τον αντιγράφω στο forum
Απόσπασμα από ιστοσελίδα http://users.kor.sch.gr/ptsiotakis/aepp/aepp_ask/ch10/aepp_ask10_1.htm
10.1.4. Να γράψετε υποπρόγραμμα που να δέχεται έναν αριθμό και να επιστρέφει το τετράγωνό του

[glossa]
ΣΥΝΑΡΤΗΣΗ Εις_το_Τετράγωνο (Χ): ΠΡΑΓΜΑΤΙΚΗ
ΜΕΤΑΒΛΗΤΕΣ
    ΠΡΑΓΜΑΤΙΚΕΣ : Χ, εκτίμηση
ΑΡΧΗ
    εκτίμηση <-- Χ ^ 2
    Εις_το_Τετράγωνο <-- εκτίμηση
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ
[/glossa]

Μήπως Τάνια έχεις εκτυπώσει την ιστοσελίδα παλιά όπου είχα κάνει λάθος στην τελευταία εντολή? Στην παλιότερη έκδοση την είχα ονομάσει "Τετράγωνο", όταν την μετονόμασα ξέχασα να αλλάξω και την τελευταία εντολή. Δες και τώρα...

Tommy:

Το πρόγραμμα που αναφέρεσαι είναι το εξής:

[glossa]
ΠΡΟΓΡΑΜΜΑ Έλεγχος_Πρόσθεσης
ΜΕΤΑΒΛΗΤΕΣ
 ΑΚΕΡΑΙΕΣ: x1, x2, y
ΑΡΧΗ
 x1 <-- 5
 x2 <-- 11
 ΚΑΛΕΣΕ Πρόσθεση (x1, x2, y)
 ΓΡΑΨΕ y
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
!=================================
ΔΙΑΔΙΚΑΣΙΑ Πρόσθεση(Αριθμός1, Αριθμός2, Αποτέλεσμα)
ΜΕΤΑΒΛΗΤΕΣ
 ΑΚΕΡΑΙΕΣ: Αριθμός1, Αριθμός2, Αποτέλεσμα
ΑΡΧΗ
 Αποτέλεσμα <-- Αριθμός1 + Αριθμός2
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
[/glossa]


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

Κάνε copy paste στον διερμηνευτή αν τον έχεις και τρέξτο να παρακολουθήσεις τις τιμές των μεταβλητών κατά την εκτέλεση

Μπορείς επίσης να δεις και τις ιστοσελίδες:

1)  http://users.kor.sch.gr/ptsiotakis/aepp/aepp_theory/ch10/aepp_theory10c.htm
2)  http://users.kor.sch.gr/ptsiotakis/aepp/aepp_ask/ch10/aepp_ask10_9.htm

Με τη γνωστή εκτίμηση,
« Τελευταία τροποποίηση: 19 Μάρ 2004, 07:15:31 μμ από ptsiotakis »

tanius76

  • Βετεράνος
  • ****
  • Μηνύματα: 60
  • Γράψτε το προσωπικό σας σλόγκαν!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #18 στις: 20 Μάρ 2004, 12:45:13 μμ »
Ναι Παναγιώτη έχω την προηγούμενη εκδοχή της Άσκησης!
Όπου το πρώτο λάθος ήταν στην εκφώνιση όπου έλεγε να διαβάζει έναν αριθμό και όχι να δέχεται έναν αριθμό και το δεύτερο είναι αυτό που αναφέρεις εσύ.
Ευχαριστώ πάντως για τις απαντήσεις σου..
ΚΑΛΟ ΣΚ !

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #19 στις: 20 Μάρ 2004, 05:38:45 μμ »
Η συνεχής βελτίωση του δικτυακού κόμβου οφείλεται στα διαρκή σχόλια και παρατηρήσεις των συναδέλφων κάτι που άλλωστε επιζητώ.  Υπάρχουν σίγουρα πολλά λάθη ακόμη

Το υλικό αυτό τελικά ανήκει σε όλους

xaidi

  • Ομάδα διαγωνισμάτων 2009
  • *
  • Μηνύματα: 111
  • who is WHO!!!!!!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #20 στις: 22 Μάρ 2004, 08:13:54 πμ »
 OXI EYXARISTO (KATI EXEI PATHEI PALI AYTO TO MHXANIMA KAI DEN GRAFEI ELLHNIKA ! ) DHLADH OTAN EKTYPVNEIS MESA STH DIADIKASIA, (AYTONOHTO OTI DEN EPISTREFEI TIPOTA) DEN DHLONEIS OTAN YPARXEI EPISTROFJH STIS DIADIKASIES DHLONEIS TA PANTA. ETSI TO KATALABAINO KI EGO.
Ευχαριστώ,

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #21 στις: 22 Μάρ 2004, 09:08:09 πμ »
Όταν δεν υπάρχει παράμετρος εξόδου δεν την βάζεις (πχ στην εκτύπωση) αλλά θα βάλεις τις παραμέτρους εισόδου. Πώς θα πάρει δεδομένα η διαδικασία ;;;
Όταν έχεις και εισόδου και εξόδου τότε θα βάλεις όλες τις παραμέτρους

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

Μάλιστα, το βιβλίο λέει οτι μια διαδικασία μπορεί να μην έχει καθόλου παραμέτρους

Με εκτίμηση,

tommy

  • Νέος
  • *
  • Μηνύματα: 4
  • Γράψτε το προσωπικό σας σλόγκαν!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #22 στις: 22 Μάρ 2004, 11:38:34 πμ »
ptsiotakis:

Ευχαριστώ πολύ για την απάντηση.

tanius76

  • Βετεράνος
  • ****
  • Μηνύματα: 60
  • Γράψτε το προσωπικό σας σλόγκαν!
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #23 στις: 22 Μάρ 2004, 12:21:12 μμ »
Παιδιά άλλη μια διευκρινησούλα με τα υποπρογράμματα

Οταν η εκφώνιση λέει να κάνετε υποπρόγραμμα που να δέχεται τις παραμέτρους α,β  
σημαίνει ότι οι τιμές αυτές έχονται από το Κύριο Πρόγραμμα.
Ομως στο βιβλίο στην άσκηση ΔΤ2 το Β) Ερώτημα αν δεν κάνω λάθος
Ενώ γράφει έτσι στην εκφώνηση χρησιμοποιεί Διαδικασία
και εντός της διαδικασίας γράφει Διάβασε α,β
Τι λέτε εσείς γιαυτό?

P.Tsiotakis

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3305
  • agent romanoff you miss me?
    • P.Tsiotakis
Re: ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
« Απάντηση #24 στις: 22 Μάρ 2004, 12:41:47 μμ »
Σαφώς, στο ΔΤ2.β πρέπει να χρησιμοποιηθεί συνάρτηση

Ωστόσο, σε όποια περίπτωση χρησιμοποιώ συνάρτηση μπορώ να χρησιμοποιήσω και διαδικασία για να κάνω τα ίδια πράγματα (το αντίθετο φυσικά δεν ισχύει).

Δεν ξέρω γιατί αυτοί που έλυσαν την άσκηση επέλεξαν διαδικασία. Η πιο "ψαγμένη" εξήγηση είναι οτι ήθελαν να περάσουν το μήνυμα που προανέφερα. Την πιο απλή εξήγηση δεν θέλω να την αναφέρω τώρα  :furious3:

Tommy, δεν χρειάζονται ευχαριστίες, συζητάμε για να βγάζουμε συμπεράσματα

Με εκτίμηση,