ΑΕΠΠ Βοήθημα › Λύσεις Επαναληπτικών Πανελληνίων 2026

Λύσεις Επαναληπτικών Πανελληνίων 2026 ΑΕΠΠ

Όλα τα θέματα των Επαναληπτικών Πανελληνίων 2026 στην Ανάπτυξη Εφαρμογών, λυμένα βήμα βήμα, από το ΑΕΠΠ Βοήθημα.

Τα θέματα Επαναληπτικών Πανελληνίων 2026 με πλήρεις λύσεις, δωρεάν. Η λύση κάθε ερώτησης είναι κρυμμένη: προσπάθησε πρώτα μόνος σου και μετά άνοιξέ τη. Τα θέματα όπως δόθηκαν: PDF.

Θέμα Α25 μονάδες

Α1

Σ/Λ10 μονάδες

Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1 έως 5 και δίπλα τη λέξη ΣΩΣΤΟ, αν η πρόταση είναι σωστή ή τη λέξη ΛΑΘΟΣ, αν η πρόταση είναι λανθασμένη.

  1. 1.Στον έλεγχο μαύρου κουτιού, τα σενάρια ελέγχου περιλαμβάνουν και μη έγκυρες τιμές εισόδου.
  2. 2.Η διαδικασία απόκρυψης λεπτομερειών στη γλώσσα του αντικειμενοστραφούς προγραμματισμού αναφέρεται και ως ενθυλάκωση.
  3. 3.Η έκφραση (ΑΛΗΘΗΣ ΚΑΙ Χ>Ψ) είναι πάντα ΑΛΗΘΗΣ.
  4. 4.Αν ένα πρόγραμμα περιέχει μόνο λογικά λάθη και κανένα συντακτικό λάθος, είναι δυνατόν να δημιουργηθεί εκτελέσιμο πρόγραμμα.
  5. 5.Η ρίζα ενός δέντρου δεν μπορεί να είναι φύλλο.
λύση

ΣΩΣΤΟ1. Στον έλεγχο μαύρου κουτιού τα σενάρια ελέγχου καλύπτουν τόσο έγκυρες όσο και μη έγκυρες τιμές εισόδου (καθώς και οριακές τιμές), ώστε να ελεγχθεί αν το πρόγραμμα τις χειρίζεται σωστά.

ΣΩΣΤΟ2. Η απόκρυψη των λεπτομερειών υλοποίησης ενός αντικειμένου (απόκρυψη πληροφορίας) ονομάζεται ενθυλάκωση (encapsulation).

ΛΑΘΟΣ3. Με τον τελεστή ΚΑΙ, η έκφραση ΑΛΗΘΗΣ ΚΑΙ Χ>Ψ έχει την ίδια τιμή με τη Χ>Ψ. Αν Χ<=Ψ, η έκφραση είναι ΨΕΥΔΗΣ.

ΣΩΣΤΟ4. Ο μεταγλωττιστής εντοπίζει μόνο συντακτικά λάθη. Αν δεν υπάρχουν, παράγεται εκτελέσιμο πρόγραμμα. Τα λογικά λάθη φαίνονται μόνο κατά την εκτέλεση, ως λανθασμένα αποτελέσματα.

ΛΑΘΟΣ5. Σε ένα δέντρο που αποτελείται από έναν μόνο κόμβο, η ρίζα δεν έχει παιδιά, άρα είναι ταυτόχρονα και φύλλο.

Α2

Θεωρία8 μονάδες

α) Να αναφέρετε τα πλεονεκτήματα του τμηματικού προγραμματισμού (μονάδες 4).

β) Να αναφέρετε τους τρόπους περιγραφής και αναπαράστασης αλγορίθμου (μονάδες 4).

λύση

α) Πλεονεκτήματα τμηματικού προγραμματισμού

  • Διευκολύνει την ανάπτυξη του αλγορίθμου και του αντίστοιχου προγράμματος.
  • Διευκολύνει την κατανόηση και τη διόρθωση του προγράμματος.
  • Απαιτεί λιγότερο χρόνο και προσπάθεια στη συγγραφή του προγράμματος.
  • Επεκτείνει τις δυνατότητες των γλωσσών προγραμματισμού.

β) Τρόποι περιγραφής και αναπαράστασης αλγορίθμου

  • Ελεύθερο κείμενο
  • Διαγραμματικές τεχνικές, π.χ. διάγραμμα ροής
  • Φυσική γλώσσα κατά βήματα
  • Κωδικοποίηση, με ψευδογλώσσα ή με πρόγραμμα

