Δευτέρα, 29 Νοεμβρίου 2010

Άσκηση : δυσδιάστατος πίνακας (μετρητής ιδιότητας+άθροισμα ανά γραμμή+ελάχιστο ανά στήλη)

Γράψτε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο:
α) διαβάζει τις επωνυμίες 8 μεταφορικών εταιρειών και
     τις καταχωρεί σε κατάλληλο πίνακα,
β) διαβάζει το πλήθος των πακέτων που διακίνησε κάθε
     εταιρεία για κάθε μήνα του χρόνου που πέρασε,
γ) υπολογίζει και εμφανίζει:
     * πόσες εταιρείες διακίνησαν περισσότερα από 12000
        πακέτα κατά τη διάρκεια της προηγούμενης χρονιάς,
     * τις επωνυμίες των εταιρειών που διακίνησαν το
        μικρότερο πλήθος δεμάτων κατά το μήνα Νοέμβριο.

Λύση

      ΠΡΟΓΡΑΜΜΑ Εταιρείες
      ΜΕΤΑΒΛΗΤΕΣ
             ΧΑΡΑΚΤΗΡΕΣ: ΕΤ[8]
             ΑΚΕΡΑΙΕΣ: ΔΕΜ[8, 12], κ, λ, σ, Φ12, Μικ
      ΑΡΧΗ
             ΓΙΑ κ ΑΠΟ 1 ΜΕΧΡΙ 8
                    ΔΙΑΒΑΣΕ ΕΤ[κ]
             ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
             ΓΙΑ κ ΑΠΟ ΜΕΧΡΙ 8
                  ΓΙΑ λ ΑΠΟ 1 ΜΕΧΡΙ 12
                      ΔΙΑΒΑΣΕ ΔΕΜ[κ, λ]
                  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
             ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
             Φ12 <-- 0
             ΓΙΑ κ ΑΠΟ ΜΕΧΡΙ 8
                  σ <-- 0
                  ΓΙΑ λ ΑΠΟ ΜΕΧΡΙ 12
                      σ <-- σ+ΔΕΜ[κ, λ]
                  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
                  ΑΝ σ > 12000 ΤΟΤΕ
                       Φ12 <-- Φ12+1
                  ΤΕΛΟΣ_ΑΝ
             ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
             ΓΡΑΨΕ Φ12
             Μικ <-- ΔΕΜ[1, 11]
             ΓΙΑ κ ΑΠΟ ΜΕΧΡΙ 8
                  ΑΝ ΔΕΜ[κ, 11] < Μικ ΤΟΤΕ
                       Μικ <-- ΔΕΜ[κ, 11]
                  ΤΕΛΟΣ_ΑΝ
             ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
             ΓΙΑ κ ΑΠΟ ΜΕΧΡΙ 8
                  ΑΝ ΔΕΜ[κ, 11] = Μικ ΤΟΤΕ
                       ΓΡΑΨΕ ΕΤ[κ]
                  ΤΕΛΟΣ_ΑΝ
             ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
      ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
  

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου