Λύσεις Πανελλήνιων Εξετάσεων Γ' τάξης
Ημερήσιου Γενικού Λυκείου 2012
ΘΕΜΑ Α
Α1.
1. ΛΑΘΟΣ
2. ΛΑΘΟΣ
3. ΣΩΣΤΟ
4. ΛΑΘΟΣ
5. ΣΩΣΤΟ
Α2.
Εντολή εκχώρησης Τύπος μεταβλητής Χ Περιεχόμενο
μεταβλητής Χ
Χ <-- 'ΑΛΗΘΗΣ' ΧΑΡΑΚΤΗΡΕΣ 'ΑΛΗΘΗΣ'
Χ <-- 11.0-13.0 ΠΡΑΓΜΑΤΙΚΕΣ -2.0
Χ <-- 7 > 4 ΛΟΓΙΚΕΣ ΑΛΗΘΗΣ
Χ <-- ΨΕΥΔΗΣ ΛΟΓΙΚΕΣ ΨΕΥΔΗΣ
Χ <-- 4 ΑΚΕΡΑΙΕΣ 4
Α3.
α.
Α[3] <-- 3+Α[6]
Α[9] <-- Α[7] - 2
Α[8] <-- Α[3] - 5
Α[4] <-- 5 + Α[9]
Α[5] <-- (Α[3]+Α[7]) div 2
β.
Για i
από 1
μέχρι 5
αντιμετάθεσε Α[i], A[11-i]
Τέλος_επανάληψης
A4.
α.
i <-- 99
Όσο i >= 1
επανάλαβε
x <-- i^2
εμφάνισε x
i <-- i-2
Τέλος_επανάληψης
β.
i <-- 99
Αρχή_επανάληψης
x <-- i^2
εμφάνισε x
i <-- i-2
Μέχρις_ότου i < 1
γ.
Οι δύο κύριες λειτουργίες σε μια στοίβα δεδομένων είναι:
*
Ώθηση : εισαγωγή ενός νέου στοιχείο στην κορυφή της
στοίβας. Θα πρέπει να ελέγχεται αν η στοίβα είναι γεμάτη
πριν από κάθε ώθηση (ώθηση σε γεμάτη στοίβα προκαλεί
υπερχείλιση)
*
Απώθηση : εξαγωγή ενός στοιχείου από την κορυφή της
στοίβας. Θα πρέπει να ελέγχεται αν η στοίβα είναι άδεια
πριν από κάθε απώθηση (απώθηση σε άδεια στοίβα προκαλεί
υποχείλιση).
ΘΕΜΑ Β
Β1.
Κ = 1
Χ = -1
i = 0
Αφού Χ < 7 = -1 < 7 = ΑΛΗΘΗΣ, η Όσο εκτελείται
τουλάχιστον μια φορά.
1η επανάληψη
i = i+1 = 0+1 = 1
K = K*X = 1*(-1) = -1
H
Εμφάνισε τυπώνει:
-1 -1
Αφού i
mod 2 = 1
mod 2 = 1 έχουμε:
X = X+2 = -1+2 = 1
Επειδή Χ < 7 = 1 < 7 = Αληθής, η
Όσο συνεχίζεται.
2η επανάληψη
i = i+1 = 1+1 = 2
K = K*X = -1*1 = -1
H
Εμφάνισε τυπώνει:
-1 1
Αφού i
mod 2 = 2
mod 2 = 0 έχουμε:
X = X+1 = 1+1 = 2
Επειδή Χ < 7 = 2 < 7 = Αληθής, η
Όσο συνεχίζεται.
3
η επανάληψη
i = i+1 = 2+1 = 3
K = K*X = -1*2 = -2
H
Εμφάνισε τυπώνει:
-2 2
Αφού i
mod 2 = 3
mod 2 = 1 έχουμε:
X = X+2 = 2+2 = 4
Επειδή Χ < 7 = 4 < 7 = Αληθής, η
Όσο συνεχίζεται.
4η επανάληψη
i = i+1 = 3+1 = 4
K = K*X = -2*4 = -8
H
Εμφάνισε τυπώνει:
-8 4
Αφού i
mod 2 = 4
mod 2 = 0 έχουμε:
X = X+1 = 4+1 = 5
Επειδή Χ < 7 = 5 < 7 = Αληθής, η
Όσο συνεχίζεται.
5η επανάληψη
i = i+1 = 4+1 = 5
K = K*X = -8*5 = -40
H
Εμφάνισε τυπώνει:
-40 5
Αφού i
mod 2 = 5
mod 2 = 1 έχουμε:
X = X+2 = 5+2 = 7
Επειδή Χ < 7 = 7 < 7 = Ψευδής, η
Όσο τερματίζεται.
Β2.
ν <-- 0
s <-- 0
Αρχή_επανάληψης
Αν ν
mod 2 = 1
τότε
x <-- -1
αλλιώς
x <-- 1
Τέλος_αν
s <-- s+x/(2*ν+1)
ν <-- ν+1
Μέχρις_ότου ν = 99
π <-- 4*s
Εκτύπωσε π
ΘΕΜΑ Γ
Αλγόριθμος ΘΓ
Αρχή_επανάληψης
Διάβασε ΠΟΣΟ
Μέχρις_ότου ΠΟΣΟ > 5000000
Διαθ <-- ΠΟΣΟ
Μικρά <-- 0
Μεγάλα <-- 0
ΕπιδΜικρών <-- 0
ΕπιδΜεγάλων <-- 0
ΣΤΑΜΑΤΑ <-- ΨΕΥΔΗΣ
Όσο ΣΤΑΜΑΤΑ = ΨΕΥΔΗΣ
επανάλαβε
Διάβασε ΟΝΟΜΑ
Αν ΟΝΟΜΑ < > 'ΤΕΛΟΣ'
τότε
Διάβασε Προ
Αν (Προ >= 200000)
ΚΑΙ (Προ <= 299999)
τότε
Επιδ <-- Προ*60/100
Κατ <-- 1
αλλιώς
Επιδ <-- Προ*70/100
Κατ <-- 2
Τέλος_αν
Αν Διαθ >= Επιδ
τότε
Διαθ <-- Διαθ-Επιδ
Εμφάνισε ΟΝΟΜΑ, Επιδ
Αν Κατ = 1
τότε
Μικρά <-- Μικρά+1
ΕπιδΜικρών <-- ΕπιδΜικρών+Επιδ
αλλιώς
Μεγάλα <-- Μεγάλα+1
ΕπιδΜεγάλων <-- ΕπιδΜεγάλων+Επιδ
Τέλος_αν
αλλιώς
Αν Κατ = 1
τότε
ΣΤΑΜΑΤΑ <-- ΑΛΗΘΗΣ
Τέλος_αν
Τέλος_αν
αλλιώς
ΣΤΑΜΑΤΑ <-- ΑΛΗΘΗΣ
Τέλος_αν
Τέλος_επανάληψης
Σύνολο <-- Μικρά+Μεγάλα
Αν Σύνολο > 0
τότε
Εμφάνισε Μικρά, ΕπιδΜικρών
Εμφάνισε Μεγάλα, ΕπιδΜεγάλων
Αν Διαθ > 0
τότε
Εμφάνισε Διαθ
Τέλος_αν
αλλιώς
Εμφάνισε 'Δε δόθηκαν καθόλου δεδομένα!'
Τέλος_αν
Τέλος ΘΓ
Παρατηρήσεις
1. Η
Όσο θα μπορούσε να δομηθεί και ως εξής :
.....
Όσο ΣΤΑΜΑΤΑ = ΨΕΥΔΗΣ
επανάλαβε
Διάβασε ΟΝΟΜΑ
Αν ΟΝΟΜΑ < > 'ΤΕΛΟΣ'
τότε
...
Αν Διαθ >= Επιδ
τότε
....
Τέλος_αν
Αν Διαθ < 120000
τότε ! 120000 = 200000*0.6
ΣΤΑΜΑΤΑ <-- Αληθής
Τέλος_αν
αλλιώς
ΣΤΑΜΑΤΑ <-- ΑΛΗΘΗΣ
Τέλος_αν
Τέλος_επανάληψης
....
2. Θα μπορούσε να χρησιμοποιηθεί και
Μέχρις_ότου:
....
Αρχή_επανάληψης
Διάβασε ΟΝΟΜΑ
Αν ΟΝΟΜΑ < > 'ΤΕΛΟΣ'
τότε
.....
Τέλος_αν
Μέχρις_ότου (ΟΝΟΜΑ = 'ΤΕΛΟΣ')
Ή (Διαθ < 120000)
....
ΘΕΜΑ Δ
ΠΡΟΓΡΑΜΜΑ ΘΔ
ΜΕΤΑΒΛΗΤΕΣ
ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[10, 2]
ΑΚΕΡΑΙΕΣ: Μ, Λ, ΘΜΑΧ, ΑΑΜήνα
ΠΡΑΓΜΑΤΙΚΕΣ: Π[10, 12], Κ[10, 12], Σ1, Σ2, ΜΑΧ,
ΕτΠαρ[10], ΕτΚατ[10], Έσοδα[10], ΜΙΝ
ΑΡΧΗ
ΓΙΑ Μ
ΑΠΟ 1
ΜΕΧΡΙ 10
ΓΙΑ Λ
ΑΠΟ 1
ΜΕΧΡΙ 2
ΔΙΑΒΑΣΕ ΟΝ[Μ, Λ]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΙΑ Μ
ΑΠΟ 1
ΜΕΧΡΙ 10
ΓΙΑ Λ
ΑΠΟ 1
ΜΕΧΡΙ 12
ΔΙΑΒΑΣΕ Π[Μ, Λ]
ΔΙΑΒΑΣΕ Κ[Μ, Λ]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΙΑ Μ
ΑΠΟ 1
ΜΕΧΡΙ 10
Σ1 <-- 0
Σ2 <-- 0
ΓΙΑ Λ
ΑΠΟ 1
ΜΕΧΡΙ 12
Σ1 <-- Σ1+Π[Μ, Λ]
Σ2 <-- Σ2+Κ[Μ, Λ]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΕτΠαρ[Μ] <-- Σ1
ΕτΚατ[Μ] <-- Σ2
Έσοδα[Μ] <-- (Σ1-Σ2)*0.55
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΜΑΧ <-- ΕτΠαρ[1]
ΘΜΑΧ <-- 1
ΓΙΑ Μ
ΑΠΟ 2
ΜΕΧΡΙ 10
ΑΝ ΕτΠαρ[Μ] > ΜΑΧ
ΤΟΤΕ
ΜΑΧ <-- ΕτΠαρ[Μ]
ΘΜΑΧ <-- Μ
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ ΟΝ[ΘΜΑΧ, 2]
ΚΑΛΕΣΕ Λίστα_Εσόδων(Έσοδα)
ΜΙΝ <-- Π[1, 1]
ΑΑΜήνα <-- 1
ΓΙΑ Μ
ΑΠΟ 1
ΜΕΧΡΙ 10
ΓΙΑ Λ
ΑΠΟ 1
ΜΕΧΡΙ 12
ΑΝ Π[Μ, Λ] < ΜΙΝ
ΤΟΤΕ
ΜΙΝ <-- Π[Μ, Λ]
ΑΑΜήνα <-- Λ
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ ΑΑΜήνα
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ Λίστα_Εσόδων(Έσοδα)
ΜΕΤΑΒΛΗΤΕΣ
ΠΡΑΓΜΑΤΙΚΕΣ: Έσοδα[10], κ, λ, Βοηθ
ΑΡΧΗ
ΓΙΑ κ
ΑΠΟ 2
ΜΕΧΡΙ 10
ΓΙΑ λ
ΑΠΟ 10
ΜΕΧΡΙ κ
ΜΕ_ΒΗΜΑ -1
ΑΝ Έσοδα[λ-1] < Έσοδα[λ]
ΤΟΤΕ
Βοηθ <-- Έσοδα[λ-1]
Έσοδα[λ-1] <-- Έσοδα[λ]
Έσοδα[λ] <-- Βοηθ
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΙΑ κ
ΑΠΟ 1
ΜΕΧΡΙ 10
ΓΡΑΨΕ Έσοδα[κ]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
Παρατήρηση
Στο ερώτημα
Δ5, μπορεί να δοθεί μια τελείως διαφορετική
λύση, αν θεωρήσουμε ότι ζητείται ο αριθμός του μήνα
με τη μικρότερη
συνολική παραγωγή ηλεκτρικής ενέργειας
από όλους τους πελάτες. Σε αυτή την περίπτωση, θα πρέπει
να γράψουμε τα ακόλουθα:
ΓΙΑ Λ
ΑΠΟ 1
ΜΕΧΡΙ 12
Σ <-- 0
ΓΙΑ Μ
ΑΠΟ 1
ΜΕΧΡΙ 10
Σ <-- Σ+Π[Μ, Λ]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΣΜΗΝ[Λ] <-- Σ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Μικ <-- ΣΜΗΝ[1]
ΑΑΜήνα <-- 1
ΓΙΑ Μ
ΑΠΟ 2
ΜΕΧΡΙ 10
ΑΝ ΣΜΗΝ[Μ] < Μικ
ΤΟΤΕ
Μικ <-- ΣΜΗΝ[Μ]
ΑΑμήνα <-- Μ
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ ΑΑΜήνα