Α3

Θεωρία3 μονάδες

Δίνονται τα παρακάτω δένδρα:

Τρία δένδρα: 1) ρίζα Μ, παιδιά Θ (Α, Β) και Ρ (δεξί Υ) · 2) ρίζα 7, παιδιά 4 (0 με δεξί 2, 5) και 8 (δεξί 10) · 3) ρίζα Η, παιδιά Ε (Β με αριστερό Α, Θ) και Κ (δεξί Υ)

Να γράψετε στο τετράδιό σας τους αριθμούς 1, 2, 3 και δίπλα τη λέξη ΝΑΙ, αν είναι δυαδικό δένδρο αναζήτησης, ή ΟΧΙ, αν δεν είναι δυαδικό δένδρο αναζήτησης.

λύση
  • 1 → ΟΧΙ: το Β είναι δεξί παιδί του Θ, αλλά Β < Θ (στο δεξί υποδένδρο κάθε κόμβου πρέπει να βρίσκονται μόνο μεγαλύτερες τιμές).
  • 2 → ΝΑΙ: σε κάθε κόμβο, το αριστερό υποδένδρο έχει μικρότερες τιμές και το δεξί μεγαλύτερες (0 < 2 < 4 < 5 < 7 < 8 < 10).
  • 3 → ΟΧΙ: το Θ βρίσκεται στο αριστερό υποδένδρο της ρίζας Η, αλλά Θ > Η.
Σε δυαδικό δένδρο αναζήτησης, η ενδοδιατεταγμένη διάσχιση (αριστερό–ρίζα–δεξί) δίνει τα κλειδιά σε αύξουσα σειρά. Για το δένδρο 1 δίνει Α, Θ, Β, Μ, Ρ, Υ και για το δένδρο 3 δίνει Α, Β, Ε, Θ, Η, Κ, Υ. Και οι δύο ακολουθίες δεν είναι ταξινομημένες.

Α4

Αντιστοίχιση4 μονάδες

Να γράψετε στο τετράδιό σας τους αριθμούς της στήλης Α και δίπλα το γράμμα της στήλης Β που αντιστοιχεί.

Στήλη Α: 1. Κόμβος, 2. Κεφαλή, 3. NULL, 4. Δείκτης (pointer) · Στήλη Β: α. Ο δείκτης του τελευταίου κόμβου της λίστας, β. Περιέχει δεδομένα, γ. Δείχνει τον πρώτο κόμβο της λίστας, δ. Δείχνει τον επόμενο κόμβο της λίστας
λύση
  • 1 (Κόμβος) → β (Περιέχει δεδομένα)
  • 2 (Κεφαλή) → γ (Δείχνει τον πρώτο κόμβο της λίστας)
  • 3 (NULL) → α (Ο δείκτης του τελευταίου κόμβου της λίστας)
  • 4 (Δείκτης) → δ (Δείχνει τον επόμενο κόμβο της λίστας)

Θέμα Β25 μονάδες

Β1

Μετατροπή7 μονάδες

Δίνεται το παρακάτω τμήμα προγράμματος:

S ← 0
i ← 1
ΟΣΟ i <= 20 ΕΠΑΝΑΛΑΒΕ
  i ← i + 2
  S ← S + i
  ΓΡΑΨΕ S
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

Να μετατραπεί σε αντίστοιχο τμήμα προγράμματος χρησιμοποιώντας τη δομή επανάληψης «ΓΙΑ», ώστε να εμφανίζει τις ίδιες τιμές.

λύση
Η i αυξάνεται κατά 2 πριν προστεθεί στο S, οπότε οι τιμές που προστίθενται είναι 3, 5, 7, …, 21. Η τελευταία επανάληψη γίνεται με i = 19 (≤ 20), που γίνεται 21. Συνολικά εκτελούνται 10 επαναλήψεις.
S ← 0
ΓΙΑ i ΑΠΟ 3 ΜΕΧΡΙ 21 ΜΕ_ΒΗΜΑ 2
  S ← S + i
  ΓΡΑΨΕ S
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Εμφανίζονται οι τιμές 3, 8, 15, 24, 35, 48, 63, 80, 99, 120, όπως και στο αρχικό τμήμα.

Β2

Διάγραμμα8 μονάδες

