Πέρασμα διδιάστατου πίνακα σε διαδικασία

Ξεκίνησε από stavroslagos, 26 Φεβ 2010, 04:39:27 ΠΜ

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

stavroslagos

Χαιρετισμούς στο φόρουμ και πολλά διαφωτιστικά ποστ να 'χουμε,
Δούλευα με έναν μαθητή σε ένα πρόβλημα και χρειάστηκε να περάσει σε μια διαδικασία έναν πίνακα διδιάστατο.
Ο compiler αναφέρει λάθος στην διαδικασία "Περιμένω δεξιά παρένθεση ή κόμμα" στην πρώτη αγκύλη του πίνακα π.χ Διαδικασία διαδ1(πινακας1[25,7],μετ1).
Καμία πρόταση; Μπορεί να γίνει;


ΠαράθεσηΠΡΟΓΡΑΜΜΑ Θέμα_4
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: i, j, Σύνολο, Κ_Ζ
  ΧΑΡΑΚΤΗΡΕΣ: ΚΡΑΤ[25, 7]
ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 25
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 7
             ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
                  ΔΙΑΒΑΣΕ ΚΡΑΤ[i, j]
             ΜΕΧΡΙΣ_ΟΤΟΥ ΚΡΑΤ[i, j] = "Δ" Η ΚΡΑΤ[i, j] = "Κ"
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  Σύνολο <- 0
  ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 7
    ΚΑΛΕΣΕ Κέρδος (Κ_Ζ)
    Σύνολο <- Σύνολο + Κ_Ζ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΑΝ Σύνολο > 0 ΤΟΤΕ
    ΓΡΑΨΕ 'κέρδος', Σύνολο
  ΑΛΛΙΩΣ_ΑΝ Σύνολο < 0 ΤΟΤΕ
    ΓΡΑΨΕ 'ζημιές', Σύνολο
  ΑΛΛΙΩΣ
    ΓΡΑΨΕ 'Μηδενική μεταβολή εσόδων'
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ Κέρδος(ΥΠ_ΚΡΑΤ[25,7],ΥΠ_Κ_Ζ)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Ημέρα, i, j, Πλήθος_δωματίων, Πλήθος_υπαλλήλων, ΥΠ_Κ_Ζ
  ΧΑΡΑΚΤΗΡΕΣ: ΥΠ_ΚΡΑΤ[25, 7]
ΑΡΧΗ
  Πλήθος_δωματίων <- 0
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 25
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 7
      ΑΝ ΚΡΑΤ[i, j] = "Κ" ΤΟΤΕ
        Πλήθος_δωματίων <- Πλήθος_δωματίων + 1
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΑΝ Πλήθος_δωματίων <= 4 ΤΟΤΕ
    Πλήθος_υπαλλήλων <- 3
  ΑΛΛΙΩΣ
    ΑΝ Πλήθος_δωματίων <= 8 ΤΟΤΕ
      Πλήθος_υπαλλήλων <- 4
    ΑΛΛΙΩΣ
      ΑΝ Πλήθος_δωματίων <= 12 ΤΟΤΕ
        Πλήθος_υπαλλήλων <- 5
      ΑΛΛΙΩΣ
        Πλήθος_υπαλλήλων <- 6
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΑΝ
  ΥΠ_Κ_Ζ <- Πλήθος_δωματίων*75 - Πλήθος_υπαλλήλων*45
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

alkisg

Στην επικεφαλίδα των υποπρογραμμάτων δεν αναφέρουμε τον αριθμό των στοιχείων, δηλαδή το
ΔΙΑΔΙΚΑΣΙΑ Κέρδος(ΥΠ_ΚΡΑΤ[25,7],ΥΠ_Κ_Ζ)

θα πρέπει να γραφεί ως
ΔΙΑΔΙΚΑΣΙΑ Κέρδος(ΥΠ_ΚΡΑΤ, ΥΠ_Κ_Ζ)


Επίσης πρόσεξε λίγο εκεί που την καλείς με μία παράμετρο, ΚΑΛΕΣΕ Κέρδος (Κ_Ζ), ενώ έχεις δηλώσει ότι παίρνει δύο παραμέτρους.

tom

Παράθεση από: alkisg στις 26 Φεβ 2010, 08:15:53 ΠΜ
Επίσης πρόσεξε λίγο εκεί που την καλείς με μία παράμετρο, ΚΑΛΕΣΕ Κέρδος (Κ_Ζ), ενώ έχεις δηλώσει ότι παίρνει δύο παραμέτρους.
Να μια καλή ιδέα για την επόμενη έκδοση του Διερμηνευτή: "Υπερφόρτωση συναρτήσεων και τελεστών"!  :)
Θωμάς Σκυλογιάννης

- Ζήσε σα να' ταν να πεθάνεις αύριο. Μάθε σα να' ταν να ζεις για πάντα.
                                                                                     Μαχάτμα Γκάντι

stavroslagos

Ευχαριστώ πολύ. Έχεις κάνει πολλή και καλή δουλειά με την "ΓΛΩΣΣΑ".