You are on page 1of 6

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ – Γ΄ ΗΜΕΡΗΣΙΩΝ

ΔΙΑΓΩΝΙΣΜΑ
ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ, ΕΠΙΛΟΓΗΣ, ΕΠΑΝΑΛΗΨΗΣ, ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ
Γ’ ΟΙΚΟΝΟΜΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
Γ΄ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ
ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ:
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ
ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6)
ΘΕΜΑ Α

A1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις
παρακάτω προτάσεις 1-5 και δίπλα τη λέξη ΣΩΣΤΟ , αν η πρόταση
είναι σωστή, ή τη λέξη ΛΑΘΟΣ , αν η πρόταση είναι λανθασμένη.
1. Οι διάφορες δομές δεδομένων δεν είναι συνήθως το ίδιο
αποδοτικές, αν αξιολογηθούν με κριτήριο κάποια λειτουργία
που εκτελείται πάνω σε αυτές.
2. Η επιλογή δομής δεδομένων σχετίζεται με το τι λειτουργίες
θα εφαρμοστούν στα δεδομένα.
3. Ένα πρόγραμμα θεωρεί τη δομή δεδομένων και τον αλγόριθμο ως
διακριτές ενότητες.
4. Η χρήση της σειριακής μεθόδου αναζήτησης δικαιολογείται
στην περίπτωση που ο πίνακας είναι ταξινομημένος και έχει
μικρό μέγεθος.
5. Η ταξινόμηση φυσαλίδας είναι πιο σύνθετος και πιο αργός
αλγόριθμος ταξινόμησης συγκρινόμενος με τον quicksort.

(Μονάδες 5)

A2. Απαντήστε στις παρακάτω ερωτήσεις:


(α) Ποιες είναι οι βασικές λειτουργίες επί των δομών
δεδομένων;
(β) Πώς εξηγείται η ύπαρξη πολλών διαφορετικών δομών
δεδομένων;
(Μονάδες 6)

Α3. (α) Δίνεται το παρακάτω πρόγραμμα σε ΓΛΩΣΣΑ.


ΠΡΟΓΡΑΜΜΑ θετ_αρτ
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: i, Α[100], Β[200]
ΑΡΧΗ
ΓΙΑ i ΑΠΟ (1) ΜΕΧΡΙ (2) α
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΔΙΑΒΑΣΕ Α[i]
ΜΕΧΡΙΣ_ΟΤΟΥ Α[i] (3) 0
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 6 ΣΕΛΙΔΕΣ


ΑΡΧΗ 2ΗΣ ΣΕΛΙΔΑΣ – Γ΄ ΗΜΕΡΗΣΙΩΝ
ΓΙΑ i ΑΠΟ (4) ΜΕΧΡΙ 300
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΔΙΑΒΑΣΕ Β[ (5) ]
ΜΕΧΡΙΣ_ΟΤΟΥ Β[ (6) ] (7) 2 = (8) α
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Να γράψετε στο τετράδιό σας τους αριθμούς (1) έως και (8) που
αντιστοιχούν στα κενά του προγράμματος και, δίπλα σε κάθε
αριθμό, ό,τι πρέπει να συμπληρωθεί, ώστε το πρόγραμμα να
δέχεται από το πληκτρολόγιο και να εισάγει στους πίνακες
Α[100] και Β[200] ακέραιους αριθμούς κάνοντας έλεγχο
εγκυρότητας ώστε στον Α να εισάγονται θετικοί αριθμοί και στον
Β άρτιοι.
(Μονάδες 8)

(β) Επεκτείνετε το πρόγραμμα του ερωτήματος Α3 (α)


προσθέτοντας εντολές ώστε το πρόγραμμα να υπολογίζει πόσοι μη
θετικοί αριθμοί επιχειρήθηκε να εισαχθούν στον πίνακα Α.

(Μονάδες 6)

ΘΕΜΑ Β

Β1. Το τμήμα προγράμματος που ακολουθεί επεξεργάζεται δεδομένο


πίνακα ακεραίων Α[1000].

Σ  0
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 1000
ΑΝ <συνθήκη> ΤΟΤΕ
Σ  Σ + Α[i]
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

Συμπληρώστε τη <συνθήκη> ώστε μετά την εκτέλεση του τμήματος


προγράμματος η μεταβλητή Σ να έχει σαν τιμή το άθροισμα

1. των στοιχείων των περιττών θέσεων του πίνακα Α

2. των περιττών στοιχείων του πίνακα Α

3. των διψήφιων στοιχείων του πίνακα Α

4. των στοιχείων των διψήφιων θέσεων του πίνακα Α

5. των αρνητικών στοιχείων του πίνακα Α

6. όλων των στοιχείων του πίνακα Α


(Μονάδες 6)

ΤΕΛΟΣ 2ΗΣ ΑΠΟ 6 ΣΕΛΙΔΕΣ


ΑΡΧΗ 3ΗΣ ΣΕΛΙΔΑΣ – Γ΄ ΗΜΕΡΗΣΙΩΝ

Β2. Για την ταξινόμηση, σε φθίνουσα σειρά, των στοιχείων ενός


μονοδιάστατου πίνακα αριθμών Π[30] μπορεί να ακολουθηθεί η
παρακάτω διαδικασία: Αρχικά, ο πίνακας σαρώνεται από την αρχή
μέχρι το τέλος του, προκειμένου να βρεθεί το μεγαλύτερο
στοιχείο του. Αυτό το στοιχείο τοποθετείται στην αρχή του
πίνακα, ανταλλάσσοντας θέσεις με το στοιχείο της πρώτης θέσης
του πίνακα. Η σάρωση του πίνακα επαναλαμβάνεται, ξεκινώντας
τώρα από το δεύτερο στοιχείο του πίνακα. Το μεγαλύτερο από τα
στοιχεία που απέμειναν ανταλλάσσει θέσεις με το στοιχείο της
δεύτερης θέσης του πίνακα. Η σάρωση επαναλαμβάνεται,
ξεκινώντας από το τρίτο στοιχείο του πίνακα, μετά από το
τέταρτο στοιχείο του πίνακα κ.ο.κ.

