ΠΡΟΤΕΙΝΟΜΕΝΟ ΔΙΑΓΩΝΙΣΜΑ ΑΕΠΠ ΘΕΜΑ 1 ο (Α) Να απαντήσετε στη παρακάτω ερώτηση : Τι είναι ένα υποπρόγραμμα; Τι γνωρίζετε για τα χαρακτηριστικά του; (10 Μονάδες) (Β) Να σημειώσετε με κατάλληλο τρόπο ανάλογα με το αν θεωρείτε Σωστή ή Λάθος κάθε μία από τις παρακάτω προτάσεις: 1. Το πρόβλημα εύρεσης του μέγιστου δύο αριθμών είναι πρόβλημα βελτιστοποίησης 2. Η πρόταση Σ1 ή (Όχι (Σ1)) είναι πάντα αληθής. 3. Κατά την εκτέλεση της δομής επανάληψης: Αρχή_επανάληψης Μέχρις_ότου, οι μεταβλητές της συνθήκης πρέπει οπωσδήποτε να έχουν πάρει τιμές πριν την κλήση της δομής. 4. Η διαδικασία της ταξινόμησης δεν μπορεί να εφαρμοστεί σε δισδιάστατους πίνακες 5. Στις γλώσσες υψηλού επιπέδου, δεν υπάρχει το χαρακτηριστικό της μεταφερσιμότητας (Γ) Να υπολογίσετε τις τιμές των παρακάτω σύνθετων συνθηκών: 1) Σ1 και Σ2 ή όχι Σ4 (2) Σ4 ή Σ2 και (Σ1 ή Σ3) Όταν Σ1=Αληθής, Σ2=Ψευδής, Σ3=Αληθής και Σ4=Ψευδής (10 Μονάδες) (3) όχι (χ mod λ > 2) και κ <= 0 (4) ((χ <> 0) ή (λ < 2)) και όχι (y div 2 = 0) Όταν χ = 8, y = -4, κ = 0, λ = 2 (8 Μονάδες) Σελίδα 1
(Δ) Στον πίνακα Α με τιμές 3 2 8 1 9 Εφαρμόζουμε το ακόλουθο τμήμα αλγορίθμου: Για κ από 1 μέχρι 5 Β[κ] Α[5 κ + 1] Τέλος_επανάληψης Ο πίνακας Β που προκύπτει έχει τιμές: α. 3 2 8 1 9 β. 1 2 3 8 9 γ. 9 8 3 2 1 δ. 9 1 8 2 3 Ε) Να γράψετε στο τετράδιό σας τα γράμματα Α,Β,Γ της Στήλης Α και δίπλα τους αριθμούς 1,2,3,4 της Στήλης Β. Στήλη Α Α. Για i από 1 μέχρι 10 με_βήμα 2 Ομάδα_εντολών Τέλος_επανάληψης Β. i 2 Όσο i > -2 επανάλαβε Ομάδα_εντολών i i - 1 Τέλος_επανάληψης Στήλη Β 1. 4 επαναλήψεις 2. Άπειρες επαναλήψεις 3. 5 επαναλήψεις 4. 6 επαναλήψεις (6 Μονάδες) Γ. i 3 Αρχή_επανάληψης i i + 2 Ομάδα_εντολών Μέχρις_ότου i = 12 (6 Μονάδες) Σελίδα 2
ΘΕΜΑ 2 ο Δίνεται το παρακάτω πρόγραμμα και υποπρογράμματα : ΠΡΟΓΡΑΜΜΑ ΘΕΜΑ_2ο ΑΚΕΡΑΙΕΣ: Χ, Β, Κ, ΟΡΙΟ ΠΡΑΓΜΑΤΙΚΕΣ: Λ, Μ _ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ Χ ΑΝ Χ <> 999 ΤΟΤΕ Β <- Χ div 2 ΟΡΙΟ <- Χ ΓΙΑ Κ ΑΠΟ 3 ΜΕΧΡΙ ΟΡΙΟ ΜΕ_ΒΗΜΑ Β Λ <- Φ(Χ, Κ) ΚΑΛΕΣΕ ΔΙΑΔ(Χ, Κ, Λ, Μ) ΓΡΑΨΕ Χ, Κ, Λ, Μ ΤΕΛΟΣ_ΑΝ ΜΕΧΡΙΣ_ΟΤΟΥ Χ = 999 ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΥΝΑΡΤΗΣΗ Φ(Α, Β): ΠΡΑΓΜΑΤΙΚΗ ΑΚΕΡΑΙΕΣ: Α, Β ΠΡΑΓΜΑΤΙΚΕΣ: Γ Γ <- 2*Α - Β + 1.5 Φ <- Α_Τ(Γ - 100.5) ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ ΔΙΑΔΙΚΑΣΙΑ ΔΙΑΔ(Α, Β, Γ, Δ) ΑΚΕΡΑΙΕΣ: Α, Β ΠΡΑΓΜΑΤΙΚΕΣ: Γ, Δ Α <- Α + 2 Γ <- Γ - Α + 1.5 Δ <- 2* Γ α) Τι θα εμφανιστεί στην οθόνη αν οι τιμές εισόδου για το Χ είναι οι ακόλουθες: 7, 12, 10, 999 β) Ξαναγράψτε το πρόγραμμα που δόθηκε αρχικά: αντικαθιστώντας την εντολή ΜΕΧΡΙΣ_ΟΤΟΥ με ΟΣΟ ΕΠΑΝΑΛΑΒΕ αντικαθιστώντας την εντολή ΓΙΑ ΑΠΟ ΜΕΧΡΙ με ΟΣΟ ΕΠΑΝΑΛΑΒΕ χρησιμοποιώντας διαδικασία στη θέση της συνάρτησης Φ γ) Να ξαναγράψετε το πρόγραμμα που δόθηκε αρχικά, ώστε να επιτελεί την ίδια λειτουργία χωρίς τη χρήση υποπρογραμμάτων (20 Μονάδες) Σελίδα 3
ΘΕΜΑ 3 ο Μια δημόσια υπηρεσία προκηρύσσει δημόσιο μειοδοτικό διαγωνισμό για την προμήθεια 13 Η/Υ με τους εξής όρους : το ανώτατο επιτρεπτό κόστος των μηχανημάτων (μαζί με τον ΦΠΑ) δεν θα πρέπει να υπερβαίνει τα 20.000 και η βαθμολογία της κάθε εταιρείας που θα υποβάλλει προσφορά δεν θα πρέπει να είναι μικρότερη από 1,0. Η υπηρεσία βαθμολογεί την κάθε εταιρεία που υποβάλλει προσφορά μ' έναν δεκαδικό αριθμό με μία ακέραια θέση και με αποδεκτές τιμές από 1,0 ελάχιστη έως 5,0 μέγιστη. Η ανάδοχος εταιρεία που θα προκύψει θα είναι εκείνη που θα έχει τον μικρότερο λόγο (πηλίκο) κόστος/βαθμολογία. Στην περίπτωση δε που δύο εταιρείες ισοβαθμίσουν, ανάδοχος θα προκύψει η εταιρεία με τη χαμηλότερη οικονομική προσφορά. Για να υπάρχει μια δίκαιη αντιμετώπιση, η υπηρεσία στρογγυλοποιεί το αποτέλεσμα που θα προκύψει από τη διαίρεση κόστος/βαθμολογία στα δύο τελευταία ακέραια ψηφία, δηλ. αν το αποτέλεσμα της διαίρεσης είναι 4.523, 81, θα γίνει 4.500, ενώ αν το αποτέλεσμα είναι 3.877,55 θα γίνει 3.900. Ζητείται να γραφεί αλγόριθμος όπου: α) θα διαβάζονται οι επωνυμίες 20 εταιρειών, οι οικονομικές προσφορές τους και οι βαθμολογίες τους με μία δεκαδική θέση (έλεγχος εγκυρότητας), και (8 Μονάδες) β) να βρεθεί ο αριθμός και η επωνυμία της εταιρείας που θα είναι ανάδοχος καθώς και η οικονομική προσφορά που υπέβαλλε και η βαθμολογία που της δόθηκε. Εταιρείες που υποβάλλουν οικονομική προσφορά μεγαλύτερη από 20.000 ή αποκτούν βαθμολογία μικρότερη από 1.0, θα καταχωρηθούν κανονικά μαζί με τις υπόλοιπες εταιρείες αλλά δεν θα ληφθούν υπόψη στην επιλογή. (12 Μονάδες) ΘΕΜΑ 4 ο Δεκατέσσερις (14) φωτορεπόρτερ καλύπτουν τις διαδηλώσεις των αγανακτισμένων πολιτών σε πόλεις όλης της Ελλάδας, ενάντια στην διαμορφωμένη οικονομική κατάσταση, και με τη φωτογραφική τους μηχανή έχουν τραβήξει αρκετές φωτογραφίες. Αυτοί οι φωτορεπόρτερ συνεργάζονται με 10 εφημερίδες που όλες ακολουθούν την ίδια «πολιτική» πληρωμών, η οποία εξαρτάται από τον αριθμό των φωτογραφιών που αγοράζουν και που υπολογίζεται κλιμακωτά, σύμφωνα με τον πίνακα που ακολουθεί: Αριθμός φωτογραφιών Τιμή ανά φωτογραφία Από 1 μέχρι και 5 50 Από 6 μέχρι και 12 45 Από 13 μέχρι και 20 40 Πάνω από 20 35 Σελίδα 4
α) Να γράψετε πρόγραμμα το οποίο: i. Καλώντας το κατάλληλο υποπρόγραμμα διαβάζει τα ονοματεπώνυμα των φωτορεπόρτερ και τα καταχωρεί σε πίνακα. (2 Μονάδες) ii. iii. iv. Καλώντας το κατάλληλο υποπρόγραμμα διαβάζει πόσες φωτογραφίες θα αγοράσει η κάθε εφημερίδα από τον κάθε φωτορεπόρτερ, ελέγχοντας ότι ο αριθμός των φωτογραφιών είναι μη αρνητικός αριθμός. (2 Μονάδες) Καλώντας το κατάλληλο υποπρόγραμμα υπολογίζει το σύνολο των χρημάτων που δικαιούται κάθε φωτορεπόρτερ από όλες τις εφημερίδες. (4 Μονάδες) Καλώντας το κατάλληλο υποπρόγραμμα εμφανίζει τα ονοματεπώνυμα και τις συνολικές αμοιβές των φωτορεπόρτερ κατά φθίνουσα σειρά ως προς τις αμοιβές αυτές. (4 Μονάδες) v. Θα διαβάζει το Ονοματεπώνυμο ενός φωτορεπόρτερ και καλώντας κατάλληλο υποπρόγραμμα, θα εντοπίζει (αν υπάρχει) και θα εμφανίζει το σύνολο των φωτογραφιών που τράβηξε καθώς και το σύνολο της αμοιβής του. Αν δεν υπάρχει αυτός ο φωτορεπόρτερ, τότε θα εμφανίζει κατάλληλο μήνυμα λάθους. (4 Μονάδες) β) Να γράψετε όλα τα υποπρογράμματα που καλεί το πρόγραμμα Σημείωση : α. Δεν έχουμε περίπτωση συνωνυμίας δύο φωτορεπόρτερ (4 Μονάδες) β. Αν δύο ή περισσότεροι φωτορεπόρτερ έχουν τις ίδιες συνολικές αμοιβές, κριτήριο ως προς τη σειρά εμφάνισής τους στην οθόνη, αποτελεί η αλφαβητική σειρά των ονοματεπωνύμων τους. Σελίδα 5
ΑΠΑΝΤΗΣΕΙΣ ΛΥΣΕΙΣ ΤΟΥ ΔΙΑΓΩΝΙΣΜΑΤΟΣ ΘΕΜΑ 1 ο (Α) Απάντηση: Σελίδα 206,207 και 208 του σχολικού βιβλίου (Β) 1 Λάθος, 2 Σωστό, 3 Λάθος, 4 Σωστό, 5 - Λάθος (Γ) (Δ) (1) Αληθής (2) Ψευδής (3) Αληθής (4) Αληθής (δ) (E) A 3, B 1, Γ 2 ΘΕΜΑ 2 ο α) για Χ = 7, θα εμφανιστεί στην οθόνη 9 3 80.50 161.00 11 6 77.50 155.00 για Χ = 12, θα εμφανιστεί στην οθόνη 14 3 65.50 131.00 16 9 65.50 131.00 για Χ = 10, θα εμφανιστεί στην οθόνη 12 3 71.50 143.00 14 8 70.50 141.00 για Χ = 999, δεν θα εμφανιστεί τίποτε στην οθόνη και θα τερματιστεί το πρόγραμμα Σελίδα 6
β) ΠΡΟΓΡΑΜΜΑ ΘΕΜΑ_2οΒ ΑΚΕΡΑΙΕΣ: Χ, Β, Κ, ΟΡΙΟ ΠΡΑΓΜΑΤΙΚΕΣ: Λ, Μ ΔΙΑΒΑΣΕ Χ ΟΣΟ Χ <> 999 ΕΠΑΝΑΛΑΒΕ Β <- Χ div 2 ΟΡΙΟ <- Χ Κ <- 3 ΟΣΟ Κ <= ΟΡΙΟ ΕΠΑΝΑΛΑΒΕ ΚΑΛΕΣΕ Φ(Χ, Κ, Λ) ΚΑΛΕΣΕ ΔΙΑΔ(Χ, Κ, Λ, Μ) ΓΡΑΨΕ Χ, Κ, Λ, Μ Κ <- Κ + Β ΔΙΑΒΑΣΕ Χ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΔΙΑΔΙΚΑΣΙΑ Φ(Α, Β, Ρ) ΑΚΕΡΑΙΕΣ: Α, Β ΠΡΑΓΜΑΤΙΚΕΣ: Γ, Ρ Γ <- 2*Α - Β + 1.5 Ρ <- Α_Τ(Γ - 100.5) ΔΙΑΔΙΚΑΣΙΑ ΔΙΑΔ(Α, Β, Γ, Δ) ΑΚΕΡΑΙΕΣ: Α, Β ΠΡΑΓΜΑΤΙΚΕΣ: Γ, Δ Α <- Α + 2 Γ <- Γ - Α + 1.5 Δ <- 2* Γ γ) ΠΡΟΓΡΑΜΜΑ ΘΕΜΑ_2οΓ ΑΚΕΡΑΙΕΣ: Χ, Β, Κ, ΟΡΙΟ ΠΡΑΓΜΑΤΙΚΕΣ: Λ, Μ, Γ _ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ Χ ΑΝ Χ <> 999 ΤΟΤΕ Β <- Χ div 2 ΟΡΙΟ <- Χ ΓΙΑ Κ ΑΠΟ 3 ΜΕΧΡΙ ΟΡΙΟ ΜΕ_ΒΗΜΑ Β Γ <- 2*Χ - Κ + 1.5 Λ <- Α_Τ(Γ - 100.5) Σελίδα 7
ΘΕΜΑ 3 ο Χ <- Χ + 2 Λ <- Λ - Χ + 1.5 Μ <- 2*Λ ΓΡΑΨΕ Χ, Κ, Λ, Μ ΤΕΛΟΣ_ΑΝ ΜΕΧΡΙΣ_ΟΤΟΥ Χ = 999 ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Αλγόριθμος Μειοδοτικός_Διαγωνισμός! Διάβασμα των πινάκων με έλεγχο εγκυρότητας για τη βαθμολογία Για Εταιρεία από 1 μέχρι 20 Διάβασε Επωνυμία[Εταιρεία], Προσφορά[Εταιρεία] Αρχή_Επανάληψης Διάβασε Βαθ Μέχρις_ότου Βαθ > 0 και Βαθ <= 5 και (Βαθ*10 - Α_Μ(Βαθ*10) ) = 0 Βαθμολογία[Εταιρεία] Βαθ Τέλος_Επανάληψης! Υπολογισμός του αποτελέσματος της αξιολόγησης όλων των εταιρειών! Οι εταιρείες με προσφορά πάνω από 20000 ή βαθμολογία κάτω του 1! παίρνουν ένα πολύ μεγάλο αποτέλεσμα ώστε να μην ληφθούν υπόψη στην επιλογή Για Εταιρεία από 1 μέχρι 20 Αν Προσφορά[Εταιρεία] <= 20000 και Βαθμολογία[Εταιρεία] >= 1 τότε Λόγος Α_Μ(Προσφορά[Εταιρεία]/Βαθμολογία[Εταιρεία]) Υπόλοιπο Λόγος mod 100 Πηλίκο Λόγος div 100 Αν Υπόλοιπο >= 50 τότε Υπόλοιπο 100 Αλλιώς Υπόλοιπο 0 Τέλος_Αν Αποτέλεσμα[Εταιρεία] Πηλίκο * 100 + Υπόλοιπο Αλλιώς Αποτέλεσμα[Εταιρεία] 999999 Τέλος_Αν Τέλος_Επανάληψης Σελίδα 8
! Αύξουσα Ταξινόμηση του πίνακα του αποτελέσματος και! σε περίπτωση ισοβαθμίας κατά αύξουσα προσφορά Για i από 2 μέχρι 20 Για j από 2 μέχρι i με_βήμα -1 Αν Αποτέλεσμα[j] < Αποτέλεσμα[j-1] τότε Αντιμετάθεσε Αποτέλεσμα[j], Αποτέλεσμα[j-1] Αντιμετάθεσε Προσφορά[j], Προσφορά[j-1] Αντιμετάθεσε Βαθμολογία[j], Βαθμολογία[j-1] Αντιμετάθεσε Επωνυμία[j], Επωνυμία[j-1] Αλλιώς_Αν Αποτέλεσμα[j] = Αποτέλεσμα[j-1] τότε Αν Προσφορά[j] < Προσφορά[j-1] τότε Αντιμετάθεσε Προσφορά[j], Προσφορά[j-1] Αντιμετάθεσε Βαθμολογία[j], Βαθμολογία[j-1] Αντιμετάθεσε Επωνυμία[j], Επωνυμία[j-1] Τέλος_Αν Τέλος_Αν Τέλος_επανάληψης Τέλος_επανάληψης! Ελέγχουμε αν υπάρχει εταιρεία που πληρούσε τις προϋποθέσεις του διαγωνισμού Αν Αποτέλεσμα[1] <> 999999 τότε Εμφάνισε "Το διαγωνισμό κέρδισε η εταιρεία: ", Επωνυμία[1] Εμφάνισε " με βαθμό: ", Βαθμολογία[1], " και προσφορά: ", Προσφορά[1] Αλλιώς Εμφάνισε "Δεν βρέθηκε εταιρεία που να πληρεί τις προδιαγραφές του λογαριασμού!" Τέλος_Αν Τέλος Μειοδοτικός_Διαγωνισμός ΘΕΜΑ 4 ο ΠΡΟΓΡΑΜΜΑ ΦΩΤΟΡΕΠΟΡΤΑΖ! ΟΝΕΠ[14]: τα ονοματεπώνυμα των φωτορεπόρτερ! ΦΩΤΟ[10,14]: το πλήθος των φωτογραφιών που αγόρασε κάθε εφημερίδα! ΑΜΟΙΒΕΣ[14]: η συνολική αμοιβή κάθε φωτορεπόρτερ ΧΑΡΑΚΤΗΡΕΣ: ΟΝΕΠ[14] ΑΚΕΡΑΙΕΣ: ΦΩΤΟ[10,14], ΑΜΟΙΒΕΣ[14] ΚΑΛΕΣΕ ΔιαβΟνΕπ(ΟΝΕΠ) ΚΑΛΕΣΕ ΔιαβΦωτο(ΦΩΤΟ) ΚΑΛΕΣΕ ΥπολΑμοιβ(ΦΩΤΟ,ΑΜΟΙΒΕΣ) ΚΑΛΕΣΕ ΛίσταΑμοιβ(ΟΝΕΠ,ΑΜΟΙΒΕΣ,ΦΩΤΟ) ΔΙΑΒΑΣΕ ΖΟνομα ΚΑΛΕΣΕ ΑναζΟνεπ(ΖΟνομα,ΟΝΕΠ,ΦΩΤΟ,ΑΜΟΙΒΕΣ) ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Σελίδα 9
! Διαδικασία ανάγνωσης των ονοματεπωνύμων των φωτορεπόρτερ ΔΙΑΔΙΚΑΣΙΑ ΔιαβΟνΕπ(ΟΝ)! ΟΝ[14]: Τα ονοματεπώνυμα των φωτορεπόρτερ! Φ: ο μετρητής της επανάληψης ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[14] ΑΚΕΡΑΙΕΣ: Φ ΓΙΑ Φ ΑΠΟ 1 ΜΕΧΡΙ 14 ΓΡΑΨΕ 'Δώσε το ονοματεπώνυμο το ',Φ,' φωτορεπόρτερ :' ΔΙΑΒΑΣΕ ΟΝ[Φ]! Διαδικασία ανάγνωσης των φωτογραφιών που αγόρασε κάθε εφημερίδα ΔΙΑΔΙΚΑΣΙΑ ΔιαβΦωτο(ΦΤ)! ΦΤ[10,14]: ο αριθμός των φωτογραφιών που αγόρασε! κάθε εφημερίδα από κάθε φωτογράφο! Μ: ο μετρητής της επανάληψης, για τις εφημερίδες! Φ: ο μετρητής της επανάληψης, για τους φωτορεπόρτερ ΧΑΡΑΚΤΗΡΕΣ: ΦΤ[10,14] ΑΚΕΡΑΙΕΣ: Μ, Φ ΓΙΑ Μ ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ 'Εφημερίδα Νο: ',Μ ΓΙΑ Φ ΑΠΟ 1 ΜΕΧΡΙ 14 _ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ 'Δώσε τον αριθμό των φωτογραφιών από τον ', Φ, & ' φωτορεπόρτερ :' ΔΙΑΒΑΣΕ ΦΤ[Μ,Φ] ΜΕΧΡΙΣ_ΟΤΟΥ ΦΤ[Μ,Φ]>=0!Διαδικασία Υπολογισμού Αμοιβών Φωτορεπόρτερ ΔΙΑΔΙΚΑΣΙΑ ΥπολΑμοιβ(ΦΤ,ΑΜ)! ΦΤ[10,14]: οι φωτογραφίες που αγόρασε κάθε εφημερίδα! από κάθε φωτορεπόρτερ! ΑΜ[14]: οι συνολικές αμοιβές όλων των φωτορεπόρτερ! Μ,Φ: οι μετρητές επανάληψης! Ποσό: το ποσό που δικαιούται ένας φωτορεπόρτερ από μια εφημερίδα! Σ: Η συνολική αμοιβή ενός φωτορεπόρτερ ΑΚΕΡΑΙΕΣ: ΦΤ[10,14], Μ, Φ, ΑΜ[14], Σ, ΠΟΣΟ ΓΙΑ Φ ΑΠΟ 1 ΜΕΧΡΙ 14 Σ <- 0 ΓΙΑ Μ ΑΠΟ 1 ΜΕΧΡΙ 10 ΑΝ ΦΤ[Μ,Φ] <= 5 ΤΟΤΕ ΠΟΣΟ <- ΦΤ[Μ,Φ]*50 Σελίδα 10
ΑΛΛΙΩΣ_ΑΝ ΦΤ[Μ,Φ] <= 12 ΤΟΤΕ ΠΟΣΟ <- 5*50+(ΦΤ[Μ,Φ]-5)*45 ΑΛΛΙΩΣ_ΑΝ ΦΤ[Μ,Φ] <= 20 ΤΟΤΕ ΠΟΣΟ <- 5*50+7*45+(ΦΤ[Μ,Φ]-12)*40 ΑΛΛΙΩΣ ΠΟΣΟ <- 5*50+7*45+8*40+(ΦΤ[Μ,Φ]-20)*35 ΤΕΛΟΣ_ΑΝ Σ <- Σ + ΠΟΣΟ ΑΜ[Φ] <- Σ!Διαδικασία Ταξινόμησης και Εμφάνισης της λίστας των φωτορεπόρτερ ΔΙΑΔΙΚΑΣΙΑ ΛίσταΑμοιβ(ΟΝ,ΑΜ,ΦΤ)! ΟΝ[14]: Τα ονοματεπώνυμα των φωτορεπόρτερ! ΦΤ[10,14]: οι φωτογραφίες που αγόρασε κάθε εφημερίδα! από κάθε φωτορεπόρτερ! ΑΜ[14]: οι συνολικές αμοιβές όλων των φωτορεπόρτερ! Μ,Φ,Χ : οι μετρητές επανάληψης! ΤΑ,ΤΟ, ΤΦ: βοηθητικές μεταβλητές ΑΚΕΡΑΙΕΣ: Μ, Φ, ΑΜ[14], ΤΑ, ΦΤ[10,14], ΤΦ ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[14], ΤΟ ΓΙΑ Φ ΑΠΟ 2 ΜΕΧΡΙ 14 ΓΙΑ Μ ΑΠΟ 14 ΜΕΧΡΙ Φ ΜΕ_ΒΗΜΑ -1 ΑΝ (ΑΜ[Μ-1]<ΑΜ[Μ]) Η (ΑΜ[Μ-1]=ΑΜ[Μ] ΚΑΙ ΟΝ[Μ-1]>ΟΝ[Μ]) ΤΟΤΕ ΤΑ <- ΑΜ[Μ-1] ΑΜ[Μ-1] <- ΑΜ[Μ] ΑΜ[Μ] <- ΤΑ ΤΟ <- ΟΝ[Μ-1] ΟΝ[Μ-1] <- ΟΝ[Μ] ΟΝ[Μ] <- ΤΟ ΓΙΑ Χ ΑΠΟ 1 ΜΕΧΡΙ 10 ΤΦ <- ΦΤ[Χ,Μ-1] ΦΤ[Χ,Μ-1] <- ΦΤ[Χ,Μ] ΦΤ[Χ,Μ] <- ΤΦ ΤΕΛΟΣ_ΑΝ ΓΙΑ Φ ΑΠΟ 1 ΜΕΧΡΙ 14 ΓΡΑΨΕ ΟΝ[Φ], ΑΜ[Φ] Σελίδα 11
!Διαδικασία αναζήτησης και εμφάνισης ζητούμενου φωτορεπόρτερ ΔΙΑΔΙΚΑΣΙΑ ΑναζΟνεπ(ΖΟ,ΟΝ,ΦΤ,ΑΜ)! ΖΟ: Το ονοματεπώνυμο του ζητούμενου φωτορεπόρτερ! ΟΝ[14]: Τα ονοματεπώνυμα των φωτορεπόρτερ! ΦΤ[10,14]: οι φωτογραφίες που αγόρασε κάθε εφημερίδα! από κάθε φωτορεπόρτερ! ΑΜ[14]: οι συνολικές αμοιβές όλων των φωτορεπόρτερ! Μ,Φ : οι μετρητές επανάληψης! Σ: Οι συνολικές φωτογραφίες κάθε φωτορεπόρτερ! ΒΡΕΘΗΚΕ: Μεταβλητή ελέγχου της αναζήτησης ΑΚΕΡΑΙΕΣ: Μ, Φ, ΑΜ[14], ΦΤ[10,14], Σ ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[14], ΖΟ ΛΟΓΙΚΕΣ: ΒΡΕΘΗΚΕ ΒΡΕΘΗΚΕ <- ΨΕΥΔΗΣ Φ <- 1 ΟΣΟ (Φ <= 14) ΚΑΙ ΟΧΙ ΒΡΕΘΗΚΕ ΕΠΑΝΑΛΑΒΕ ΑΝ ΟΝ[Φ] = ΖΟ ΤΟΤΕ ΒΡΕΘΗΚΕ <- ΑΛΗΘΗΣ Σ <- 0 ΓΙΑ Μ ΑΠΟ 1 ΜΕΧΡΙ 10 Σ <- Σ + ΦΤ[Μ,Φ] ΓΡΑΨΕ 'Ο φωτορεπόρτερ ',ΟΝ[Φ],' τράβηξε ',Σ, & ' φωτό και εισέπραξε ',ΑΜ[Φ],' ευρώ ' ΑΛΛΙΩΣ Φ <- Φ + 1 ΤΕΛΟΣ_ΑΝ ΑΝ ΟΧΙ ΒΡΕΘΗΚΕ ΤΟΤΕ ΓΡΑΨΕ 'Δεν βρέθηκε φωτορεπόρτερ με όνομα: ',ΖΟ ΤΕΛΟΣ_ΑΝ Σελίδα 12