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

Γενικό Λύκειο => Γ΄ Λυκείου => Τμηματικός προγραμματισμός => Μήνυμα ξεκίνησε από: ChrisD στις 22 Μαΐου 2025, 04:47:32 ΜΜ

Τίτλος: Τι θα εμφανίσει;
Αποστολή από: ChrisD στις 22 Μαΐου 2025, 04:47:32 ΜΜ
Καλησπέρα σας όλους και ευχαριστώ εκ των προτέρων για το χρόνο σας και για τα φώτα σας!
Χωρίς να εξετάζω την σκοπιμότητα υλοποίησης του παραπάνω προγράμματος, αν καλούσα την διαδικασία και έβαζα στις μεταβλητές που καλώ το Α δύο φορές και μέσα στην διαδικασία στην πρώτη φορά που το έτρεχα άλλαζα την πρώτη μεταβλητή, δηλαδή το Χ και σας δεύτερη περίπτωση αλλάζω την δεύτερη μεταβλητή το Ζ τι θα περίμενα να εμφανιστεί στο πρόγραμμα;   
Σκέφτηκα ότι λογικά την δεύτερη τιμή πάντα αλλά τρέχοντας τον διερμηνευτή διαπίστωσα ότι αυτό δεν ισχύει...
Με την εντολή Χ <- Χ + 1 θα εμφανίσει 2,2,2
Με την εντολή Ζ <- Ζ + 1 θα εμφανίσει 1,1,2
Άρα καταλαβαίνω ότι αυτό που επηρεάζει είναι η πρώτη μεταβλητή. Γιατί;  
 

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

ΔΙΑΔΙΚΑΣΙΑ ΔΙΑΔ(Χ, Ζ, Ω) 
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Χ, Ζ, Ω
ΑΡΧΗ
  Ω <- Χ + Ζ
  Ζ <- Ζ + 1
  ! Χ <- Χ + 1
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
Τίτλος: Απ: Τι θα εμφανίσει;
Αποστολή από: petrosp13 στις 22 Μαΐου 2025, 10:34:48 ΜΜ
Προφανώς είναι θέμα υλοποίησης του διερμηνευτή και πώς αντιγράφει πίσω τις τιμές
Αλλά γιατί να μπλέξεις με κάτι τέτοιο;
Τίτλος: Απ: Τι θα εμφανίσει;
Αποστολή από: alkisg στις 22 Μαΐου 2025, 10:38:18 ΜΜ
Χρήστο δες τη βοήθεια του Διερμηνευτή, περιγράφει και το πως και το γιατί:

https://alkisg.mysch.gr/ΓΛΩΣΣΑ/Μεταβίβαση_παραμέτρων/