Το παρακάτω ημιτελές τμήμα αλγορίθμου κωδικοποιεί την παραπάνω


διαδικασία:

Για k από 1 μέχρι 29


θ ← (1) α
Για i από k μέχρι 30
Αν Π[i] (2) Π[θ] τότε
θ ← (3)
Τέλος_αν
Τέλοςεπανάληψης
αντιμετάθεσε (4) , (5) α
Τέλος_επανάληψης

Να γράψετε στο τετράδιό σας τους αριθμούς (1) έως (5), που
αντιστοιχούν στα κενά του αλγορίθμου και, δίπλα σε κάθε
αριθμό, ό,τι πρέπει να συμπληρωθεί, ώστε να γίνεται σωστά η
ταξινόμηση.
(Μονάδες 10)

Β3. (α) Να μετατρέψετε τα δύο διαγράμματα ροής που ακολουθούν σε


τμήματα προγράμματος γραμμένα σε ΓΛΩΣΣΑ χρησιμοποιώντας ως
δομή επανάληψης αποκλειστικά την ΓΙΑ Α ΠΟ ΜΕΧΡΙ.
(Μονάδες 3)

(β) Να δημιουργήστε ένα ενιαίο πρόγραμμα σε ΓΛΩΣΣΑ τοποθετώντας


τα τμήματα προγράμματος του ερωτήματος Β3 (α) στο ίδιο ενιαίο
πρόγραμμα, συμπληρώνοντας με τμήμα δηλώσεων μεταβλητών και
τοποθετώντας εντολές αρχής και τέλους προγράμματος.
(Μονάδες 3)

(γ) Εξηγείστε τη λειτουργία του ενιαίου προγράμματος .


(Μονάδες 3)

ΤΕΛΟΣ 3ΗΣ ΑΠΟ 6 ΣΕΛΙΔΕΣ


ΑΡΧΗ 4ΗΣ ΣΕΛΙΔΑΣ – Γ΄ ΗΜΕΡΗΣΙΩΝ

ΑΡΧΗ

ΒΡΕΘΗΚΕmax <-- ΨΕΥΔΗΣ

i <-- 1

Α
i <= 200

Α
Τ[i] = 'Α'

max <-- Β[i]

ΒΡΕΘΗΚΕmax <-- ΑΛΗΘΗΣ

i <-- i + 1

ΤΕΛΟΣ

ΤΕΛΟΣ 4ΗΣ ΑΠΟ 6 ΣΕΛΙΔΕΣ


ΑΡΧΗ 5ΗΣ ΣΕΛΙΔΑΣ – Γ΄ ΗΜΕΡΗΣΙΩΝ

ΑΡΧΗ

Α
ΒΡΕΘΗΚΕmax = ΨΕΥΔΗΣ

ΓΡΑΨΕ
'Δεν υπάρχει μαθητής που να φοιτά στην Α τάξη'

i <-- 1

Α
i <= 200

Α
Τ[i]='Α' ΚΑΙ Β[i] > max

max <-- Β[i]

i <-- i + 1

i <-- 1

Α
i <= 200

Α
Τ[i]='Α' ΚΑΙ Β[i] = max

ΓΡΑΨΕ
ΟΝ[i]

i <-- i + 1

ΤΕΛΟΣ

ΤΕΛΟΣ 5ΗΣ ΑΠΟ 6 ΣΕΛΙΔΕΣ


ΑΡΧΗ 6ΗΣ ΣΕΛΙΔΑΣ – Γ΄ ΗΜΕΡΗΣΙΩΝ

ΘΕΜΑ Γ
Να γίνει αλγόριθμος, ο οποίος για 50 μαθητές νηπιαγωγείου να
δέχεται όνομα και ηλικία (4 ή 5) και να τα καταχωρεί στους πίνακες
ΟΝ και ΗΛ αντίστοιχα. Τα ονόματα των μαθητών με ηλικία 4 ετών να
αντιγράφονται σε νέο πίνακα ΠΡΟΝΗΠ_ΟΝ. Δεν απαιτείται έλεγχος
εγκυρότητας δεδομένων.
(Μονάδες 25)
ΘΕΜΑ Δ
Να γίνει αλγόριθμος, ο οποίος για 300 πόλεις να διαβάζει όνομα,
νομό και πληθυσμό.

Ο αλγόριθμος να εμφανίζει τα ονόματα των πόλεων (ομαδοποιώντας)


κατά νομό. Στις πόλεις του ίδιου νομού να εμφανίζονται πρώτα αυτές
με τον μεγαλύτερο πληθυσμό και σε περίπτωση που έχουν ίδιο
πληθυσμό να εμφανίζονται πρώτες οι αλφαβητικά πρώτες. Στις
συγκρίσεις πληθυσμών να αγνούνται οι μονάδες και δεκάδες, δηλαδή
μια πόλη με πληθυσμό 15127 συμμετέχει στις συγκρίσεις με
ονομαστικό πληθυσμό 15100.
(Μονάδες 25)

ΤΕΛΟΣ 6ΗΣ ΑΠΟ 6 ΣΕΛΙΔΕΣ

You might also like