Να μετατρέψετε τον παρακάτω αλγόριθμο από διάγραμμα ροής σε ψευδογλώσσα.

Διάγραμμα ροής: ΑΡΧΗ → ΔΙΑΒΑΣΕ Ν → x ← 1, S ← 0 → x ← x * 2 → S ← S + 2 → x < N; ΝΑΙ: επιστροφή στο x ← x * 2, ΟΧΙ: ΓΡΑΨΕ S → ΤΕΛΟΣ
λύση
Ο έλεγχος γίνεται μετά το σώμα του βρόχου, οπότε το σώμα εκτελείται τουλάχιστον μία φορά. Χρησιμοποιούμε ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ … ΜΕΧΡΙΣ_ΟΤΟΥ με την αντίθετη συνθήκη: ο βρόχος συνεχίζει όσο x < N, άρα τερματίζει όταν x >= N.
ΑΛΓΟΡΙΘΜΟΣ Θέμα_Β2
Διάβασε Ν
x ← 1
S ← 0
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
  x ← x * 2
  S ← S + 2
ΜΕΧΡΙΣ_ΟΤΟΥ x >= Ν
Εμφάνισε S
ΤΕΛΟΣ Θέμα_Β2

Β3

Θεωρία10 μονάδες

Σε μια ουρά 7 θέσεων έχουν τοποθετηθεί διαδοχικά οι αριθμοί: 1, 6, 28, 496, 8128 στην 1η, 2η, 3η, 4η και 5η θέση αντίστοιχα.

  • α) Να προσδιορίσετε τις τιμές των δεικτών REAR και FRONT και να σχεδιάσετε την παραπάνω ουρά (μονάδες 2).
  • β) Να εξάγετε 3 αριθμούς από την ουρά και να τους ωθήσετε σε στοίβα 6 θέσεων με τη σειρά που εξάγονται. Να προσδιορίσετε την τιμή του δείκτη TOP και να σχεδιάσετε την παραπάνω στοίβα (μονάδες 2).
  • γ) Να απωθήσετε 2 αριθμούς από τη στοίβα. Ποια είναι η νέα τιμή του δείκτη TOP; Να σχεδιάσετε την τελική μορφή της στοίβας (μονάδες 3).
  • δ) Ποιες είναι οι τιμές των δεικτών της ουράς; Να σχεδιάσετε την τελική μορφή της (μονάδες 3).
λύση

α) Αρχική ουρά

FRONT = 1, REAR = 5

Θέση1234567
Τιμή16284968128
ΔείκτηςFRONTREAR

β) Εξαγωγή 3 αριθμών και ώθηση στη στοίβα

Από την ουρά εξάγονται με τη σειρά τα 1, 6, 28 (FIFO) και ωθούνται στη στοίβα με την ίδια σειρά. TOP = 3.

ΘέσηΤιμή
6
5
4
328← TOP
26
11

γ) Απώθηση 2 αριθμών

Απωθούνται πρώτα το 28 και μετά το 6 (LIFO). Η νέα τιμή του δείκτη είναι TOP = 1.

ΘέσηΤιμή
6
5
4
3
2
11← TOP

δ) Τελική ουρά

Μετά τις 3 εξαγωγές: FRONT = 4, REAR = 5. Ο REAR δεν αλλάζει, αφού δεν έγινε εισαγωγή.

Θέση1234567
Τιμή4968128
ΔείκτηςFRONTREAR

Θέμα Γ25 μονάδες

Γ1

Προγραμματισμός2 μονάδες

Μια καντίνα διαθέτει τα εξής προϊόντα: σάντουιτς, σουβλάκι, καφέ, νερό. Οι τιμές τους είναι οι εξής: σάντουιτς 5 ευρώ, σουβλάκι 3 ευρώ, καφές 2,50 ευρώ και νερό 0,50 ευρώ.

Ο υπάλληλος της καντίνας καταχωρίζει τις παραγγελίες των πελατών που προσέρχονται σε μία ημέρα, χρησιμοποιώντας το παρακάτω μενού:

  • 1. Σάντουιτς
  • 2. Σουβλάκι
  • 3. Καφές
  • 4. Νερό
  • 5. Ολοκλήρωση παραγγελίας
  • 6. Κλείσιμο καντίνας

