ΔΙΑΓΩΝΙΣΜΑ ΑΝΑΠΤΥΞΗΣ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΣΕ ΟΛΗ ΤΗΝ ΥΛΗ Είμαστε τυχεροί που είμαστε δάσκαλοι ΘΕΜΑ Α Α1. Να γράψετε τον αριθμό καθεμιάς από τις παρακάτω προτάσεις και δίπλα το γράμμα Σ αν είναι σωστή ή το γράμμα Λ αν είναι λανθασμένη: 1. Για την αρχική σύνταξη των προγραμμάτων και τη διόρθωση τους, χρησιμοποιείται ένα ειδικό πρόγραμμα που ονομάζεται συνδέτης. 2. Σε μια διαδικασία η λίστα παραμέτρων δεν είναι υποχρεωτική. 3. Δεσμευμένες λέξεις ονομάζονται αυτές που ορίζει ο προγραμματιστής ως ονομασίες των μεταβλητών που χρησιμοποιεί. 4. Ένας πίνακας μπορεί να αποθηκεύσει ακέραιους αριθμούς και ονόματα. 5. Οι τρόποι εκτίμησης της επίδοσης ενός αλγορίθμου είναι ο εμπειρικός και ο θεωρητικός. μονάδες 5 Α2. Στο παρακάτω τμήμα προγράμματος να συμπληρώσετε τα κενά ώστε να εμφανίζονται οι αριθμοί 5, 8, 11, 17, 20. Για Ζ από μέχρι με_βήμα Αν τότε Γράψε Τέλος_Αν Τέλος_Επανάληψης μονάδες 5 Α3. Στο επόμενο τμήμα πόσες είναι οι βασικές πράξεις που εκτελούνται; λ 10 Γιαiαπό 2 μέχρι λ με_βήμα 2 μ μ+5 λ λ 2 τέλος_επανάληψης μονάδες 6 Α4. Ποιες προϋποθέσεις πρέπει να ικανοποιούνται ώστε να έχει έννοια η σύγκριση δυο προγραμμάτων αλγορίθμων; μονάδες 6 Α5. Ποιους κανόνες πρέπει να ακολουθούν οι λίστες των παραμέτρων; μονάδες 6
Α6. Να μετατραπεί το παρακάτω τμήμα προγράμματος σε ισοδύναμο με αποκλειστική χρήση της εντολής Για από μέχρι Διάβασε Α, Β μ Α Αρχή_επανάληψης μ μ + 2 Αν μ > 5 τότε Τέλος_αν Γ μ + 2 Γράψε Γ, μ Μέχρις_ότου μ >= Β μονάδες 6 Α7. Σε μια ουρά 10 θέσεων που υλοποιείται με τη χρήση του μονοδιάστατου πίνακα ΟΝΟΜΑ είναι τοποθετημένα τα ονόματα «Θωμάς», «Παναγιώτα», «Θανάσης» και «Αριστοτέλης» στη 2η, 3η, 4η και 5η θέση αντίστοιχα. Ποιες είναι οι τρέχουσες τιμές των δεικτών της ουράς; (μονάδες 2) Να γράψετε τη μορφή της ουράς μετά τις ακόλουθες λειτουργίες Εισαγωγή του «Χριστίνα» Εισαγωγή του «Κατερίνα» Εξαγωγή του «Θωμάς» Εξαγωγή του «Παναγιώτα» (μονάδες 2) Ποιες είναι τώρα οι τιμές των δεικτών της ουράς; (μονάδες 2) μονάδες 6 ΘΕΜΑ Β Β1.Ποια θα είναι η τελική μορφή του πίνακα ακεραίων Α[4,4] μετά την εκτέλεση του παρακάτω τμήματος προγράμματος; Για iαπό 1 μέχρι 4 Για j από 1 μέχρι 4 Ανi<>j τότε Av A[i,j]MOD2=1τότε A[i,j] A[i,j] +2 Αλλιώς A[i,j] A[i,j] DIV A[j,i] Τέλος_αν Αλλιώς A[i,j] 0 Τέλος_αν Τέλος_επανάληψης Τέλος_επανάληψης Πίνακας Α 2 8-3 1 4-10 12 7-1 9 11 16 15-4 8 13 μονάδες 10
Β2.Δίνεται το παρακάτω τμήμα ενός διαγράμματος ροής: Να το μετατρέψετε σε ισοδύναμο τμήμα προγράμματος μονάδες 10 ΘΕΜΑ Γ Η εταιρεία «THE gamers» διοργανώνει ένα τουρνουά όπου ο νικητής θα κερδίσει μία ετήσια δωρεάν συνδρομή. Η βαθμολόγηση κάθε παίκτη γίνεται κλιμακωτά σύμφωνα με το πλήθος των παιχνιδιών που έχει νικήσει. Ο πίνακας που αντιστοιχεί το πλήθος των νικών με τους πόντους ανά νίκη είναι ο παρακάτω: Πλήθος νικών Πόντοι ανά νίκη 1-10 4 11-25 6 >25 8 Να γράψετε στο τετράδιό σας κύριο πρόγραμμα σε «ΓΛΩΣΣΑ» το οποίο: Γ1. Περιέχει τμήμα δήλωσης μεταβλητών. μονάδες 1
Γ2. Για καθέναν από τους παίκτες: α. Διαβάζει το ονοματεπώνυμό του και το πλήθος των νικών που έκανε. μονάδες 1 β. Καλεί κατάλληλο υποπρόγραμμα για τον υπολογισμό της τελικής βαθμολογίας του. Η λειτουργία του υποπρογράμματος περιγράφεται στο ερώτημα Γ5. μονάδες 1 γ. Εμφανίζει το ονοματεπώνυμο και την τελική βαθμολογία του. μονάδες 1 Γ3. Οι ενέργειες του ερωτήματος Γ2 πρέπει να επαναλαμβάνονται μέχρι να δοθεί ως ονοματεπώνυμο παίκτη η φράση «gameover». Γ4. Το πρόγραμμα στο τέλος: μονάδες 3 1. Εμφανίζει το ονοματεπώνυμο του μεγάλου νικητή του διαγωνισμού. μονάδες 5 2. Εμφανίζει τον αριθμό των παικτών που πήραν μέρος στον διαγωνισμό. μονάδες 2 3. Υπολογίζει και εμφανίζει το ποσοστό (%) των παικτών που είχαν πάνω από 25 νίκες. μονάδες 2 Γ5. Το υποπρόγραμμα δέχεται ως είσοδο το πλήθος των νικών κάθε παίκτη και επιστρέφει την τελική βαθμολογία του. μονάδες 4 Παρατηρήσεις: Θεωρήστε ότι όλα τα δεδομένα εισόδου είναι έγκυρα. Θεωρήστε ότι η φράση τερματισμού πρόκειται να δοθεί αφού προηγουμένως έχει γίνει η επεξεργασία των στοιχείων τουλάχιστον δύο (2) παικτών. Τόσο κατά την είσοδο όσο και κατά την έξοδο πρέπει να υπάρχουν μηνύματα κατάλληλα διαμορφωμένα. Θεωρήστε ότι ο μεγάλος νικητής του διαγωνισμού είναι μόνο ένας.
ΘΕΜΑ Δ Ένα εργοστάσιο παρασκευής χρωμάτων, έχει 1.500 πελάτες κάθε ένας από τους οποίους πραγματοποιεί συγκεκριμένο αριθμό παραγγελιών σε μηνιαία βάση κατά τη διάρκεια ενός έτους. Αν γνωρίζετε ότι το συγκεκριμένο εργοστάσιο παύει τη λειτουργία του κατά το μήνα Αύγουστο, Να γράψετε πρόγραμμα σε "ΓΛΩΣΣΑ" το οποίο: Δ1) εισάγει στο μονοδιάστατο πίνακα ΟΝΕΠ το ονοματεπώνυμο κάθε πελάτη. μονάδες 1 Δ2) καλεί τη διαδικασία ΠΑΡ στην οποία καταχωρείται στον πίνακα δύο διαστάσεων ΑΠ ο αριθμός των παραγγελιών κάθε πελάτη για κάθε μήνα του έτους (εκτός του μηνός Αυγούστου). Κάθε καταχώρηση πρέπει να ελέγχεται ως προς την εγκυρότητα της, δηλαδή να είναι μεγαλύτερη του μηδενός. Για το μήνα παύσης, να καταχωρείται η τιμή μηδέν. Δ3) καλεί τη συνάρτηση ΕΥΡΕΣΗ η οποία υπολογίζει, για κάθε πελάτη, το σύνολο των ετησίων παραγγελιών του (μονάδες 2) και το καταχωρεί στο μονοδιάστατο πίνακα ΣΠ (μονάδες 2). μονάδες 2 μονάδες 4 Δ4) τυπώνει το ονοματεπώνυμο κάθε πελάτη και δίπλα του το αντίστοιχο σύνολο των ετησίων παραγγελιών του ταξινομημένα κατά αύξουσα σειρά παραγγελιών. Δ5) Να γραφούν τα υποπρογράμματα των ερωτημάτων Δ2 (μονάδες 4) και Δ3 (μονάδες 4) Παρατηρήσεις: (1) Θεωρείστε ότι το ονοματεπώνυμο κάθε πελάτη είναι έγκυρη αλφαριθμητική τιμή. (2) Θεωρήστε ότι ο αριθμός των μηναίων παραγγελιών κάθε πελάτη είναι ακέραιος αριθμός. μονάδες 5 μονάδες 8
ΕΝΔΕΙΚΤΙΚΕΣ ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑ Α Α1.1. Λάθος, 2. Σωστό, 3. Λάθος, 4. Λάθος, 5. Σωστό Α2.Για Ζ από 5 μέχρι 20 με_βήμα 3 Αν Ζ<>14 τότε Γράψε Ζ Τέλος_Αν Τέλος_Επανάληψης Α3.24 βασικές πράξεις (11 αναθέσεις τιμών, 9 προσθέσεις, 4 συγκρίσεις) Α4.Θεωρία 5 ου κεφαλαίου Α5.Θεωρία 10 ου κεφαλαίου Α6.Διάβασε Α, Β Για μ από Α μέχρι Β με_βήμα 2 Αν μ > 5 τότε Γ μ + 2 Γράψε Γ, μ Τέλος_αν Τέλος_επανάληψης Α7.i) Η ουρά αρχικά έχει δείκτες front = 2 και rear = 5 ii) Θανάσης Αριστοτέλης Χριστίνα Κατερίνα iii) Οι δείκτες τώρα είναι front = 4 και rear = 7
ΘΕΜΑ Β Β1.Ο πίνακας Α γίνεται 0 2-1 3 2 0 1 9 1 11 0 2 17 0 4 0 Β2. Χ 11 ΟΣΟ Χ > 1 ΕΠΑΝΑΛΑΒΕ Υ Χ mod 4 ΑΝ Υ > 2 ΤΟΤΕ W Χ + Υ*3 ΑΛΛΙΩΣ W Υ ΑΝ Υ >3 ΤΟΤΕ Α 2*Χ 18 ΓΡΑΨΕ Α Χ Χ 4 ΓΡΑΨΕX, Y, W
ΘΕΜΑ Γ ΠΡΟΓΡΑΜΜΑΘΕΜΑ_Γ ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ:Ποσοστό ΑΚΕΡΑΙΕΣ:Μέγ_Τελική, Συμμετέχοντες,Ν, Τελική, Νίκες ΧΑΡΑΚΤΗΡΕΣ: Ονοματεπώνυμο, Νικητής ΑΡΧΗ Μέγ_Τελική -1!Γ4 (1) - Μια αρχική τιμή μέγιστης τελικής βαθμολογίαςπου σίγουρα θ αλλάξεισυμμετέχοντες 0! Γ4 (2) - Αρχική τιμή πλήθους παικτών που πήραν μέρος στο διαγωνισμό Ν 0! Γ4 (3) - Αρχική τιμή πλήθους παικτών που είχαν άνω των 25 νικών ΓΡΑΨΕ'Δώστε ονοματεπώνυμο παίκτη ήgameoverγιατερματισμό:' ΔΙΑΒΑΣΕΟνοματεπώνυμο! Γ2 (α) -Εισαγωγή πρώτου ονοματεπωνύμου ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ'Δώστε πλήθοςνικών παίκτη:' ΔΙΑΒΑΣΕΝίκες! Γ2 (α)-εισαγωγή πλήθους νικώνκάθε παίκτη που έχει έγκυρο ονοματεπώνυμο Τελική Υπολογισμός (Νίκες)! Γ2 (β) -Κλήση συνάρτησης υπολογισμού τελικής βαθμολογίας ΓΡΑΨΕ'Ο παίκτης', Ονοματεπώνυμο, 'είχε τελικήβαθμολογία:', Τελική,'πόντους' ΑΝ Τελική >Μέγ_ΤελικήΤΟΤΕ Μέγ_Τελική Τελική Νικητής Ονοματεπώνυμο Συμμετέχοντες Συμμετέχοντες +1 ΑΝΝίκες >25ΤΟΤΕ Ν Ν +1 ΓΡΑΨΕ'Δώστε ονοματεπώνυμο παίκτη ήgameoverγιατερματισμό:' ΔΙΑΒΑΣΕΟνοματεπώνυμο! Γ3 -Εισαγωγήεπόμενου ονοματεπωνύμου
ΜΕΧΡΙΣ_ΟΤΟΥ Ονοματεπώνυμο = 'gameover' ΓΡΑΨΕ'Ο μεγάλος νικητής είναι ο:',νικητής ΓΡΑΨΕ'Πλήθος παικτών που πήραν μέροςστο διαγωνισμό:', Συμμετέχοντες Ποσοστό ( Ν / Συμμετέχοντες ) * 100 ΓΡΑΨΕ'Το ποσοστό των παικτών που είχαν άνωτων 25 νικών είναι:', Ποσοστό, '%' ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΥΝΑΡΤΗΣΗΥπολογισμός (Χ):ΑΚΕΡΑΙΑ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ:Χ ΑΡΧΗ ΑΝ Χ >=1 ΚΑΙ Χ <=10 ΤΟΤΕ Υπολογισμός 4 * Χ ΑΛΛΙΩΣ_ΑΝ Χ >=11 ΚΑΙ Χ<=25 ΤΟΤΕ Υπολογισμός (4 * 10)+6 * (Χ-10) ΑΛΛΙΩΣ_ΑΝ Χ >25 ΤΟΤΕ Υπολογισμός (4 * 10)+ (6 * 15)+8 * (Χ-25) ΑΛΛΙΩΣ Υπολογισμός 0 ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ
ΘΕΜΑ Δ ΠΡΟΓΡΑΜΜΑ ΘΕΜΑ_Δ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: i, j, temp1, ΣΠ[1500], ΑΠ[1500,12] ΧΑΡΑΚΤΗΡΕΣ: ΟΝΕΠ[1500], temp2 ΑΡΧΗ ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 1500 ΓΡΑΨΕ Δώστε ονοματεπώνυμο πελάτη: ΔΙΑΒΑΣΕ ΟΝΕΠ[i] ΚΑΛΕΣΕ ΠΑΡ(ΑΠ) ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 1500 ΣΠ[i] ΕΥΡΕΣΗ(ΑΠ, i ) ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 1500 ΓΙΑ j ΑΠΟ 1500 ΜΕΧΡΙ i ME_BHMA -1 ΑΝ ΣΠ[j-1] > ΣΠ[j] ΤΟΤΕ temp1 ΣΠ[j-1] ΣΠ[j-1] ΣΠ[j] ΣΠ[j] temp1 temp2 ΟΝΕΠ[j-1] ΟΝΕΠ[j-1] ΟΝΕΠ[j] ΟΝΕΠ[j] temp2 ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 1500 ΤΥΠΩΣΕ Ο πελάτης, ΟΝΕΠ[i], έχει ετήσιες παραγγελίες, ΣΠ[i] ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ ΠΑΡ(Α) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: i, j, A[1500,12] ΑΡΧΗ ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 1500 ΓΡΑΨΕ Δώστε παραγγελίες του, i, πελάτη ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 12 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ Δώστε παραγγελίες μηνός ΑΝ j = 8 TOTE A[i,j] 0 ΑΛΛΙΩΣ ΔΙΑΒΑΣΕ Α[i,j] ΑΝ A[i,j] < = 0 TOTE ΓΡΑΨΕ Δώστε θετικό αριθμό ΜΕΧΡΙΣ_ΟΤΟΥ Α[i,j] >= 0 ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΣΥΝΑΡΤΗΣΗ ΕΥΡΕΣΗ(Π,λ) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: j, λ, Π[1500,12] ΑΡΧΗ ΕΥΡΕΣΗ 0 ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 12 ΕΥΡΕΣΗ ΕΥΡΕΣΗ + Π[λ,j] ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