Τετάρτη 8 Σεπτεμβρίου 2010

Άσκηση : Μονοδιάστατοι πίνακες (αναζήτηση)

Γράψτε πρόγραμμα το οποίο:
α) διαβάζει τις επωνυμίες 12 νομισμάτων (εκτός του
     ευρώ) και τις καταχωρεί σε μονοδιάστατο πίνακα,
β) διαβάζει τις ισοτιμίες των νομισμάτων αυτών ως
    προς το ευρώ και τις καταχωρεί σε μονοδιάστατο
    πίνακα,
γ) διαβάζει την επωνυμία ενός νομίσματος (Ν)
δ) ελέγχει αν το Ν είναι ένα από τα 12 νομίσματα που
    δόθηκαν στο ερώτημα α,
ε) αν η απάντηση στο δ είναι καταφατική, τότε υπολογίζεται
    και τυπώνεται η ισοτιμία του νομίσματος αυτού (σε διαφο-
    ρετική περίπτωση εμφανίζεται κατάλληλο ενημερωτικό
    μήνυμα)

Λύση

     ΠΡΟΓΡΑΜΜΑ ΝΟΜ
     ΜΕΤΑΒΛΗΤΕΣ
            ΑΚΕΡΑΙΕΣ: κ, λ, Θ
            ΠΡΑΓΜΑΤΙΚΕΣ: ΙΣΟΤ[12]
            ΧΑΡΑΚΤΗΡΕΣ: ΝΟΜ[12], Ν
            ΛΟΓΙΚΕΣ: Β
     ΑΡΧΗ
            ΓΙΑ λ ΑΠΟ 1 ΜΕΧΡΙ 12
                 ΔΙΑΒΑΣΕ ΝΟΜ[λ]
                 ΔΙΑΒΑΣΕ ΙΣΟΤ[λ]
            ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
            ΔΙΑΒΑΣΕ Ν
            Β <-- ΨΕΥΔΗΣ
            λ <-- 1
            ΟΣΟ (λ <= 12) ΚΑΙ (Β = ΨΕΥΔΗΣ) ΕΠΑΝΑΛΑΒΕ
                 ΑΝ ΝΟΜ[λ] = Ν ΤΟΤΕ
                       Β <-- ΑΛΗΘΗΣ
                       Θ <-- λ
                 ΑΛΛΙΩΣ
                       λ <-- λ+1
                 ΤΕΛΟΣ_ΑΝ
            ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
            ΑΝ Β = ΑΛΗΘΗΣ ΤΟΤΕ
                  ΓΡΑΨΕ 'ΙΣΟΤΙΜΙΑ :', ΙΣΟΤ[Θ],  ' ευρώ'
            ΑΛΛΙΩΣ
                  ΓΡΑΨΕ 'Το νόμισμα αυτό δεν είναι ένα από τα 12'
            ΤΕΛΟΣ_ΑΝ
     ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

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

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