Αποστολέας Θέμα: Πέρασμα διδιάστατου πίνακα σε διαδικασία  (Αναγνώστηκε 1564 φορές)

stavroslagos

  • Νέος
  • *
  • Μηνύματα: 2
Χαιρετισμούς στο φόρουμ και πολλά διαφωτιστικά ποστ να 'χουμε,
Δούλευα με έναν μαθητή σε ένα πρόβλημα και χρειάστηκε να περάσει σε μια διαδικασία έναν πίνακα διδιάστατο.
Ο 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

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 4347
    • alkisg@im.sch.gr
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Πέρασμα διδιάστατου πίνακα σε διαδικασία
« Απάντηση #1 στις: 26 Φεβ 2010, 08:15:53 πμ »
Στην επικεφαλίδα των υποπρογραμμάτων δεν αναφέρουμε τον αριθμό των στοιχείων, δηλαδή το
Κώδικας: [Επιλογή]
ΔΙΑΔΙΚΑΣΙΑ Κέρδος(ΥΠ_ΚΡΑΤ[25,7],ΥΠ_Κ_Ζ)
θα πρέπει να γραφεί ως
Κώδικας: [Επιλογή]
ΔΙΑΔΙΚΑΣΙΑ Κέρδος(ΥΠ_ΚΡΑΤ, ΥΠ_Κ_Ζ)

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

tom

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 488
Απ: Πέρασμα διδιάστατου πίνακα σε διαδικασία
« Απάντηση #2 στις: 26 Φεβ 2010, 10:41:25 πμ »
Επίσης πρόσεξε λίγο εκεί που την καλείς με μία παράμετρο, ΚΑΛΕΣΕ Κέρδος (Κ_Ζ), ενώ έχεις δηλώσει ότι παίρνει δύο παραμέτρους.
Να μια καλή ιδέα για την επόμενη έκδοση του Διερμηνευτή: "Υπερφόρτωση συναρτήσεων και τελεστών"!  :)
Θωμάς Σκυλογιάννης

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

stavroslagos

  • Νέος
  • *
  • Μηνύματα: 2
Απ: Πέρασμα διδιάστατου πίνακα σε διαδικασία
« Απάντηση #3 στις: 27 Φεβ 2010, 09:04:03 μμ »
Ευχαριστώ πολύ. Έχεις κάνει πολλή και καλή δουλειά με την "ΓΛΩΣΣΑ".