Κάθε φορά που ο πελάτης επιλέγει ένα προϊόν, ο υπάλληλος καταχωρίζει τον αντίστοιχο αριθμό του προϊόντος. Το ίδιο προϊόν μπορεί να επιλεγεί περισσότερες από μία φορές στην ίδια παραγγελία και τα προϊόντα μπορούν να καταχωρίζονται με οποιαδήποτε σειρά. Για παράδειγμα, αν ένας πελάτης παραγγείλει 1 σουβλάκι, 2 σάντουιτς και 3 νερά, μια δυνατή σειρά επιλογών είναι: 4-1-2-4-1-4-5. Η επιλογή 5 δηλώνει ότι ολοκληρώθηκε η παραγγελία του συγκεκριμένου πελάτη και αρχίζει η καταχώριση της παραγγελίας του επόμενου πελάτη.

Να θεωρήσετε ότι:

  • Κάθε πελάτης παραγγέλνει τουλάχιστον ένα προϊόν.
  • Η επιλογή 6 δίνεται μετά την ολοκλήρωση όλων των παραγγελιών.
  • Δεν απαιτείται έλεγχος εγκυρότητας.
  • Κατά τη διάρκεια της ημέρας πραγματοποιείται τουλάχιστον μία παραγγελία.

Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ, το οποίο:

Γ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.

λύση
ΠΡΟΓΡΑΜΜΑ ΚΑΝΤΙΝΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΕΠ, ΠΕΛ, ΘΕΣ_ΜΑΧ, ΠΛ_4
  ΠΡΑΓΜΑΤΙΚΕΣ: ΚΟΣΤΟΣ, ΜΑΧ, ΣΥΝΟΛΟ
  ΛΟΓΙΚΕΣ: ΣΑΝ, ΣΟΥ, ΚΑΦ, ΝΕΡ

Γ2

Προγραμματισμός6 μονάδες

Γ2. Να εμφανίζει επαναληπτικά το παραπάνω μενού και να καταχωρίζει τις παραγγελίες των πελατών. Με την επιλογή 5, να υπολογίζει και να εμφανίζει το κόστος της παραγγελίας (που πρέπει να πληρώσει ο συγκεκριμένος πελάτης). Η λειτουργία της καντίνας τερματίζεται όταν δοθεί η επιλογή 6.

λύση
Οι λογικές μεταβλητές ΣΑΝ, ΣΟΥ, ΚΑΦ, ΝΕΡ καταγράφουν αν το κάθε είδος υπάρχει στην τρέχουσα παραγγελία (χρειάζονται στο Γ5). Με την επιλογή 5 εμφανίζεται το κόστος και όλα μηδενίζονται για τον επόμενο πελάτη.
ΑΡΧΗ
  ΠΕΛ ← 1
  ΚΟΣΤΟΣ ← 0
  ΣΑΝ ← ΨΕΥΔΗΣ
  ΣΟΥ ← ΨΕΥΔΗΣ
  ΚΑΦ ← ΨΕΥΔΗΣ
  ΝΕΡ ← ΨΕΥΔΗΣ
  ! αρχικοποιήσεις Γ3, Γ4, Γ5
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ '1. Σάντουιτς'
    ΓΡΑΨΕ '2. Σουβλάκι'
    ΓΡΑΨΕ '3. Καφές'
    ΓΡΑΨΕ '4. Νερό'
    ΓΡΑΨΕ '5. Ολοκλήρωση παραγγελίας'
    ΓΡΑΨΕ '6. Κλείσιμο καντίνας'
    ΔΙΑΒΑΣΕ ΕΠ
    ΑΝ ΕΠ = 1 ΤΟΤΕ
      ΚΟΣΤΟΣ ← ΚΟΣΤΟΣ + 5
      ΣΑΝ ← ΑΛΗΘΗΣ
    ΑΛΛΙΩΣ_ΑΝ ΕΠ = 2 ΤΟΤΕ
      ΚΟΣΤΟΣ ← ΚΟΣΤΟΣ + 3
      ΣΟΥ ← ΑΛΗΘΗΣ
    ΑΛΛΙΩΣ_ΑΝ ΕΠ = 3 ΤΟΤΕ
      ΚΟΣΤΟΣ ← ΚΟΣΤΟΣ + 2.5
      ΚΑΦ ← ΑΛΗΘΗΣ
    ΑΛΛΙΩΣ_ΑΝ ΕΠ = 4 ΤΟΤΕ
      ΚΟΣΤΟΣ ← ΚΟΣΤΟΣ + 0.5
      ΝΕΡ ← ΑΛΗΘΗΣ
    ΑΛΛΙΩΣ_ΑΝ ΕΠ = 5 ΤΟΤΕ
      ΓΡΑΨΕ 'Κόστος παραγγελίας: ', ΚΟΣΤΟΣ
      ! ενημερώσεις Γ3, Γ4, Γ5
      ΠΕΛ ← ΠΕΛ + 1
      ΚΟΣΤΟΣ ← 0
      ΣΑΝ ← ΨΕΥΔΗΣ
      ΣΟΥ ← ΨΕΥΔΗΣ
      ΚΑΦ ← ΨΕΥΔΗΣ
      ΝΕΡ ← ΨΕΥΔΗΣ
    ΤΕΛΟΣ_ΑΝ
  ΜΕΧΡΙΣ_ΟΤΟΥ ΕΠ = 6

