Το Στέκι των Πληροφορικών

Γενικό Λύκειο => Γ΄ Λυκείου => Τμηματικός προγραμματισμός => Μήνυμα ξεκίνησε από: nikolasmer στις 27 Μαρ 2013, 10:21:54 ΜΜ

Τίτλος: Μεταβάλλω το δείκτη μέσα σε Συνάρτηση και μέσα σε Διαδικασία
Αποστολή από: nikolasmer στις 27 Μαρ 2013, 10:21:54 ΜΜ
Επιτρέπεται αυτό
Κώδικας [Επιλογή]

ΠΡΟΓΡΑΜΜΑ Α1
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: I, Χ
ΑΡΧΗ
  ΓΙΑ I ΑΠΟ 0 ΜΕΧΡΙ 9
    Χ <- Σ(I)
    ΓΡΑΨΕ Χ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΣΥΝΑΡΤΗΣΗ Σ(I): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: I
ΑΡΧΗ
  I <- I + 1
  Σ <- I
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ


Και ΔΕΝ επιτρέπεται αυτό
Κώδικας [Επιλογή]

ΠΡΟΓΡΑΜΜΑ Α2
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: I, Χ
ΑΡΧΗ
  ΓΙΑ I ΑΠΟ 0 ΜΕΧΡΙ 9
    ΚΑΛΕΣΕ Δ(I)
    ΓΡΑΨΕ I
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΔΙΑΔΙΚΑΣΙΑ Δ(I)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: I
ΑΡΧΗ
  I <- I + 1
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


(Ακόμα και αν δε μεταβάλλω την πραγματική αλλά την τυπική παράμετρο)
Σωστά;( :D)
Τίτλος: Απ: Μεταβάλλω το δείκτη μέσα σε Συνάρτηση και μέσα σε Διαδικασία
Αποστολή από: gthal στις 27 Μαρ 2013, 10:53:47 ΜΜ
χμμ πολύ πονηρό αυτό...
έχεις δίκιο, γιατί στη 2η περίπτωση μεταβάλλεις το μετρητή της ΓΙΑ
Τίτλος: Απ: Μεταβάλλω το δείκτη μέσα σε Συνάρτηση και μέσα σε Διαδικασία
Αποστολή από: Gnirut στις 28 Μαρ 2013, 01:20:00 ΜΜ
Μια ακόμα πιο "μπερδεψιάρικη" άσκηση βασισμένη πάνω στα παραπάνω προγράμματα που στείλατε:

Τι θα εμφανίσει στην οθόνη το παρακάτω πρόγραμμα;

Κώδικας [Επιλογή]

ΠΡΟΓΡΑΜΜΑ Α3
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: I, Χ
ΑΡΧΗ
  ΓΙΑ I ΑΠΟ 0 ΜΕΧΡΙ 9
    Χ <- Σ(I)
    ΓΡΑΨΕ Χ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΔΙΑΔΙΚΑΣΙΑ Δ(Χ)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Χ
ΑΡΧΗ
  Χ <- Χ + 1
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

ΣΥΝΑΡΤΗΣΗ Σ(I): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: I
ΑΡΧΗ
  ΚΑΛΕΣΕ Δ(I)
  Σ <- I
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Τίτλος: Απ: Μεταβάλλω το δείκτη μέσα σε Συνάρτηση και μέσα σε Διαδικασία
Αποστολή από: nikolasmer στις 28 Μαρ 2013, 01:42:28 ΜΜ
Παράθεση από: Gnirut στις 28 Μαρ 2013, 01:20:00 ΜΜ
Μια ακόμα πιο "μπερδεψιάρικη" άσκηση βασισμένη πάνω στα παραπάνω προγράμματα που στείλατε:

Τι θα εμφανίσει στην οθόνη το παρακάτω πρόγραμμα;

Κώδικας [Επιλογή]

ΠΡΟΓΡΑΜΜΑ Α3
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: I, Χ
ΑΡΧΗ
  ΓΙΑ I ΑΠΟ 0 ΜΕΧΡΙ 9
    Χ <- Σ(I)
    ΓΡΑΨΕ Χ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΔΙΑΔΙΚΑΣΙΑ Δ(Χ)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Χ
ΑΡΧΗ
  Χ <- Χ + 1
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

ΣΥΝΑΡΤΗΣΗ Σ(I): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: I
ΑΡΧΗ
  ΚΑΛΕΣΕ Δ(I)
  Σ <- I
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ


:D
Φοβερό! Πάρα πολύ ωραίο Gnirut. Εδώ τώρα μεταβάλλεται ή δε μεταβάλλεται ο δείκτης; :-\
Τίτλος: Απ: Μεταβάλλω το δείκτη μέσα σε Συνάρτηση και μέσα σε Διαδικασία
Αποστολή από: ioarvanit στις 29 Απρ 2014, 04:39:03 ΜΜ
Ο Δείκτης Ι του κυρίου προγράμματος δεν μεταβάλλεται παρά μόνο από την δομή επανάληψης του ίδιου του προγράμματος. Η διαδικασία μεταβάλλει την τιμή της μεταβλητής Ι της συνάρτησης η οποία όμως δεν επιστρέφει στο κυρίως πρόγραμμα