Δημόσιος οργανισμός διαθέτει ένα συγκεκριμένο ποσό για την επιδότηση επενδυτικών έργων. Η επιδότηση γίνεται κατόπιν αξιολόγησης και αφορά δύο συγκεκριμένες κατηγορίες έργων με βάση τον προϋπολογισμό τους. Οι κατηγορίες και τα αντίστοιχα ποσοστά επιδότησης επί του προϋπολογισμού φαίνονται στον παρακάτω πίνακα.

Κατηγορία έργου Προϋπολογισμός έργου σε ευρώ Ποσοστό Επιδότησης
Μικρή 200.000 – 299.999 60%
Μεγάλη 300.000 – 399.999 70%

Η εκταμίευση των επιδοτήσεων των αξιολογηθέντων έργων γίνεται με βάση τη χρονική σειρά υποβολής τους. Μετά από κάθε εκταμίευση μειώνεται το ποσό που διαθέτει ο οργανισμός. Να αναπτύξετε αλγόριθμο ο οποίος:

Γ1. Να διαβάζει το ποσό που διαθέτει ο οργανισμός για το πρόγραμμα επενδύσεων συνολικά, ελέγχοντας ότι το ποσό είναι μεγαλύτερο από 5.000.000 ευρώ.

Μονάδες 2

Γ2. Να διαβάζει το όνομα κάθε έργου. Η σειρά ανάγνωσης είναι η σειρά υποβολής των έργων. Η επαναληπτική διαδικασία να τερματίζεται, όταν αντί για όνομα έργου δοθεί η λέξη «ΤΕΛΟΣ», ή όταν το διαθέσιμο ποσό έχει μειωθεί τόσο, ώστε να μην είναι δυνατή η επιδότηση ούτε ενός έργου μικρής κατηγορίας. Για κάθε έργο, αφού διαβάσει το όνομά του, να διαβάζει και τον προϋπολογισμό του (δεν απαιτείται έλεγχος εγκυρότητας του προϋπολογισμού).

Μονάδες 6

Γ3. Για κάθε έργο να ελέγχει αν το διαθέσιμο ποσό καλύπτει την επιδότηση, και μόνον τότε να γίνεται η εκταμίευση του ποσού. Στη συνέχεια, να εμφανίζει το όνομα του έργου και το ποσό της επιδότησης που δόθηκε.

Μονάδες 6

Γ4. Να εμφανίζει το πλήθος των έργων που επιδοτήθηκαν από κάθε κατηγορία καθώς και τη συνολική επιδότηση που δόθηκε σε κάθε κατηγορία.

Μονάδες 4

Γ5.  Μετά το τέλος της επαναληπτικής διαδικασίας να εμφανίζει το ποσό που δεν έχει διατεθεί, μόνο αν είναι μεγαλύτερο του μηδενός.

Μονάδες 2

Τα θέματα σε pdf, 2012, Μαΐου-Ιουνίου, Ημερήσια

ΛΥΣΗ

ΘΕΜΑΓ_2012ΗΜΕΡ [demo_δεδομένα]

 

ΠΡΟΓΡΑΜΜΑ ΘΕΜΑ_Γ_2012_ΗΜΕΡ
ΜΕΤΑΒΛΗΤΕΣ
 ΑΚΕΡΑΙΕΣ: i, erga1, erga2
 ΠΡΑΓΜΑΤΙΚΕΣ: ependysi, poso, S1, S2, epidotisi
 ΧΑΡΑΚΤΗΡΕΣ: ergo
 ΛΟΓΙΚΕΣ: Τέλος_χρημάτων, cat1, cat2

ΑΡΧΗ
 ! Γ1
 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ 'ΔΩΣΤΕ ΠΟΣΟ ΕΠΕΝΔΥΣΕΩΝ:'
    ΔΙΑΒΑΣΕ ependysi
 ΜΕΧΡΙΣ_ΟΤΟΥ ependysi > 5000000

 erga1 <-- 0 ! πλήθος έργων μικρής κατ.
 erga2 <-- 0 ! πλήθος έργων μεγάλης κατ.
 S1 <-- 0 ! άθροισμα επιδοτήσεων μικρής κατ.
 S2 <-- 0 ! άθροισμα επιδοτήσεων μεγάλης κατ.
 
 ! Γ2
 ΓΡΑΨΕ 'ΟΝΟΜΑ ΕΡΓΟΥ:'
 ΔΙΑΒΑΣΕ ergo
 ΟΣΟ ergo <> 'ΤΕΛΟΣ' ΚΑΙ ependysi > 200000 * 0.6 ΕΠΑΝΑΛΑΒΕ
     cat1 <-- ΨΕΥΔΗΣ
     cat2 <-- ΨΕΥΔΗΣ
     
     ΓΡΑΨΕ 'ΠΟΣΟ ΕΡΓΟΥ'
     ΔΙΑΒΑΣΕ poso
 
     ΑΝ poso >= 200000 ΚΑΙ poso < 299000 ΤΟΤΕ
        cat1 <-- ΑΛΗΘΗΣ
        epidotisi <-- 0.6 * poso
     ΑΛΛΙΩΣ_ΑΝ poso >= 300000 ΚΑΙ poso < 399000 ΤΟΤΕ
        cat2 <-- ΑΛΗΘΗΣ
        epidotisi <-- 0.7 * poso
     ΑΛΛΙΩΣ
        epidotisi <-- 0
     ΤΕΛΟΣ_ΑΝ
     ! Γ3
     ΑΝ ependysi - epidotisi > 0 ΤΟΤΕ
        ΑΝ epidotisi > 0 ΤΟΤΕ       ! Για να μην εμφανίζονται μη επιδοτούμενα έργα 
           ependysi <-- ependysi - epidotisi
           ΑΝ cat1 = ΑΛΗΘΗΣ ΤΟΤΕ
              erga1 <-- erga1 + 1
              S1 <-- S1 + epidotisi
           ΑΛΛΙΩΣ_ΑΝ cat2 = ΑΛΗΘΗΣ ΤΟΤΕ
              erga2 <-- erga2 + 1
              S2 <-- S2 + epidotisi
           ΤΕΛΟΣ_ΑΝ
           ΓΡΑΨΕ 'ΕΡΓΟ: ', ergo
           ΓΡΑΨΕ 'ΕΠΙΔΟΤΗΣΗ: ', epidotisi
        ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΑΝ

    ΓΡΑΨΕ 'ΟΝΟΜΑ ΕΡΓΟΥ:'
    ΔΙΑΒΑΣΕ ergo
 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

 ! Γ4
 ΓΡΑΨΕ 'ΕΡΓΑ ΠΟΥ ΕΠΙΔΟΤΗΘΗΚΑΝ:'
 ΓΡΑΨΕ 'ΜΙΚΡΗΣ ΚΑΤΗΓΟΡΙΑΣ:', cat1
 ΓΡΑΨΕ 'ΣΥΝΟΛΙΚΗ ΕΠΙΔΟΤΗΣΗ', S1
 ΓΡΑΨΕ 'ΜΕΓΑΛΗΣ ΚΑΤΗΓΟΡΙΑΣ:', cat2
 ΓΡΑΨΕ 'ΣΥΝΟΛΙΚΗ ΕΠΙΔΟΤΗΣΗ', S2

 ! Γ5
 ΑΝ ependysi > 0 ΤΟΤΕ
 ΓΡΑΨΕ 'ΑΔΙΑΘΕΤΟ: ', ependysi
 ΤΕΛΟΣ_ΑΝ

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