Όλα τα διαγωνίσματα
Προσομοίωση Πανελλαδικών Δυσκολία: Απαιτητικό

Ολόκληρη η εξεταστέα ύλη

Προγραμματισμός Υπολογιστών (ΕΠΑ.Λ.) · φτιάχτηκε 2 Αυγ 2026, 16:18 · κωδικός 20260802-20d862

180:00
180 λεπτά 100 μονάδες Κεφάλαια 1, 2, 3, 4, 5, 6, 7 Python 2.7
PDF θεμάτων PDF λύσεων

ΘΕΜΑ Α

Α1

Μονάδες 15

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

  • α.Η λειτουργία της στοίβας είναι γνωστή στη βιβλιογραφία ως FIFO (First In First Out).
  • β.Η τιμή της λογικής έκφρασης x < 1 and x > 20 είναι πάντα False ανεξάρτητα από την τιμή της ακέραιας μεταβλητής x.
  • γ.Η δομή while χρησιμοποιείται για μη προκαθορισμένο αριθμό επαναλήψεων.
  • δ.Ένα αντικείμενο δημιουργείται από μία ειδική μέθοδο που ονομάζεται αποδομητής (destructor).
  • ε.Οι μεταβλητές που μπορούν να χρησιμοποιηθούν σε οποιοδήποτε τμήμα ενός προγράμματος, ανεξάρτητα από το πού δηλώθηκαν, χαρακτηρίζονται ως καθολικές.

Α2

Μονάδες 10

Να γράψετε στο τετράδιό σας τους αριθμούς 1, 2, 3, 4, 5 από τη στήλη Α και δίπλα σε καθέναν από αυτούς ένα από τα γράμματα α, β, γ, δ, ε, στ της στήλης Β, που δίνει τη σωστή αντιστοίχιση. Σημειώνεται ότι ένα γράμμα της στήλης Β περισσεύει.

ΣΤΗΛΗ ΑΣΤΗΛΗ Β
1. abs(8-29)α. (3, 5)
2. min([29, 8, 6])β. 21
3. "ΑΘΗΝΑ"[1:4]γ. 6
4. 29/8δ. "ΘΗΝ"
5. divmod(29,8)ε. 5
στ. 3

ΘΕΜΑ Β

Β1

Μονάδες 10

Η παρακάτω συνάρτηση δέχεται μια λίστα αριθμών (times) και επιστρέφει τον μεγαλύτερο από αυτούς.

def megisto(times):
    megalytero =   (1)  
    for i in range(1,   (2)  ):
        if times[i]   (3)   megalytero:
            megalytero =   (4)  
    return   (5)  

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

Β2

Μονάδες 10

Δίνεται το παρακάτω τμήμα προγράμματος σε γλώσσα προγραμματισμού Python. Να γράψετε στο τετράδιό σας τι ακριβώς θα εμφανιστεί στην οθόνη κατά την εκτέλεσή του.

x = 18
while x > 0:
    if x % 2 == 0:
        print "artios", x
    else:
        print "perittos", x
    x = x - 3

Β3

Μονάδες 5

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

L = [9, 6, 2, 7]
L.append(13)
print L
x = L.pop()
print x, len(L)

ΘΕΜΑ Γ

Σε ένα πλανητάριο καταγράφονται είκοσι (20) εγγραφές. Για κάθε σχολείο καταγράφονται το όνομα του σχολείου, τον τύπο του σχολείου ("ΕΠΑΛ", "ΓΕΛ", "ΜΟΥΣΙΚΟ") και το πλήθος των μαθητών, που πρέπει να είναι από είκοσι (20) έως και πενήντα (50).

Η χρέωση ανά μαθητή εξαρτάται από την κατηγορία: "ΕΠΑΛ" τέσσερα (4) ευρώ, "ΓΕΛ" επτά (7) ευρώ, "ΜΟΥΣΙΚΟ" δύο (2) ευρώ. Επιπλέον, όταν το πλήθος των μαθητών ξεπερνά τα τριάντα πέντε (35), γίνεται έκπτωση 10% στη συνολική χρέωση.

Να αναπτύξετε πρόγραμμα σε γλώσσα προγραμματισμού Python το οποίο:

Γ1

Μονάδες 8

Για καθεμία από τις είκοσι (20) εγγραφές να διαβάζει:

  • α)Το όνομα του σχολείου. (μον. 2)
  • β)Τον τύπο του σχολείου ("ΕΠΑΛ", "ΓΕΛ", "ΜΟΥΣΙΚΟ"). (μον. 2)
  • γ)Το πλήθος των μαθητών. Να γίνεται έλεγχος ορθότητας, ώστε η τιμή που καταχωρίζεται να είναι από είκοσι (20) έως και πενήντα (50). (μον. 4)

Γ2

Μονάδες 6

Για κάθε σχολείο να υπολογίζει και να εμφανίζει τη χρέωση που αντιστοιχεί, με κλήση της συνάρτησης XREOSI(), όπως περιγράφεται στο ερώτημα Γ3.

Γ3

Μονάδες 5

Να υλοποιεί συνάρτηση με όνομα XREOSI, η οποία δέχεται την κατηγορία και το πλήθος των μαθητών, και επιστρέφει τη χρέωση σύμφωνα με τις τιμές κάθε κατηγορίας και την έκπτωση 10% όταν η τιμή ξεπερνά τα τριάντα πέντε (35).

Γ4

Μονάδες 6

Να υπολογίζει και να εμφανίζει:

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

ΘΕΜΑ Δ

Ένα κέντρο ανακύκλωσης καταγράφει στοιχεία για δώδεκα (12) υλικά. Για κάθε υλικό καταχωρίζονται η ονομασία και τα κιλά που συγκεντρώθηκαν.

Να αναπτύξετε πρόγραμμα σε γλώσσα προγραμματισμού Python το οποίο:

Δ1

Μονάδες 7

Να διαβάζει για καθένα από τα δώδεκα (12) υλικά την ονομασία και τα κιλά, και να τα καταχωρίζει σε δύο παράλληλες λίστες με ονόματα ylika και kila αντίστοιχα.

Δ2

Μονάδες 6

Να βρίσκει και να εμφανίζει την ονομασία για το οποίο τα κιλά που συγκεντρώθηκαν είναι το μεγαλύτερο, καθώς και την τιμή αυτή.

Δ3

Μονάδες 6

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

Δ4

Μονάδες 6

Να δημιουργεί αρχείο κειμένου με όνομα «anakiklosi.txt», στο οποίο να γράφει, ένα ανά γραμμή, την ονομασία και τα κιλά, μόνο για όσα υλικά έχουν τιμή μεγαλύτερη από πεντακόσια (500).

Τα ΘΕΜΑΤΑ Α και Β προέρχονται από τράπεζα υλικού βασισμένη στα πραγματικά θέματα των Πανελλαδικών 2017–2026, με υπολογισμένες απαντήσεις. Τα ΘΕΜΑΤΑ Γ και Δ γράφτηκαν από το μοντέλο nvidia/nemotron-3-super-120b-a12b. Δεν είναι επίσημο θέμα του Υπουργείου Παιδείας και μπορεί να περιέχει λάθη — αν βρεις κάποιο, πες μας στο Forum.