ΘΕΜΑ 1 Ο Α. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις και δίπλα τη λέξη Σωστό, αν είναι σωστή, ή τη λέξη Λάθος, αν είναι λανθασµένη. (Μονάδες 10) 1. Για την εκτέλεση µια εντολή συµβολική γλώσσα απαιτείται η µετάφρασή τη σε γλώσσα µηχανή. 2. Σε µία δυναµική δοµή δεδοµένων τα δεδοµένα αποθηκεύονται υποχρεωτικά σε συνεχόµενε θέσει µνήµη. 3. Στη διαδικασία η λίστα παραµέτρων είναι υποχρεωτική. 4. Η δυναµική παραχώρηση µνήµη χρησιµοποιείται στι στατικέ δοµέ δεδοµένων. 5. Η JAVA είναι µία αντικειµενοστραφή γλώσσα προγραµµατισµού για την ανάπτυξη εφαρµογών που εκτελούνται σε κατανεµηµένα περιβάλλοντα, δηλαδή σε διαφορετικού υπολογιστέ οι οποίοι είναι συνδεδεµένοι στο διαδίκτυο. 6. Κατά την κλήση ενό υποπρογράµµατο η πραγµατική παράµετρο και η αντίστοιχη τυπική τη είναι δυνατόν να έχουν το ίδιο όνοµα. 7. Όταν γίνεται σειριακή αναζήτηση κάποιου στοιχείου σε έναν µη ταξινοµηµένο πίνακα και το στοιχείο δεν υπάρχει στον πίνακα, τότε υποχρεωτικά προσπελαύνονται όλα τα στοιχεία του πίνακα. 8. Τα στοιχεία ενός πίνακα µπορούν να αποτελούνται από δεδοµένα διαφορετικού τύπου. 9. Το πρόγραµµα που παράγεται από το µεταγλωττιστή λέγεται εκτελέσιµο. 10. Σε ένα µεγάλο και σύνθετο πρόγραµµα, η άσκοπη χρήση µεγάλων πινάκων µπορεί να οδηγήσει ακόµη και σε αδυναµία εκτέλεσης του προγράµµατος. Β. Έστω πρόβληµα που αναφέρει: «...Να κατασκευάσετε αλγόριθµο που θα ζητάει τις ηλικίες 100 ανθρώπων και να εµφανίζει το µέσο όρο ηλικίας τους...». ίνονται οι παρακάτω προτάσεις. Για κάθε µία πρόταση να γράψετε στο τετράδιό σας το αντίστοιχο γράµµα και δίπλα τη λέξη ΣΩΣΤΟ ή ΛΑΘΟΣ, αν θεωρείτε ότι η πρόταση είναι σωστή ή λανθασµένη αντίστοιχα. (Μονάδες 10)(πανελλαδικές 2009) α. Πρέπει να χρησιµοποιηθεί πίνακας. β. Είναι δυνατόν να χρησιµοποιηθεί πίνακας. γ. Είναι δυνατόν να χρησιµοποιηθεί η εντολή Όσο. δ. Είναι δυνατόν να χρησιµοποιηθεί η εντολή Για. ε. Η εντολή Για είναι η καταλληλότερη. Γ. Για ποιες από τις παρακάτω περιπτώσεις µπορεί να χρησιµοποιηθεί συνάρτηση: (Μονάδες 10) α. εµφάνιση ενός δεδοµένου β. υπολογισµός του µεγαλύτερου από 10 ακεραίους γ. υπολογισµός των δύο µικρότερων από 10 ακεραίους δ. έλεγχος αν ένα όνοµα υπάρχει µέσα σε ένα σύνολο ονοµάτων ε. συγχώνευση δύο πινάκων στ. έλεγχος αν ένας χαρακτήρας είναι φωνήεν ή σύµφωνο.. ίνεται το παρακάτω τµήµα δηλώσεων ενός προγράµµατος σε «ΓΛΩΣΣΑ»: (Μονάδες 10)(επαναλ. Πανελλαδικές 2010) ΑΚΕΡΑΙΕΣ: Χ, Ζ[15], I ΠΡΑΓΜΑΤΙΚΕΣ: Ω Να µετατρέψετε τις ενέργειες που δίνονται παρακάτω σε εντολές της «ΓΛΩΣΣΑΣ»: α. Εκχώρησε την τιµή -3 στη µεταβλητή Χ. β. Εκχώρησε την τιµή της µεταβλητής Χ στις πρώτες πέντε θέσεις του πίνακα Ζ. γ. Εµφάνισε τις τιµές των δύο πρώτων θέσεων του πίνακα Ζ. δ. Εκχώρησε στη µεταβλητή Ω τον µέσο όρο των τιµών των δύο τελευταίων θέσεων του πίνακα Ζ. ε. Αν 1 Χ 15 εµφάνισε την τιµή της θέσης Χ του πίνακα Ζ. ΘΕΜΑ 2 Ο Β. ίνεται το παρακάτω πρόγραµµα και υποπρογράµµατα: ΠΡΟΓΡΑΜΜΑ Θέµα2 ΑΚΕΡΑΙΕΣ: Α[8], i Α[1] 11 ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ 8 Α[ i ] F ( A[i 1], i )
ΚΑΛΕΣΕ ΙΑ (Α) ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Θέµα2 ΣΥΝΑΡΤΗΣΗ F (α, β) : ΑΚΕΡΑΙΑ ΑΚΕΡΑΙΕΣ: α, β α 5 * α F (α + 2) DIV (β + 2) ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ ΙΑ ΙΚΑΣΙΑ ΙΑ (Α) ΑΚΕΡΑΙΕΣ: Α[8], i, S1, S2 S1 0 S2 0 ΓΙΑ i ΑΠΟ 3 ΜΕΧΡΙ 6 S1 S1 + A[i + 1] S2 S2 + A[i 2] ΓΡΑΨΕ S2 S1 ΤΕΛΟΣ_ ΙΑ ΙΚΑΣΙΑΣ ΘΕΜΑ 3 Ο Να παρουσιάσετε την µορφή του πίνακα Α µετά την εκτέλεση του προγράµµατος. (Μονάδες10) Ποια τιµή θα εκτυπώσει το πρόγραµµα; (Μονάδες 10) Αναπτύξτε αλγόριθµο που να διαβάζει έναν ακέραιο αριθµό και να υπολογίζει ποιο ή ποια ψηφία του εµφανίζονται πιο πολλές φορές. Παρατήρηση: θεωρήστε ότι ο αριθµός είναι ακέραιος. Παράδειγµα αποτελέσµατος: αν ως είσοδος εισαχθεί ο αριθµός 2352523 ο αλγόριθµος θα εµφανίσει το 2, αν εισαχθεί ο αριθµός 5895896 ο αλγόριθµος θα εµφανίσει το 5, το 8 και το 9. Μονάδες 20 ΘΕΜΑ 4ο Ένα σούπερ µάρκετ έχει 10 ταµεία. Ο διευθυντής του σούπερ µάρκετ θέλει να παρακολουθήσει της πωλήσεις των ταµείων για τους 12 µήνες ενός χρόνου. Να γραφεί πρόγραµµα το οποίο: α. Να γίνει τµήµα δηλώσεων. (Μονάδες 2) β. Να διαβάζει τις πωλήσεις των ταµείων για τους 12 µήνες του χρόνου και να τις αποθηκεύει στον πίνακα ΠΩΛΗΣΕΙΣ[10,12]. Κατά την καταχώρηση να γίνεται έλεγχος για αρνητικές τιµές. (Μονάδες 2) γ. Να υπολογίζει και να εµφανίζει το άθροισµα των πωλήσεων ανά ταµείο. (Μονάδες 3) δ. Να υπολογίζει και να εµφανίζει το ταµείο µε το µεγαλύτερο άθροισµα πωλήσεων. (Μονάδες 3) ε. Να υπολογίζει και να εµφανίζει τους µήνες των οποίων οι συνολικές εισπράξεις είναι µεγαλύτερες από τον µέσο όρο των εισπράξεων όλων των µηνών. (Μονάδες 4) στ. Να υπολογίζει και να εµφανίζει ποια εποχή είχε περισσότερες και ποια λιγότερες εισπράξεις. (Εποχές θεωρούµε τον Χειµώνα, την Άνοιξη, το Καλοκαίρι και το Φθινόπωρο). Ο υπολογισµός µόνο να γίνει µε κατάλληλο υποπρόγραµµα. (Μονάδες 6)
ΛΥΣΕΙΣ Α. 1. Σ 2. Λ 3. Λ 4. Λ 5. Σ 6. Σ 7. Σ 8. Λ 9. Λ 10. Σ Β. α. Λ β. Α γ. Α δ. Α ε. Α Γ. α. ΟΧΙ β. ΝΑΙ γ. ΟΧΙ δ. ΝΑΙ ε. ΟΧΙ στ. ΝΑΙ. α. Χ -3 ΘΕΜΑ 2 Ο β. ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5 Ζ[Ι] Χ γ. ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 2 ΓΡΑΨΕ Ζ[Ι] δ. Ω (Ζ[14] + Ζ[15])/2 ε. ΑΝ Χ>=1 ΚΑΙ Χ<=15 ΤΟΤΕ ΓΡΑΨΕ Ζ[Χ] ΤΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΠΙΝΑΚΑ ΘΑ ΕΙΝΑΙ: 11 14 14 12 8 5 3 1 ΤΟ ΠΡΟΓΡΑΜΜΑ ΘΑ ΕΜΦΑΝΙΣΕΙ ΤΗΝ ΤΙΜΗ 23 ΘΕΜΑ 3 Ο ΠΡΟΓΡΑΜΜΑ ΑΡΙΘΜΟΣ ΑΚΕΡΑΙΕΣ: ΠΛΗΘΟΣ[10],Χ,MAX,I,ΤΕΛΕΥΤΑΙΟ_Ψ ΙΑΒΑΣΕ Χ ΠΛΗΘΟΣ[Ι] 0 ΟΣΟ Χ<>0 ΕΠΑΝΑΛΑΒΕ ΤΕΛΕΥΤΑΙΟ_Ψ Χ MOD 10 ΠΛΗΘΟΣ[ΤΕΛΕΥΤΑΙΟ_Ψ+1] ΠΛΗΘΟΣ[ΤΕΛΕΥΤΑΙΟ_Ψ+1]+1 Χ Χ DIV 10 MAX ΠΛΗΘΟΣ[1] ΑΝ ΠΛΗΘΟΣ[Ι]>MAX ΤΟΤΕ MAX ΠΛΗΘΟΣ[Ι]
ΑΝ ΠΛΗΘΟΣ[Ι]=MAX ΤΟΤΕ ΓΡΑΨΕ 'ΤΟ ΨΗΦΙΟ', Ι-1, 'ΕΜΦΑΝΙΖΕΤΑΙ', ΠΛΗΘΟΣ[Ι], 'ΦΟΡΕΣ' ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΘΕΜΑ 4 Ο ΠΡΟΓΡΑΜΜΑ ΣΟΥΠΕΡ_ΜΑΡΚΕΤ ΑΚΕΡΑΙΕΣ: I, J,ΘΕΣΗ, ΜΑΧ_ΕΠΟΧΗ, ΜΙΝ_ΕΠΟΧΗ ΠΡΑΓΜΑΤΙΚΕΣ: ΠΩΛΗΣΕΙΣ[10,12], ΤΑΜ[10], ΜΗΝΕΣ[12], ΜΑΧ,A,ΕΠΟΧΗ[4] ΧΑΡΑΚΤΗΡΕΣ: ΕΠ[4] _ΕΠΑΝΑΛΗΨΗΣ ΙΑΒΑΣΕ ΠΩΛΗΣΕΙΣ[I, J] ΜΕΧΡΙΣ_ΟΤΟΥ ΠΩΛΗΣΕΙΣ[I, J] > 0 ΤΑΜ[Ι] 0 ΤΑΜ[Ι] ΤΑΜ[Ι] + ΠΩΛΗΣΕΙΣ[I, J] ΓΡΑΨΕ ΤΑΜ[Ι] ΜΑΧ ΤΑΜ[1] ΘΕΣΗ 1 ΓΙΑ Ι ΑΠΟ 2 ΜΕΧΡΙ 10 ΑΝ ΤΑΜ[Ι] > ΜΑΧ ΤΟΤΕ ΜΑΧ ΤΑΜ[Ι] ΘΕΣΗ Ι ΓΡΑΨΕ ΤΟ ΤΑΜΕΙΟ ΝΟΥΜΕΡΟ, ΘΕΣΗ A 0 ΜΗΝΕΣ[J] 0 ΜΗΝΕΣ[J] ΜΗΝΕΣ[J] + ΠΩΛΗΣΕΙΣ[I, J] A A + ΠΩΛΗΣΕΙΣ[I, J] MO A/120 AN ΜΗΝΕΣ[J] > MO TOTE ΓΡΑΨΕ O, J, MHNAΣ ΕΠΟΧΗ[1] ΜΗΝΕΣ[12] + ΜΗΝΕΣ[1] + ΜΗΝΕΣ[2] ΕΠ[1] ΧΕΙΜΩΝΑΣ ΕΠΟΧΗ[2] ΜΗΝΕΣ[3] + ΜΗΝΕΣ[4] + ΜΗΝΕΣ[5] ΕΠ[2] ΑΝΟΙΞΗ ΕΠΟΧΗ[3] ΜΗΝΕΣ[6] + ΜΗΝΕΣ[7] + ΜΗΝΕΣ[8]
ΕΠ[3] ΚΑΛΟΚΑΙΡΙ ΕΠΟΧΗ[4] ΜΗΝΕΣ[9] + ΜΗΝΕΣ[10] + ΜΗΝΕΣ[11] ΕΠ[4] ΦΘΙΝΟΠΩΡΟ ΚΑΛΕΣΕ ΥΠΟΛΟΓΙΣΜΟΣ(ΕΠΟΧΗ, ΜΑΧ_ΕΠΟΧΗ, ΜΙΝ_ΕΠΟΧΗ) ΓΡΑΨΕ H ΕΠΟΧΗ ΜΕ ΤΙΣ ΠΕΡΙΣΣΟΤΕΡΕΣ ΕΙΣΠΡΑΞΕΙΣ ΕΙΝΑΙ, ΕΠ[ΜΑΧ_ΕΠΟΧΗ] ΓΡΑΨΕ H ΕΠΟΧΗ ΜΕ ΤΙΣ ΛΙΓΟΤΕΡΕΣ ΕΙΣΠΡΑΞΕΙΣ ΕΙΝΑΙ, ΕΠ[ΜΙΝ_ΕΠΟΧΗ] ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΙΑ ΙΚΑΣΙΑ ΥΠΟΛΟΓΙΣΜΟΣ(ΕΠΟΧΗ,Μ,Ν) ΜΕΤΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Ι,Μ,Ν ΠΡΑΓΜΑΤΙΚΕΣ:ΕΠΟΧΗ[4],ΜΑΧ,ΜΙΝ ΜΑΧ ΕΠΟΧΗ[1] Μ 1 ΜΙΝ ΕΠΟΧΗ[1] Ν 1 ΓΙΑ Ι ΑΠΟ 2 ΜΕΧΡΙ 4 ΑΝ ΕΠΟΧΗ[Ι] > ΜΑΧ ΤΟΤΕ ΜΑΧ ΕΠΟΧΗ[Ι] Μ Ι ΑΝ ΕΠΟΧΗ[Ι] < ΜΙΝ ΤΟΤΕ ΜΙΝ ΕΠΟΧΗ[Ι] Ν Ι ΤΕΛΟΣ_ ΙΑ ΙΚΑΣΙΑΣ