Γ3

Προγραμματισμός6 μονάδες

Γ3. Να υπολογίζει και να εμφανίζει το μεγαλύτερο κόστος παραγγελίας που πραγματοποιήθηκε κατά τη διάρκεια της ημέρας, καθώς και τον αύξοντα αριθμό του πελάτη που πραγματοποίησε την παραγγελία αυτή. Να θεωρήσετε ότι η παραγγελία με το μεγαλύτερο κόστος είναι μοναδική.

λύση
Πριν από τον βρόχο (κάθε παραγγελία κοστίζει τουλάχιστον 0,50 €, άρα η αρχική τιμή 0 θα αντικατασταθεί σίγουρα από την πρώτη παραγγελία):
  ΜΑΧ ← 0
  ΘΕΣ_ΜΑΧ ← 0
Στον κλάδο ΕΠ = 5, πριν από τον μηδενισμό για τον επόμενο πελάτη:
      ΑΝ ΚΟΣΤΟΣ > ΜΑΧ ΤΟΤΕ
        ΜΑΧ ← ΚΟΣΤΟΣ
        ΘΕΣ_ΜΑΧ ← ΠΕΛ
      ΤΕΛΟΣ_ΑΝ
Μετά από τον βρόχο:
  ΓΡΑΨΕ 'Μεγαλύτερο κόστος παραγγελίας: ', ΜΑΧ, ' από τον πελάτη ', ΘΕΣ_ΜΑΧ

Γ4

Προγραμματισμός5 μονάδες

Γ4. Να εμφανίζει τις συνολικές εισπράξεις της ημέρας.

λύση
Πριν από τον βρόχο:
  ΣΥΝΟΛΟ ← 0
Στον κλάδο ΕΠ = 5:
      ΣΥΝΟΛΟ ← ΣΥΝΟΛΟ + ΚΟΣΤΟΣ
Μετά από τον βρόχο:
  ΓΡΑΨΕ 'Συνολικές εισπράξεις ημέρας: ', ΣΥΝΟΛΟ

Γ5

Προγραμματισμός6 μονάδες

Γ5. Να εμφανίζει το πλήθος των παραγγελιών οι οποίες περιείχαν και τα 4 είδη.

λύση
Πριν από τον βρόχο:
  ΠΛ_4 ← 0
Στον κλάδο ΕΠ = 5, πριν από τον μηδενισμό των σημαιών:
      ΑΝ ΣΑΝ = ΑΛΗΘΗΣ ΚΑΙ ΣΟΥ = ΑΛΗΘΗΣ ΚΑΙ ΚΑΦ = ΑΛΗΘΗΣ ΚΑΙ ΝΕΡ = ΑΛΗΘΗΣ ΤΟΤΕ
        ΠΛ_4 ← ΠΛ_4 + 1
      ΤΕΛΟΣ_ΑΝ
Μετά από τον βρόχο:
  ΓΡΑΨΕ 'Παραγγελίες με και τα 4 είδη: ', ΠΛ_4

Πλήρες πρόγραμμα

ΠΡΟΓΡΑΜΜΑ ΚΑΝΤΙΝΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΕΠ, ΠΕΛ, ΘΕΣ_ΜΑΧ, ΠΛ_4
  ΠΡΑΓΜΑΤΙΚΕΣ: ΚΟΣΤΟΣ, ΜΑΧ, ΣΥΝΟΛΟ
  ΛΟΓΙΚΕΣ: ΣΑΝ, ΣΟΥ, ΚΑΦ, ΝΕΡ
