Δευτέρα 23 Αυγούστου 2010

Άσκηση: Επεξεργασία δοσμένου πλήθους δεδομένων

Γράψτε πρόγραμμα το οποίο:
α) διαβάζει τα ονοματεπώνυμα και τους νομούς (Ηράκλειο ή
    Ρέθυμνο ή Λασίθι ή Χανιά) στους οποίους κατοικούν 133
    κρητικοί,
β) υπολογίζει και εμφανίζει το ποσοστό (%) των κρητικών που
    είναι χανιώτες,
γ) εμφανίζει τα ονοματεπώνυμα των ηρακλειωτών κατά αλφαβητική
   σειρά.

Παρατηρήσεις
* Το πρόγραμμα πρέπει να διασφαλίζει την εγκυρότητα όλων των
   εισερχόμενων δεδομένων.
* Σε περίπτωση που δεν υπάρχουν καθόλου ηρακλειώτες, το πρόγραμμα
  εμφανίζει κατάλληλο μήνυμα λάθους.

Λύση

      ΠΡΟΓΡΑΜΜΑ ΚΡΗΤΗ
      ΜΕΤΑΒΛΗΤΕΣ
            ΑΚΕΡΑΙΕΣ: λ, Χαν, Ηρακλ
            ΠΡΑΓΜΑΤΙΚΕΣ: ΠοσΧαν
            ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[133], ΟΝΗρ[133], ΝΟΜ[133]
      ΑΡΧΗ
            ΓΙΑ λ ΑΠΟ 1 ΜΕΧΡΙ 133
                ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
                     ΔΙΑΒΑΣΕ ΟΝ[λ]
                ΜΕΧΡΙΣ_ΟΤΟΥ ΟΝ[λ] < > '  '
                ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
                     ΔΙΑΒΑΣΕ ΝΟΜ[λ]
                ΜΕΧΡΙΣ_ΟΤΟΥ (ΝΟΜ[λ] = 'Ηράκλειο') Ή
                                           (ΝΟΜ[λ] = 'Λασίθι') Ή
                                           (ΝΟΜ[λ] = 'Ρέθυμνο') Ή
                                           (ΝΟΜ[λ] = 'Χανιά')             
            ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
            Χαν <-- 0
            Ηρακλ <-- 0
            ΓΙΑ λ ΑΠΟ 1 ΜΕΧΡΙ 133
                ΑΝ ΝΟΜ[λ] = 'Ηράκλειο' ΤΟΤΕ
                     Ηρακλ <-- Ηρακλ+1
                     ΟΝΗρ[λ] <-- ΟΝ[λ]
                ΤΕΛΟΣ_ΑΝ
                ΑΝ ΝΟΜ[λ] = 'Χανιά' ΤΟΤΕ
                     Χαν <-- Χαν+1
                ΤΕΛΟΣ_ΑΝ
            ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
            ΠοσΧαν <-- 100*Χαν/133
            ΓΡΑΨΕ ΠοσΧαν
            ΑΝ Ηρακλ > 0 ΤΟΤΕ
                  ΓΙΑ κ ΑΠΟ 2 ΜΕΧΡΙ Ηρακλ
                      ΓΙΑ λ ΑΠΟ Ηρακλ ΜΕΧΡΙ κ ΜΕ_ΒΗΜΑ -1
                           ΑΝ ΟΝΗρ[λ-1] > ΟΝΗρ[λ] ΤΟΤΕ
                                 Βοηθ <-- ΟΝΗρ[λ-1]
                                 ΟΝΗρ[λ-1] <-- ΟΝΗρ[λ]
                                 ΟΝΗρ[λ] <-- Βοηθ
                           ΤΕΛΟΣ_ΑΝ
                      ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
                  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
                  ΓΙΑ λ ΑΠΟ 1 ΜΕΧΡΙ Ηρακλ
                      ΓΡΑΨΕ ΟΝΗρ[λ]
                  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
            ΑΛΛΙΩΣ
                  ΓΡΑΨΕ 'Δεν υπάρχει κανένας ηρακλειώτης!'
            ΤΕΛΟΣ_ΑΝ
      ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

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

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