Προγράμματα - Άσκηση 1 - Αγροτικές επιδοτήσεις

 
Σύμφωνα με τις ευρωπαϊκές οδηγίες, το Υπουργείο Γεωργίας πρέπει να δώσει επιδοτήσεις στους 12.500 αγρότες για το έτος 2013 σύμφωνα με τον παρακάτω πίνακα.
 
ΣΤΡΕΜΜΑΤΑ
ΕΠΙΔΟΤΗΣΗ
από 1 έως 100
1000 €
πάνω από 100 και μέχρι 500
4000 €
πάνω από 500 και μέχρι 1000
9000 €
Πάνω από 1000
12000 €
 
Να γίνει πρόγραμμα το οποίο:
  1. Διαβάζει τα ονόματα των αγροτών και τα στρέμματα που καλλιεργούν και τα αποθηκεύει στους  πίνακες ΟΝ και ΣΤ αντίστοιχα.
  2. Διαβάζει το όνομα ενός αγρότη και αν αυτός υπάρχει στον πίνακα ΟΝ τότε υπολογίζει και εμφανίζει την επιδότηση που του αναλογεί ανάλογα με τα στρέμματα που καλλιεργεί. Σε περίπτωση που δεν υπάρχει το όνομα του αγρότη επαναλαμβάνεται η διαδικασία μέχρι να βρεθεί κάποιος.
 
Λύση: 
ΠΡΟΓΡΑΜΜΑ ΕΠΙΔΟΤΗΣΗ
ΜΕΤΑΒΛΗΤΕΣ
                ΑΚΕΡΑΙΕΣ: i, pos, επιδ
                ΠΡΑΓΜΑΤΙΚΕΣ: ΣΤ[12500] 
                ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[12500], ΟΝΟΜΑ
                ΛΟΓΙΚΕΣ: done
ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 12500
                ΓΡΑΨΕ "Δώσε το όνομα του ", i, " αγρότη"
                ΔΙΑΒΑΣΕ ΟΝ[i] 
                ΓΡΑΨΕ "Δώσε τα στρέμματα που καλλιεργεί ο ", i, " αγρότης"
                ΔΙΑΒΑΣΕ ΣΤ[i] 
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
                ΓΡΑΨΕ "Δώσε το όνομα του αγρότη για αναζήτηση"
                ΔΙΑΒΑΣΕ ΟΝΟΜΑ
                done <- ΨΕΥΔΗΣ
                i    1
                pos     0
                ΟΣΟ done = ΨΕΥΔΗΣ ΚΑΙ i <= 12500 ΕΠΑΝΑΛΑΒΕ
                               ΑΝ ΟΝ[i] = ΟΝΟΜΑ ΤΟΤΕ
                                               done <- ΑΛΗΘΗΣ
                                               pos     i
                               ΑΛΛΙΩΣ
                                               i     i + 1
                               ΤΕΛΟΣ_ΑΝ
                ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
                ΑΝ done = ΑΛΗΘΗΣ ΤΟΤΕ
                               ΑΝ ΣΤ[pos] >= 1 ΚΑΙ ΣΤ[pos] <= 100 ΤΟΤΕ
                                               επιδ     1000
                               ΑΛΛΙΩΣ_ΑΝ ΣΤ[pos] > 100 ΚΑΙ ΣΤ[pos] <= 500 ΤΟΤΕ
                                               επιδ     4000
                               ΑΛΛΙΩΣ_ΑΝ ΣΤ[pos] > 500 ΚΑΙ ΣΤ[pos] <= 1000 ΤΟΤΕ
                                               επιδ     9000
                               ΑΛΛΙΩΣ
                                               επιδ     12000
                               ΤΕΛΟΣ_ΑΝ
                ΑΛΛΙΩΣ
                               ΓΡΑΨΕ "Το όνομα δεν υπάρχει, δώστε νέο όνομα"
                ΤΕΛΟΣ_ΑΝ
  ΜΕΧΡΙΣ_ΟΤΟΥ
 done = ΑΛΗΘΗΣ
  ΓΡΑΨΕ "Η επιδότηση του αγρότη είναι...:", επιδ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