ΑΡΧΗ
  ΠΕΛ ← 1
  ΚΟΣΤΟΣ ← 0
  ΣΑΝ ← ΨΕΥΔΗΣ
  ΣΟΥ ← ΨΕΥΔΗΣ
  ΚΑΦ ← ΨΕΥΔΗΣ
  ΝΕΡ ← ΨΕΥΔΗΣ
  ΜΑΧ ← 0
  ΘΕΣ_ΜΑΧ ← 0
  ΣΥΝΟΛΟ ← 0
  ΠΛ_4 ← 0
  ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ '1. Σάντουιτς'
    ΓΡΑΨΕ '2. Σουβλάκι'
    ΓΡΑΨΕ '3. Καφές'
    ΓΡΑΨΕ '4. Νερό'
    ΓΡΑΨΕ '5. Ολοκλήρωση παραγγελίας'
    ΓΡΑΨΕ '6. Κλείσιμο καντίνας'
    ΔΙΑΒΑΣΕ ΕΠ
    ΑΝ ΕΠ = 1 ΤΟΤΕ
      ΚΟΣΤΟΣ ← ΚΟΣΤΟΣ + 5
      ΣΑΝ ← ΑΛΗΘΗΣ
    ΑΛΛΙΩΣ_ΑΝ ΕΠ = 2 ΤΟΤΕ
      ΚΟΣΤΟΣ ← ΚΟΣΤΟΣ + 3
      ΣΟΥ ← ΑΛΗΘΗΣ
    ΑΛΛΙΩΣ_ΑΝ ΕΠ = 3 ΤΟΤΕ
      ΚΟΣΤΟΣ ← ΚΟΣΤΟΣ + 2.5
      ΚΑΦ ← ΑΛΗΘΗΣ
    ΑΛΛΙΩΣ_ΑΝ ΕΠ = 4 ΤΟΤΕ
      ΚΟΣΤΟΣ ← ΚΟΣΤΟΣ + 0.5
      ΝΕΡ ← ΑΛΗΘΗΣ
    ΑΛΛΙΩΣ_ΑΝ ΕΠ = 5 ΤΟΤΕ
      ΓΡΑΨΕ 'Κόστος παραγγελίας: ', ΚΟΣΤΟΣ
      ΑΝ ΚΟΣΤΟΣ > ΜΑΧ ΤΟΤΕ
        ΜΑΧ ← ΚΟΣΤΟΣ
        ΘΕΣ_ΜΑΧ ← ΠΕΛ
      ΤΕΛΟΣ_ΑΝ
      ΣΥΝΟΛΟ ← ΣΥΝΟΛΟ + ΚΟΣΤΟΣ
      ΑΝ ΣΑΝ = ΑΛΗΘΗΣ ΚΑΙ ΣΟΥ = ΑΛΗΘΗΣ ΚΑΙ ΚΑΦ = ΑΛΗΘΗΣ ΚΑΙ ΝΕΡ = ΑΛΗΘΗΣ ΤΟΤΕ
        ΠΛ_4 ← ΠΛ_4 + 1
      ΤΕΛΟΣ_ΑΝ
      ΠΕΛ ← ΠΕΛ + 1
      ΚΟΣΤΟΣ ← 0
      ΣΑΝ ← ΨΕΥΔΗΣ
      ΣΟΥ ← ΨΕΥΔΗΣ
      ΚΑΦ ← ΨΕΥΔΗΣ
      ΝΕΡ ← ΨΕΥΔΗΣ
    ΤΕΛΟΣ_ΑΝ
  ΜΕΧΡΙΣ_ΟΤΟΥ ΕΠ = 6
  ΓΡΑΨΕ 'Μεγαλύτερο κόστος παραγγελίας: ', ΜΑΧ, ' από τον πελάτη ', ΘΕΣ_ΜΑΧ
  ΓΡΑΨΕ 'Συνολικές εισπράξεις ημέρας: ', ΣΥΝΟΛΟ
  ΓΡΑΨΕ 'Παραγγελίες με και τα 4 είδη: ', ΠΛ_4
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Θέμα Δ25 μονάδες

Δ1

Προγραμματισμός6 μονάδες

Στον τελικό ενός διεθνούς τουρνουά στο αγώνισμα του άλματος εις μήκος γυναικών, συμμετείχαν 8 αθλήτριες. Κάθε αθλήτρια έκανε 6 άλματα. Η τελική κατάταξη βασίζεται στην καλύτερη έγκυρη επίδοση.

Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο:

