ΘΕΜΑ Α, Ερώτημα 1
Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και, δίπλα, τη λέξη ΣΩΣΤΟ, αν η πρόταση είναι σωστή, ή τη λέξη ΛΑΘΟΣ, αν η πρόταση είναι λανθασμένη.
- Η πράξη της σύζευξης δύο λογικών εκφράσεων δίνει ως αποτέλεσμα την τιμή ΨΕΥΔΗΣ, μόνον όταν και οι δύο εκφράσεις έχουν την τιμή ΨΕΥΔΗΣ.
- Συνηθέστατα παρατηρείται το φαινόμενο μια δομή δεδομένων να είναι αποδοτικότερη από μια άλλη δομή, με κριτήριο κάποια λειτουργία.
- Ο ιεραρχικός προγραμματισμός χρησιμοποιεί τη στρατηγική της συνεχούς διαίρεσης του προβλήματος σε υποπροβλήματα.
- Οι εντολές που βρίσκονται μέσα στο βρόχο μιας εντολής ΓΙΑ εκτελούνται τουλάχιστον μία φορά.
- Σε μία εντολή εκχώρησης δεν μπορεί να υπάρχει αναφορά σε περισσότερες από μία συναρτήσεις.
Μονάδες 10
ΛΥΣΗ
- Λάθος 2. Σωστό 3. Σωστό 4. Λάθος 5. Λάθος
ΘΕΜΑ Α, Ερώτημα 2
α. Να αιτιολογήσετε γιατί ένα από τα πλεονεκτήματα του τμηματικού προγραμματισμού είναι το ότι απαιτεί λιγότερο χρόνο και προσπάθεια στη συγγραφή του προγράμματος (μονάδες 2).
β. Να γράψετε τη σύνταξη της εντολής ΟΣΟ… ΕΠΑΝΑΛΑΒΕ (μονάδα 1)
και να περιγράψετε τη λειτουργία της (μονάδες 3).
Μονάδες 6
ΑΠΑΝΤΗΣΗ
α. Από κεφάλαιο 10.3.:
‘Πολύ συχνά χρειάζεται η ίδια λειτουργία σε διαφορετικά σημεία ενός προγράμματος. Από τη στιγμή που ένα υποπρόγραμμα έχει γραφεί, μπορεί το ίδιο να καλείτεαι από πολλά σημεία του προγράμματος. Έτσι μειώνονται το μέγεθος του προγράμματος, ο χρόνος που απαιτείται για τη συγγραφή του και οι πιθανότητες λάθους, ενώ ταυτόχρονα το πρόγραμμα γίνεται πιο εύληπτο και κατανοητό.’
β. Από κεφάλαιο 8.2.1:
Σύνταξη
ΟΣΟ συνθήκη ΕΠΑΝΑΛΑΒΕ εντολή-1 εντολή-2 ... εντολή-ν ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Παράδειγμα
Άθροισμα <—- 0 ΟΣΟ Άθροισμα < 1000 ΕΠΑΝΑΛΑΒΕ ΔΙΑΒΑΣΕ A Άθροισμα <—- Άθροισμα + Α ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Λειτουργία
Ελέγχεται η συνθήκη και αν είναι Αληθής, εκτελούνται οι εντολές που βρίσκονται ανάμεσα στις ΟΣΟ_ΕΠΑΝΑΛΑΒΕ και ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ. Στη συνέχεια ελέγχεται πάλι η συνθήκη και αν ισχύει, εκτελούνται πάλι οι ίδιες εντολές. Όταν η λογική έκφραση γίνει Ψευδής, τότε σταματάει η επανάληψη και εκτελείται η εντολή μετά το ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ.
ΘΕΜΑ Α, Ερώτημα 3
Προκειμένου να επιλύσουμε ένα πρόβλημα με τον υπολογιστή, εκτελούμε κάποια βήματα. Τα βήματα αυτά δίνονται παρακάτω με τυχαία σειρά:
α. Σύνδεση του προγράμματος
β. Σύνταξη του προγράμματος
γ. Ανάπτυξη του αντίστοιχου αλγορίθμου
δ. Διατύπωση του προβλήματος
ε. Μεταγλώττιση του προγράμματος
στ. Εκτέλεση του προγράμματος
ζ. Κατανόηση του προβλήματος
η. Ανάλυση του προβλήματος
Κάποια από τα βήματα αυτά (α, β,…, η) περιλαμβάνονται στη μεσαία στήλη του Πίνακα Ι.
Προηγούμενο | Βήμα | Επόμενο |
ε | ||
γ | ||
ζ | ||
α |
Πίνακας Ι
Να αντιγράψετε τον Πίνακα Ι στο τετράδιό σας και, για καθένα από τα βήματα που δίνονται στη μεσαία στήλη, να συμπληρώσετε, με βάση τη σωστή σειρά εκτέλεσης των βημάτων:
α. στη στήλη Προηγούμενο, το γράμμα που αντιστοιχεί στο αμέσως προηγούμενο βήμα (μονάδες 4).
β. στη στήλη Επόμενο, το γράμμα που αντιστοιχεί στο αμέσως επόμενο βήμα (μονάδες 4).
Μονάδες 8
ΛΥΣΗ
Προηγούμενο | Βήμα | Επόμενο |
β | ε | α |
η | γ | β |
δ | ζ | η |
ε | α | στ |
ΘΕΜΑ Α, Ερώτημα 4
Δίνεται το παρακάτω τμήμα αλγορίθμου, με αριθμημένες τις γραμμές του:
- max <- Π[1]
- Για i από 2 μέχρι 5
- Αν Π[i] > max τότε
- max <- Π[i]
- Τέλος_αν
- Τέλος_επανάληψης
α. Τι υπολογίζει αυτό το τμήμα αλγορίθμου; (μονάδες 2)
β. Πόσες φορές τουλάχιστον θα εκτελεστεί η εντολή στη γραμμή 4; (μονάδες 2)
γ. Πόσες φορές το πολύ θα εκτελεστεί η εντολή στη γραμμή 4; (μονάδες 2)
δ. Να αιτιολογήσετε γιατί ο πίνακας Π δεν μπορεί να είναι πίνακας λογικών τιμών (μονάδες 4).
Μονάδες 10
ΛΥΣΗ
α. Υπολογίζει το μέγιστο στοιχείο από έναν πίνακα 5 θέσεων.
β. Καμία φορά.
γ. Τέσσερις (4) φορές.
δ. Στη γραμμή 3 τα στοιχεία του πίνακα Π συγκρίνονται με τη χρήση του συγκριτικού τελεστή >. Αυτό είναι δυνατό μόνο σε αριθμητικές και αλφαριθμητικές τιμές.
ΘΕΜΑ Α, Ερώτημα 5
Δίνονται οι παρακάτω αριθμητικές εκφράσεις σε ΓΛΩΣΣΑ:
- ((Α_Τ(x) – HM(θ))/(Τ_Ρ((x^2)+5)))
- (2*x+((3*(x + 1))/(y^2 + 1)) – Ε(x))
Λαμβάνοντας υπόψη την ιεραρχία των αριθμητικών πράξεων, να ξαναγράψετε τις εκφράσεις αυτές, παραλείποντας όλες τις παρενθέσεις που δεν είναι απαραίτητες.
Μονάδες 6
ΛΥΣΗ
- ( ΑΤ( x ) – HM ( θ ) ) / ΤΡ( x ^ 2 + 5 )
- 2 * x + 3 * ( x + 1 ) /( y ^ 2 + 1) – Ε( x )
ΘΕΜΑ Β
Δίνεται το παρακάτω τμήμα αλγορίθμου ΤΑ_1:
Αν x>10 τότε Αν x<30 τότε Κ <-- 3*x Αλλιώς Κ <-- 5*x Τέλος_αν Κ<-- Κ/2 Αλλιώς Κ <-- x Αν x<5 τότε Κ <-- 2*Κ Τέλος_αν Τέλος_αν
Β1. Να σχεδιάσετε στο τετράδιό σας το αντίστοιχο διάγραμμα ροής.
Μονάδες 8
Β2. Χρησιμοποιώντας μόνο μία εντολή πολλαπλής επιλογής και μόνο απλές συνθήκες, να γράψετε στο τετράδιό σας τμήμα αλγορίθμου το οποίο θα παράγει το ίδιο αποτέλεσμα με το ΤΑ_1.
Μονάδες 12
ΛΥΣΗ
Β2.
Αν x < 5 τότε Κ <-- χ Κ <-- 2 * Κ Αλλιώς_αν x <= 10 τότε Κ <-- x Αλλιώς_αν x < 30 τότε Κ <-- 3 * x Κ<-- Κ/2 Αλλιώς Κ <-- 5 * x Κ <-- Κ / 2 Τέλος_αν
ΘΕΜΑ Γ
Σύμφωνα με το διεθνές σύστημα ονοματολογίας της IUPAC, το όνομα ενός άκυκλου υδρογονάνθρακα CxHy με ευθύγραμμη ανθρακική αλυσίδα αποτελείται από τρία συνθετικά. Το πρώτο συνθετικό (σ1) καθορίζεται από τον αριθμό x των ατόμων άνθρακα, ως εξής: Όταν x=1, η τιμή του σ1 είναι μεθ· όταν x=2, η τιμή του σ1 είναι αιθ· όταν x=3, η τιμή του σ1 είναι προπ· όταν x=4, η τιμή του σ1 είναι βουτ· όταν x=5, η τιμή του σ1 είναι πεντ· όταν x=6, η τιμή του σ1 είναι εξ κ.ο.κ. Το δεύτερο συνθετικό (σ2) εξαρτάται από τον αριθμό x των ατόμων του άνθρακα και από τον αριθμό y των ατόμων υδρογόνου και η τιμή του είναι σ2=άν ή σ2 = έν ή σ2=ίν ή σ2=αδιέν, σύμφωνα με τις συνθήκες που φαίνονται στον Πίνακα II.
Τιμή του σ2 | Συνθήκη |
άν | y=2x+2, x≥1 |
έν | y=2x, x≥2 |
ίν | y=2x-2, x≥2 |
αδιέν | y=2x-2, x≥3 |
Πίνακας ΙΙ
Το τρίτο συνθετικό (σ3) είναι σε κάθε περίπτωση η κατάληξη ιο.
Όπως φαίνεται στον Πίνακα II, όταν x≥3, η τιμή του σ2 είναι ίν ή αδιέν. Ο τρόπος καθορισμού του ορθού ονόματος της ένωσης στην περίπτωση αυτή δεν μας ενδιαφέρει στο πλαίσιο της άσκησης.
Για παράδειγμα, όταν x=3 και y=8, η ένωση είναι το προπ–άν–ιο, ενώ αν x=3 και y=4, η ένωση είναι το προπ–ίν–ιο ή το προπ–αδιέν–ιο.
Να κατασκευάσετε αλγόριθμο ο οποίος:
Γ1. Να ζητάει τον αριθμό ατόμων άνθρακα της χημικής ένωσης, κάνοντας έλεγχο εγκυρότητας ώστε αυτός να είναι θετικός.
Μονάδες 2
Γ2. Να ζητάει τον αριθμό ατόμων υδρογόνου της χημικής ένωσης, κάνοντας έλεγχο εγκυρότητας ώστε να ικανοποιείται τουλάχιστον μία από τις συνθήκες του Πίνακα II.
Μονάδες 6
Γ3. Να εκχωρεί στις μεταβλητές
σ1: το πρώτο συνθετικό του ονόματος της χημικής ένωσης. Θεωρείστε ότι δίνεται πίνακας Π, σε διαδοχικές θέσεις του οποίου βρίσκονται ήδη καταχωρισμένα τα λεκτικά που αντιστοιχούν στον αριθμό των ατόμων του άνθρακα (μονάδες 2) και
σ3: την κατάληξη του ονόματος της χημικής ένωσης (μονάδες 2).
Μονάδες 4
Γ4. Να υπολογίζει το σ2 και να εμφανίζει το όνομα (ή τα ονόματα) της χημικής ένωσης, εμφανίζοντας τα τρία συνθετικά, το ένα δίπλα στο άλλο, χωρισμένα με το χαρακτήρα «–».
Μονάδες 8
ΛΥΣΗ
ΘΕΜΑΓ_2015ΕΠΑΝ_ΗΜΕΡ [δεδομένα]
ΠΡΟΓΡΑΜΜΑ ΘΕΜΑ_Γ_2015_ΕΠΑΝ_ΗΜΕΡ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: x, y , i ΧΑΡΑΚΤΗΡΕΣ: σ1, σ2, σ2β, σ3, Π[10] ΛΟΓΙΚΕΣ: Με_2_Ονόματα ΑΡΧΗ ! Για τις ανάγκες του προγράμματος ΓΙΑ i από 1 μέχρι 10 Διάβασε Π[i] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ! Γ1 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ 'ΔΩΣΤΕ ΑΡΙΘΜΟ ΑΤΟΜΩΝ ΑΝΘΡΑΚΑ (C):' ΔΙΑΒΑΣΕ x ΜΕΧΡΙΣ_ΟΤΟΥ x > 0 ! Γ2 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ 'ΔΩΣΤΕ ΑΡΙΘΜΟ ΑΤΟΜΩΝ ΥΔΡΟΓΟΝΟΥ (H):' ΔΙΑΒΑΣΕ y ΜΕΧΡΙΣ_ΟΤΟΥ (y >= 2*x+2 ΚΑΙ x>=1) Ή (y >= 2*x-2 ΚΑΙ x >= 2) ! Γ3 σ1 <-- Π[x] σ3 <-- 'ιο' ! Γ4 Με_2_Ονόματα <-- ΨΕΥΔΗΣ ΑΝ y = 2*x+2 ΤΟΤΕ σ2 <-- 'άν' ΑΛΛΙΩΣ_ΑΝ y = 2*x ΤΟΤΕ σ2 <-- 'έν' ΑΛΛΙΩΣ_ΑΝ y = 2*x-2 ΤΟΤΕ σ2 <-- 'ίν' ΑΝ x>=3 ΤΟΤΕ Με_2_Ονόματα <-- ΑΛΗΘΗΣ σ2β <-- 'αδιέν' ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΑΝ ΓΡΑΨΕ σ1, '-', σ2, '-', σ3 ΑΝ Με_2_Ονόματα = ΑΛΗΘΗΣ ΤΟΤΕ ΓΡΑΨΕ σ1, '-', σ2β, '-', σ3 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΘΕΜΑ Δ
Μια πολυκατοικία έχει 5 ορόφους, με 8 διαμερίσματα (Δ1, Δ2, …,Δ8) σε κάθε όροφο. Τα διαμερίσματα Δ1 όλων των ορόφων έχουν το ίδιο εμβαδό (Ε1), τα διαμερίσματα Δ2 όλων των ορόφων έχουν το ίδιο εμβαδό (Ε2) κ.ο.κ. Το ποσό των κοινοχρήστων της πολυκατοικίας κατανέμεται στους 5 ορόφους, σύμφωνα με το ποσοστό συμμετοχής του κάθε ορόφου, όπως φαίνεται στον Πίνακα III.
Όροφος | Ποσοστό συμμετοχής |
1ος | 5% |
2ος | 15% |
3ος | 20% |
4ος | 25% |
5ος | 35% |
Πίνακας ΙΙΙ
Το ποσό των κοινοχρήστων του κάθε ορόφου κατανέμεται στα διαμερίσματα του ορόφου αυτού, ανάλογα με το εμβαδό του καθενός διαμερίσματος.
Να γράψετε πρόγραμμα, το οποίο:
Δ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.
Μονάδες 2
Δ2. Να ζητάει:
α. Το συνολικό ποσό κοινοχρήστων της πολυκατοικίας (μονάδα 1).
β. Τα εμβαδά Ε1, Ε2, … Ε8. (μονάδα 1).
Μονάδες 2
Δ3. Να υπολογίζει το ποσό των κοινοχρήστων που αναλογεί σε κάθε όροφο της πολυκατοικίας.
Μονάδες 4
Δ4. Να υπολογίζει το ποσό των κοινοχρήστων που αναλογεί σε κάθε διαμέρισμα της πολυκατοικίας.
Μονάδες 7
Δ5. Να αναζητά και να εμφανίζει τον αριθμό ορόφου (1-5) και τον αριθμό διαμερίσματος (1-8) ενός διαμερίσματος στο οποίο αναλογεί ποσό κοινοχρήστων μεγαλύτερο του μέσου όρου όλης της πολυκατοικίας. Η αναζήτηση να ξεκινά από τον 1ο όροφο και για κάθε όροφο να ξεκινά από το διαμέρισμα Δ8. Η αναζήτηση να τερματίζεται μόλις βρεθεί ένα τέτοιο διαμέρισμα.
Μονάδες 5
ΛΥΣΗ
ΘΕΜΑ_Δ_2015_ΕΠΑΝ_ΗΜΕΡ [δεδομένα] ΠΡΟΓΡΑΜΜΑ ΘΕΜΑ_Δ_2015_ΕΠΑΝ_ΗΜΕΡ ! Δ1 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: i, j ΠΡΑΓΜΑΤΙΚΕΣ: ΚΟΙΝ[5], ΚΟΙΝΟΧΡΗΣΤΑ, ΔΙΑΜ[5,8] , ΕΜΒ[8] , ΕΜΒ_ΟΡ, Sum, ΜΟ ΛΟΓΙΚΕΣ: βρέθηκε ΑΡΧΗ ! Δ2 Εισαγωγή Δεδομένων ΓΡΑΨΕ 'ΔΩΣΕ ΠΟΣΟ ΚΟΙΝΟΧΡΗΣΤΩΝ' ΔΙΑΒΑΣΕ ΚΟΙΝΟΧΡΗΣΤΑ ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 8 ΓΡΑΨΕ 'ΔΩΣΤΕ ΕΜΒΑΔΑ ΔΙΑΜΕΡΙΣΜΑΤΩΝ Ε', j ΔΙΑΒΑΣΕ ΕΜΒ[j] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ! Δ3 ΚΟΙΝ[1] <-- ΚΟΙΝΟΧΡΗΣΤΑ * 5/100 ΚΟΙΝ[2] <-- ΚΟΙΝΟΧΡΗΣΤΑ * 15/100 ΚΟΙΝ[3] <-- ΚΟΙΝΟΧΡΗΣΤΑ * 20/100 ΚΟΙΝ[4] <-- ΚΟΙΝΟΧΡΗΣΤΑ * 25/100 ΚΟΙΝ[5] <-- ΚΟΙΝΟΧΡΗΣΤΑ * 35/100 ! Δ4 ΕΜΒ_ΟΡ <-- 0 ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 8 ΕΜΒ_ΟΡ <-- ΕΜΒ_ΟΡ + ΕΜΒ[j] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 5 ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 8 ΔΙΑΜ[i,j] <-- ΚΟΙΝ[i] * ΕΜΒ[j] / ΕΜΒ_ΟΡ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ! Δ5 ! Υπολογισμός ΜΟ Κοινοχρήστων πολυκατοικίας Sum <-- 0 ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 5 ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 8 Sum <-- Sum + ΔΙΑΜ[i,j] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΜΟ <-- Sum / 40 ΓΡΑΨΕ 'ΔΙΑΜΕΡΙΣΜΑ ΜΕ ΚΟΙΝΟΧΡΗΣΤΑ > ΜΟ' βρέθηκε <-- ΨΕΥΔΗΣ i <-- 1 ΌΣΟ i<=5 ΚΑΙ βρέθηκε = ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ j <-- 8 ΌΣΟ j>=1 ΚΑΙ βρέθηκε = ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ ΑΝ ΔΙΑΜ[i,j] > ΜΟ ΤΟΤΕ ΓΡΑΨΕ 'ΟΡΟΦΟΣ:', i, ' ΔΙΑΜΕΡΙΣΜΑ: ', j βρέθηκε <-- Αληθής ΤΕΛΟΣ_ΑΝ j <-- j-1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ i <-- i + 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