Δ1. α) Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων (μονάδες 2). β) Για κάθε αθλήτρια του τελικού: Να διαβάζει το όνομά της και τη χώρα προέλευσής της και να τα αποθηκεύει σε πίνακες ΟΝ[8], ΧΩΡ[8] (μονάδες 2). Να διαβάζει τις επιδόσεις της (σε m) και να τις αποθηκεύει σε πίνακα ΕΠ[8,6]. Σε περίπτωση που ένα άλμα είναι άκυρο τότε ως επίδοση να καταχωρίζεται το -1. Δεν απαιτείται έλεγχος εγκυρότητας (μονάδες 2).

λύση
ΠΡΟΓΡΑΜΜΑ ΑΛΜΑ_ΕΙΣ_ΜΗΚΟΣ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: i, j, ΘΕΣ
  ΠΡΑΓΜΑΤΙΚΕΣ: ΕΠ[8,6], ΜΑΧ
  ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[8], ΧΩΡ[8]
  ΛΟΓΙΚΕΣ: ΒΡ
ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8
    ΓΡΑΨΕ 'Όνομα και χώρα αθλήτριας ', i
    ΔΙΑΒΑΣΕ ΟΝ[i], ΧΩΡ[i]
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 6
      ΓΡΑΨΕ 'Επίδοση ', j, ' (-1 για άκυρο άλμα)'
      ΔΙΑΒΑΣΕ ΕΠ[i,j]
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

Δ2

Προγραμματισμός4 μονάδες

Δ2. α) Για κάθε αθλήτρια να εμφανίζει το όνομά της και το πλήθος των άκυρων αλμάτων της (μονάδες 2). β) Ο υπολογισμός των άκυρων αλμάτων γίνεται από κατάλληλο υποπρόγραμμα που περιγράφεται στο ερώτημα Δ5 (μονάδες 2).

λύση
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8
    ΓΡΑΨΕ ΟΝ[i], ': ', ΑΚΥΡΑ(ΕΠ, i), ' άκυρα άλματα'
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

Δ3

Προγραμματισμός4 μονάδες

Δ3. Να ελέγχει εάν υπάρχει αθλήτρια χωρίς έγκυρο άλμα και να εμφανίζει κατάλληλο μήνυμα σε κάθε περίπτωση.

λύση
Μια αθλήτρια δεν έχει έγκυρο άλμα όταν και τα 6 άλματά της είναι άκυρα, δηλαδή ΑΚΥΡΑ(ΕΠ, i) = 6. Η αναζήτηση σταματά μόλις βρεθεί τέτοια αθλήτρια.
  ΒΡ ← ΨΕΥΔΗΣ
  i ← 1
  ΟΣΟ i <= 8 ΚΑΙ ΒΡ = ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ
    ΑΝ ΑΚΥΡΑ(ΕΠ, i) = 6 ΤΟΤΕ
      ΒΡ ← ΑΛΗΘΗΣ
    ΤΕΛΟΣ_ΑΝ
    i ← i + 1
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΑΝ ΒΡ = ΑΛΗΘΗΣ ΤΟΤΕ
    ΓΡΑΨΕ 'Υπάρχει αθλήτρια χωρίς έγκυρο άλμα'
  ΑΛΛΙΩΣ
    ΓΡΑΨΕ 'Όλες οι αθλήτριες έχουν τουλάχιστον ένα έγκυρο άλμα'
  ΤΕΛΟΣ_ΑΝ

Δ4

Προγραμματισμός6 μονάδες

Δ4. Να εμφανίζει το όνομα και τη χώρα προέλευσης της αθλήτριας που θα πάρει το χρυσό μετάλλιο (1η θέση). Να θεωρήσετε ότι είναι μοναδική.

λύση
Η 1η θέση ανήκει στην αθλήτρια με τη μεγαλύτερη έγκυρη επίδοση σε όλο τον πίνακα. Τα άκυρα άλματα (-1) δεν επηρεάζουν το μέγιστο, γιατί κάθε έγκυρη επίδοση είναι θετική. Κρατάμε τη γραμμή (ΘΕΣ) του μεγίστου.
  ΜΑΧ ← ΕΠ[1,1]
  ΘΕΣ ← 1
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 6
      ΑΝ ΕΠ[i,j] > ΜΑΧ ΤΟΤΕ
        ΜΑΧ ← ΕΠ[i,j]
        ΘΕΣ ← i
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ 'Χρυσό μετάλλιο: ', ΟΝ[ΘΕΣ], ' (', ΧΩΡ[ΘΕΣ], ')'

Δ5

Προγραμματισμός5 μονάδες

Δ5. Να γράψετε κατάλληλο υποπρόγραμμα το οποίο θα δέχεται: - τον πίνακα των επιδόσεων - τον αριθμό γραμμής και θα επιστρέφει το πλήθος των άκυρων αλμάτων της αθλήτριας.

λύση
Το υποπρόγραμμα επιστρέφει μία τιμή, άρα είναι συνάρτηση (ακέραιου τύπου).
ΣΥΝΑΡΤΗΣΗ ΑΚΥΡΑ(ΕΠ, Γ): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Γ, j, ΠΛ
  ΠΡΑΓΜΑΤΙΚΕΣ: ΕΠ[8,6]
ΑΡΧΗ
  ΠΛ ← 0
  ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 6
    ΑΝ ΕΠ[Γ,j] = -1 ΤΟΤΕ
      ΠΛ ← ΠΛ + 1
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΑΚΥΡΑ ← ΠΛ
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Πλήρες πρόγραμμα

ΠΡΟΓΡΑΜΜΑ ΑΛΜΑ_ΕΙΣ_ΜΗΚΟΣ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: i, j, ΘΕΣ
  ΠΡΑΓΜΑΤΙΚΕΣ: ΕΠ[8,6], ΜΑΧ
  ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[8], ΧΩΡ[8]
  ΛΟΓΙΚΕΣ: ΒΡ
ΑΡΧΗ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8
    ΓΡΑΨΕ 'Όνομα και χώρα αθλήτριας ', i
    ΔΙΑΒΑΣΕ ΟΝ[i], ΧΩΡ[i]
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 6
      ΓΡΑΨΕ 'Επίδοση ', j, ' (-1 για άκυρο άλμα)'
      ΔΙΑΒΑΣΕ ΕΠ[i,j]
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8
    ΓΡΑΨΕ ΟΝ[i], ': ', ΑΚΥΡΑ(ΕΠ, i), ' άκυρα άλματα'
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΒΡ ← ΨΕΥΔΗΣ
  i ← 1
  ΟΣΟ i <= 8 ΚΑΙ ΒΡ = ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ
    ΑΝ ΑΚΥΡΑ(ΕΠ, i) = 6 ΤΟΤΕ
      ΒΡ ← ΑΛΗΘΗΣ
    ΤΕΛΟΣ_ΑΝ
    i ← i + 1
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΑΝ ΒΡ = ΑΛΗΘΗΣ ΤΟΤΕ
    ΓΡΑΨΕ 'Υπάρχει αθλήτρια χωρίς έγκυρο άλμα'
  ΑΛΛΙΩΣ
    ΓΡΑΨΕ 'Όλες οι αθλήτριες έχουν τουλάχιστον ένα έγκυρο άλμα'
  ΤΕΛΟΣ_ΑΝ
  ΜΑΧ ← ΕΠ[1,1]
  ΘΕΣ ← 1
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 8
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 6
      ΑΝ ΕΠ[i,j] > ΜΑΧ ΤΟΤΕ
        ΜΑΧ ← ΕΠ[i,j]
        ΘΕΣ ← i
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΡΑΨΕ 'Χρυσό μετάλλιο: ', ΟΝ[ΘΕΣ], ' (', ΧΩΡ[ΘΕΣ], ')'
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΣΥΝΑΡΤΗΣΗ ΑΚΥΡΑ(ΕΠ, Γ): ΑΚΕΡΑΙΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Γ, j, ΠΛ
  ΠΡΑΓΜΑΤΙΚΕΣ: ΕΠ[8,6]
ΑΡΧΗ
  ΠΛ ← 0
  ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 6
    ΑΝ ΕΠ[Γ,j] = -1 ΤΟΤΕ
      ΠΛ ← ΠΛ + 1
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΑΚΥΡΑ ← ΠΛ
ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

Όλη η ύλη και όλα τα θέματα στο κινητό σου

Στην εφαρμογή ΑΕΠΠ Βοήθημα: θεωρία όλων των κεφαλαίων σε ερωτήσεις-απαντήσεις, λυμένα όλα τα θέματα Πανελληνίων από το 2010, ιστορίες, κουίζ και τελική εξέταση. Με τη συνδρομή τα διαβάζεις και στον υπολογιστή.