Deutsch

Μονοδιάστατοι Πίνακες: Λύσεις Ασκήσεων

Λύσεις Quiz :

  1. Σ
  2. Σ
  3. Λ
  4. Λ
  5. Σ
  6. Σ
  7. Σ
  8. Σ
  9. Λ
  10. Σ
  11. Σ
  12. Λ
  13. Σ
  14. Λ
  15. Σ
  16. Τύπου
  17. Δείκτη
  18. Δηλώσεων
  19. Επανάληψης
  20. Άθροισμα

Άσκηση 9

ΠΡΟΓΡΑΜΜΑ ΕμφιαλωσηΑναψυκτικου
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: ΜΠ[30], i, συνολο, συνολο1, συνολο2
ΠΡΑΓΜΑΤΙΚΕΣ: μεσος_ορος
ΑΡΧΗ
συνολο <- 0
συνολο1 <- 0
συνολο2 <- 0

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 30
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Δώσε τον αριθμό μπουκαλιών που εμφιαλώθηκαν την ημέρα ', i, ': '
ΔΙΑΒΑΣΕ ΜΠ[i]
ΜΕΧΡΙΣ_ΟΤΟΥ ΜΠ[i] >= 0

συνολο <- συνολο + ΜΠ[i]

ΑΝ i <= 15 ΤΟΤΕ
συνολο1 <- συνολο1 + ΜΠ[i]
ΑΛΛΙΩΣ
συνολο2 <- συνολο2 + ΜΠ[i]
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

μεσος_ορος <- συνολο / 30

ΓΡΑΨΕ 'Συνολική ποσότητα μπουκαλιών που εμφιαλώθηκαν τον Ιούνιο: ', συνολο
ΓΡΑΨΕ 'Μέση ημερήσια ποσότητα εμφιάλωσης: ', μεσος_ορος

ΑΝ συνολο1 > συνολο2 ΤΟΤΕ
ΓΡΑΨΕ 'Περισσότερα μπουκάλια εμφιαλώθηκαν στο 1ο δεκαπενθήμερο.'
ΑΛΛΙΩΣ_ΑΝ συνολο2 > συνολο1 ΤΟΤΕ
ΓΡΑΨΕ 'Περισσότερα μπουκάλια εμφιαλώθηκαν στο 2ο δεκαπενθήμερο.'
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Και στα δύο δεκαπενθήμερα εμφιαλώθηκαν ίδια ποσότητα μπουκαλιών.'
ΤΕΛΟΣ_ΑΝ

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Άσκηση 10

ΠΡΟΓΡΑΜΜΑ ΠαραγωγηΑυγων
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: Α[31], i, συνολο
ΠΡΑΓΜΑΤΙΚΕΣ: μεσος
ΑΡΧΗ
συνολο <- 0

ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 31
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Δώσε την παραγωγή αυγών για την ημέρα ', i, ': '
ΔΙΑΒΑΣΕ Α[i]
ΜΕΧΡΙΣ_ΟΤΟΥ Α[i] >= 0

συνολο <- συνολο + Α[i]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

μεσος <- συνολο / 31

ΓΡΑΨΕ 'Μέση ημερήσια παραγωγή αυγών: ', μεσος

ΓΡΑΨΕ 'Μέρες με παραγωγή μεγαλύτερη από τη μέση:'
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 31
ΑΝ Α[i] > μεσος ΤΟΤΕ
ΓΡΑΨΕ 'Μέρα ', i, ' με παραγωγή: ', Α[i]
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Επανάληψη: Λύσεις Ασκήσεων

Λύσεις Επαναληπτικού Quiz:

  1. Σ  (Ο εγκέφαλος επεξεργάζεται αισθητηριακά δεδομένα για να παράγει σκέψεις και αποφάσεις)
  2. Λ  (Ο υπολογιστής μπορεί να αναλάβει και μικρά προβλήματα, όχι μόνο μεγάλα)
  3. Λ  (Δεν επιλύονται όλα τα προβλήματα υπολογιστικά (π.χ. φιλοσοφικά, ηθικά))
  4. Λ  (Μπορεί να είναι και χαρακτήρες, σύμβολα, εικόνες κ.ά.)
  5. Σ  (Ορισμός της πληροφορίας: επεξεργασμένα δεδομένα με νόημα)
  6. Λ  (Παίζει ρόλο και η εμπειρία, οι γνώσεις και το πλαίσιο)
  7. Λ  (Τους μελετά και μαθηματικά, θεωρητικά, από πλευράς πολυπλοκότητας)
  8. Λ  (Υπάρχουν και ψευδογλώσσα, διαγράμματα ροής κ.ά.)
  9. Σ  (Ορισμός μεταβλητής – αποθηκεύει τιμές που μπορεί να μεταβάλλονται)
  10. Λ  (Η εντολή "Αν" μπορεί να υπάρχει και χωρίς "Αλλιώς" (απλή επιλογή))
  11. Σ  (Οποιοσδήποτε αριθμός στο τετράγωνο είναι ≥ 0)
  12. Σ  (Π.χ. Χ ← Α + Β)
  13. Σ  (Βασικός σκοπός της "Αν...τότε...")
  14. Σ  (Η συνθήκη ελέγχεται πριν την εκτέλεση κάθε επανάληψης)
  15. Λ  (Η "Για" χρησιμοποιείται μόνο όταν γνωρίζουμε από πριν το πλήθος επαναλήψεων)
  16. Λ  (Τα σχόλια αγνοούνται από τον μεταγλωττιστή, δεν επηρεάζουν την ταχύτητα)
  17. Λ  (Οι σταθερές δεν αλλάζουν τιμή, άρα δεν επιτρέπεται εκχώρηση)
  18. Λ  (Το βήμα μπορεί να είναι και αρνητικό)
  19. Λ  (Εκτελείται τουλάχιστον μία φορά)
  20. Σ  (Ο βασικός σκοπός της επανάληψης)
  21. Γ
  22. Β
  23. Γ
  24. Γ
  25. Γ
  26. Γ
  27. Δ
  28. Γ
  29. Γ
  30. Β

Λύσεις Ασκήσεων

Εισαγωγή – Λυμένες Ασκήσεις Πληροφορικής

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

Θέματα Πανελληνίων: Ασκήσεις

ΘΕΜΑ Δ

Μια επιχείρηση έχει 10 πωλητές. Θέλοντας να τους δώσει κίνητρο καθιέρωσε
βραβείο για τον καλύτερο πωλητή κάθε μήνα.
Να κατασκευάσετε πρόγραμμα σε ΓΛΩΣΣΑ, το οποίο:
Δ1. α) Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.
β) Να καταχωρίζει τα ονόματα των πωλητών σε πίνακα ON[10] και τις
μηνιαίες πωλήσεις κάθε πωλητή σε πίνακα ακεραίων Π[10,12] (δεν
απαιτείται έλεγχος εγκυρότητας).
Μονάδες 4
Δ2. Να βρίσκει και να εμφανίζει, για κάθε μήνα, το όνομα του πωλητή που
πήρε το βραβείο (είχε τις μεγαλύτερες πωλήσεις). Να θεωρήσετε ότι για
κάθε μήνα ο βραβευμένος πωλητής είναι μοναδικός.
Δ3. Να υπολογίζει τις συνολικές πωλήσεις της επιχείρησης στο 1ο και στο 2ο
εξάμηνο και να εμφανίζει ανάλογα με την περίπτωση ένα από τα
παρακάτω μηνύματα:
- «Οι πωλήσεις του 1ου εξαμήνου είναι μεγαλύτερες από τις πωλήσεις
του 2ου εξαμήνου».
- «Οι πωλήσεις του 2ου εξαμήνου είναι μεγαλύτερες από τις πωλήσεις
του 1ου εξαμήνου».
- «Οι πωλήσεις του 1ου και του 2ου εξαμήνου είναι ίσες».
(2024)


ΘΕΜΑ Δ
Ένας τουριστικός όμιλος διαθέτει 10 ξενοδοχεία.
Να κατασκευάσετε πρόγραμμα σε ΓΛΩΣΣΑ, το οποίο:
Δ1. α) Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων
β) Για κάθε ξενοδοχείο να διαβάζει το όνομά του σε πίνακα ON[10] καθώς
και τον μηνιαίο αριθμό επισκεπτών για κάθε μήνα του έτους σε πίνακα
ΕΠ[10,12]
Δ2. Για κάθε μήνα να εμφανίζει τον αριθμό του μήνα (1 έως 12) και δίπλα:
--το πλήθος των ξενοδοχείων που είχαν περισσότερους από 1000
επισκέπτες ή
--το μήνυμα: «ΚΑΝΕΝΑ ΞΕΝΟΔΟΧΕΙΟ».
Δ3. Να εμφανίζει τα ονόματα των ξενοδοχείων με τον μικρότερο συνολικό
αριθμό επισκεπτών στη διάρκεια του έτους.
Δ4. Να εμφανίζει τα ονόματα των ξενοδοχείων και τον ετήσιο αριθμό
επισκεπτών κατά φθίνουσα σειρά ετήσιου αριθμού επισκεπτών. Σε
περίπτωση που δύο ή περισσότερα ξενοδοχεία έχουν τον ίδιο ετήσιο
αριθμό επισκεπτών να εμφανίζει τα ονόματα των ξενοδοχείων
αλφαβητικά.
ΣΗΜΕΙΩΣΗ: Να θεωρήσετε ότι όλα τα ξενοδοχεία είχαν επισκέπτες στη διάρκεια του χρόνου (2023)


ΘΕΜΑ Δ
Σε ένα πρόγραμμα  ́ERASMUS+ ́ συμμετέχουν 6 χώρες. Κάθε χώρα
εκπροσωπείται από ένα σχολείο, το οποίο είναι υπεύθυνο να παρουσιάσει μια
θεατρική παράσταση της επιλογής του. Στο τέλος του προγράμματος η
παράσταση κάθε σχολείου βαθμολογείται από μια κριτική επιτροπή, καθώς και
από τα υπόλοιπα σχολεία. Οι βαθμοί που δίνονται είναι ακέραιες τιμές από 1 έως 10.
Να κατασκευάσετε πρόγραμμα σε ΓΛΩΣΣΑ, το οποίο:
Δ1. Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων.

Δ2. Να διαβάζει τις τιμές εισόδου με την εξής σειρά:
α) Τα ονόματα των 6 σχολείων σε πίνακα ON[6].
β) Τις βαθμολογίες που έλαβαν τα σχολεία από την κριτική επιτροπή, στην
κύρια διαγώνιο τετραγωνικού πίνακα Β[6,6].
γ) Τις βαθμολογίες που πήρε κάθε σχολείο από τα άλλα 5 σχολεία στις
υπόλοιπες θέσεις του πίνακα Β. Για παράδειγμα, το στοιχείο Β[2,4],
αντιστοιχεί στη βαθμολογία που πήρε το σχολείο 2 από το σχολείο 4.
Δ3. Να υπολογίζει για κάθε σχολείο τον μέσο όρο των 6 βαθμών που έλαβε.
Δ4. Να εμφανίζει το όνομα του σχολείου στο οποίο η κριτική επιτροπή έδωσε
τη μεγαλύτερή της βαθμολογία, θεωρώντας ότι υπάρχει μόνο ένα τέτοιο
σχολείο.
Δ5. Να εμφανίζει τα ονόματα των σχολείων ταξινομημένα με βάση τον μέσο
όρο βαθμολογίας που έλαβαν κατά φθίνουσα σειρά. Σε περίπτωση
ισοβαθμίας να εμφανίζει τα ονόματα αλφαβητικά. (2022)


ΘΕΜΑ Δ
Σε ένα πρωτάθλημα στίβου, στο αγώνισμα του άλματος εις μήκος συμμετέχουν
20 αθλητές, οι οποίοι κάνουν 6 άλματα ο καθένας.
Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ, το οποίο:
Δ1. α) Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων
β) Να διαβάζει και να αποθηκεύει τα ονόματα των 20 αθλητών σε
μονοδιάστατο πίνακα
γ) Να διαβάζει και να αποθηκεύει σε δισδιάστατο πίνακα τις επιδόσεις
του κάθε αθλητή στα 6 άλματα (δεν απαιτείται έλεγχος εγκυρότητας)

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

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

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

Θέματα Πανελληνίων: Θεωρία

ΘΕΜΑΤΑ Α (2019-2025)

  1. Η ώθηση ενός στοιχείου γίνεται στην κορυφή της στοίβας (2024)
  2. Οποιαδήποτε εντολή επανάληψης ΟΣΟ...ΕΠΑΝΑΛΑΒΕ μπορεί να μετατραπεί σε εντολή επανάληψης ΓΙΑ...ΑΠΟ...ΜΕΧΡΙ...ΜΕ_ΒΗΜΑ. (2023)
  3. Η μέθοδος επεξεργασίας «πρώτο μέσα πρώτο έξω» (FIFO) εφαρμόζεται στη δομή δεδομένων ΟΥΡΑ. (2023)
  4. Η σειριακή αναζήτηση ακολουθεί την τεχνική «διαίρει και βασίλευε».(2022)
  5. Η μέθοδος επεξεργασίας ‘Τελευταίο Μέσα, Πρώτο Έξω’ (LIFO)
    εφαρμόζεται στη στοίβα. (2021)
  6. Η «Δυαδική αναζήτηση» είναι ένας αλγόριθμος που ακολουθεί τη
    φιλοσοφία της μεθόδου «Διαίρει και Βασίλευε». (2021)
  7. Οι εντολές που βρίσκονται στον βρόχο μιας εντολής ΓΙΑ εκτελούνται
    τουλάχιστον μία φορά. (2021)
  8. Σε έναν αλγόριθμο στον οποίο υπάρχει μόνο η δομή ακολουθίας κάθε
    εντολή εκτελείται ακριβώς μια φορά. (2021)
  9. Ο βρόχος ΓΙΑ i AΠΟ 0 ΜΕΧΡΙ 0 δεν εκτελείται καμία φορά. (2020)
  10. Υπερχείλιση έχουμε όταν ωθήσουμε ένα στοιχείο σε μια ήδη γεμάτη
    στοίβα. (2020)
  11. Σε πίνακες που είναι ταξινομημένοι χρησιμοποιείται υποχρεωτικά η
    σειριακή μέθοδος αναζήτησης. (2020)
  12. Γενικά, σε περιπτώσεις που η επανάληψη θα συμβεί τουλάχιστον μία
    φορά, είναι προτιμότερη η χρήση της ΜΕΧΡΙΣ_ΟΤΟΥ. (2020)
  13. Να αναφέρετε τις τυπικές επεξεργασίες των πινάκων. (2020)
  14. Ο δείκτης σε έναν πίνακα έχει υποχρεωτικά ακέραια τιμή. (2020)
  15. Η έκφραση Χ ΚΑΙ (ΟΧΙ Χ) είναι πάντα Αληθής για κάθε τιμή της
    λογικής μεταβλητής Χ. (2019)
  16. Η δυαδική αναζήτηση στοιχείου σε ταξινομημένο πίνακα ακολουθεί τη
    μέθοδο σχεδίασης αλγορίθμου «ΔΙΑΙΡΕΙ ΚΑΙ ΒΑΣΙΛΕΥΕ». (2025)

ΘΕΜΑΤΑ Β (2019-2025)

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

    Χ <-- Κ
    ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
    Χ <-- Χ + 2
    ΓΡΑΨΕ Χ
    ΜΕΧΡΙΣ_ΟΤΟΥ Χ >= Μ
    Τι θα εμφανίσει για κάθε μία από τις παρακάτω περιπτώσεις:
    α) Κ = 4, Μ = 9
    β) Κ = 5, Μ = 0
    γ) Κ = -1, Μ = 3 (2019)

  2. Δίνεται το παρακάτω τμήμα προγράμματος:
    ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10
    ΓΙΑ j ΑΠΟ 20 ΜΕΧΡΙ 1 ΜΕ_ΒΗΜΑ -1
    ΓΡΑΨΕ i*j
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    Να μετατραπεί το παραπάνω τμήμα προγράμματος, κάνοντας χρήση των δομών επανάληψης ΟΣΟ…ΕΠΑΝΑΛΑΒΕ αντί των δομών επανάληψης ΓΙΑ. (2024)
  3. Δίνεται ο παρακάτω τετραγωνικός Πίνακας Α[4,4]: (2024)
    2 4 6 8
    3 6 9 12
    10 12 14 16
    15 18 21 24
    Στις μονές γραμμές του Πίνακας Α[4,4] καταχωρίζονται οι τιμές 2, 4, 6, 8,
    10, 12, 14, 16 και στις ζυγές γραμμές του οι τιμές 3, 6, 9, 12, 15, 18, 21,
    24 όπως φαίνεται παραπάνω. Να γράψετε στο τετράδιό σας τους αριθμούς (1) έως (5) που αντιστοιχούν στα κενά του παρακάτω τμήματος
    προγράμματος και δίπλα ό,τι χρειάζεται, έτσι ώστε να σχηματιστεί ο
    παραπάνω Πίνακας Α[4,4].
    κ<-2
    λ<-3
    ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 4
    ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 4
    ΑΝ…(1)…ΤΟΤΕ
    …(2)…
    κ<- …(3)…
    ΑΛΛΙΩΣ
    Α[i,j] <-…(4)…
    …(5)…
    ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  4. Δίνεται το παρακάτω τμήμα αλγορίθμου: (2023)
    ΓΙΑ i ΑΠΟ Α ΜΕΧΡΙ Μ ΜΕ_ΒΗΜΑ Β
    ΓΡΑΨΕ i
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    Για καθεμιά από τις παρακάτω τρεις περιπτώσεις τιμών των μεταβλητών
    Α, Μ, Β να γράψετε στο τετράδιό σας τον αριθμό της περίπτωσης και δίπλα πόσες φορές θα εκτελεστεί η εντολή ΓΡΑΨΕ.
    1. Α= 2 Μ= 0 Β= -1
    2. Α= 5 Μ= 0 Β= 2
    3. Α= -3 Μ= 3 Β= 2
  5. Δίνεται το παρακάτω τμήμα αλγορίθμου: (2022)
    s←0
    Διάβασε x
    Αν x>0 τότε
    Αρχή_επανάληψης
    s←s+x
    Διάβασε x
    Μέχρις_ότου x≤0
    Τέλος_αν
    Να κωδικοποιήσετε τμήμα αλγορίθμου που να υλοποιεί την ίδια
    λειτουργία με το παραπάνω, χρησιμοποιώντας, αντί για την εντολή
    επανάληψης ΜΕΧΡΙΣ_ΟΤΟΥ, την εντολή επανάληψης ΟΣΟ και χωρίς
    να περιλαμβάνει εντολή επιλογής. (μονάδες 4)
  6. Δίνεται το παρακάτω τμήμα προγράμματος σε ΓΛΩΣΣΑ:
    ΔΙΑΒΑΣΕ α
    β1
    OΣΟ α<=5 EΠΑΝΑΛΑΒΕ
    ββ+α
    ΔΙΑΒΑΣΕ α
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    Να μετατραπεί σε ισοδύναμο με χρήση της εντολής ΜΕΧΡΙΣ_ΟΤΟΥ. (2021)

Θέματα Πανελληνίων

Εισαγωγή – Θέματα Πανελληνίων Πληροφορικής

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

Extra Υλικό Ασκήσεων

Για όποιον ενδιαφέρεται να λύσει ακόμα περισσότερες ασκήσεις παρέχουμε υλικό στα αρχεία της κυψέλης μας. Μπορείτε να τις βρείτε εύκολα στα παρακάτω links:

Φάκελος Πληροφορική Γ' Λυκείου

Υποφάκελος Μονοδιάστατοι Πίνακες

Υποφάκελος Δισδιάστατοι Πίνακες

Υποφάκελος Αναζήτηση-Ταξινόμηση

Υποφάκελος Στοίβα

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

Ουρά

Τι ονομάζεται ουρά;
Ουρά (Queue), ονομάζεται μια δομή δεδομένων το σύνολο των στοιχείων της οποίας είναι διατεταγμένο με
τέτοιο τρόπο, ώστε τα στοιχεία που τοποθετήθηκαν πρώτα στην ουρά να λαμβάνονται επίσης πρώτα. Η
παραπάνω μέθοδος ονομάζεται Πρώτο Μέσα, Πρώτο Έξω ή FIFO (=First In First Out).

1. Ποιες είναι οι κύριες λειτουργίες σε μια ουρά;
● Η εισαγωγή (enqueue) στοιχείου στο πίσω άκρο της ουράς.
● Η εξαγωγή (dequeue) στοιχείου από το εμπρός άκρο της ουράς.

2. Πως υλοποιείται η ουρά με χρήση μονοδιάστατου πίνακα;
● Χρησιμοποιούμε δύο μεταβλητές, την front (ή εμπρός) που δείχνει τη θέση του 1ου στοιχείου της ουράς και την rear (ή πίσω) που δείχνει τη θέση του τελευταίου στοιχείου. Ως αρχικές τιμές των μεταβλητών rear και front θεωρούμε το μηδέν.
● Η εισαγωγή ενός νέου στοιχείου γίνεται από το πίσω άκρο της ουράς και η τιμή της μεταβλητής rear αλλάζει ως εξής: rear ← rear+1
Κατά την εισαγωγή, πρώτα αυξάνουμε τον δείκτη rear κατά ένα και μετά εισάγουμε το στοιχείο στον πίνακα. Αυτό υπό την προϋπόθεση ότι υπάρχει χώρος (rear < max).
Aν το στοιχείου που βάζουμε είναι το πρώτο (rear=1) τότε θέτουμε και front ← 1
● Η εξαγωγή ενός στοιχείου γίνεται από το εμπρός άκρο της ουράς και η τιμή της μεταβλητής front αλλάζει
ως εξής: front ← front +1
Κατά την εξαγωγή ενός στοιχείου, αυξάνεται ο δείκτης front κατά ένα (δείχνει στην επόμενη θέση του
πίνακα) χωρίς στην πραγματικότητα να γίνεται καμία παρέμβαση στα περιεχόμενα του πίνακα (χωρίς να
διαγράφεται κάποιο στοιχείο). Αυτό υπό την προϋπόθεση ότι υπάρχει στοιχείο (front <= rear και front >
0).
Όταν γίνεται εξαγωγή του τελευταίου στοιχείου της ουρά (front = rear) οι δείκτες παίρνουν πάλι τις
αρχικές τιμές (0).


ΠΡΟΓΡΑΜΜΑ ΟΥΡΑ
ΜΕΤΑΒΛΗΤΕΣ
ΧΑΡΑΚΤΗΡΕΣ: A[10]
ΑΚΕΡΑΙΕΣ: f, r, απάντηση, i
ΑΡΧΗ
f <- 0
r <- 0
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Δώστε 1: εισαγωγή 2: εξαγωγή 9:έξοδος'
ΔΙΑΒΑΣΕ απάντηση
ΕΠΙΛΕΞΕ απάντηση
ΠΕΡΙΠΤΩΣΗ 1
ΑΝ r < 10 ΤΟΤΕ
r <- r + 1
ΓΡΑΨΕ 'Δώστε τιμή για εισαγωγή : '
ΔΙΑΒΑΣΕ A[r]
ΑΝ r = 1 ΤΟΤΕ
f <- 1
ΤΕΛΟΣ_ΑΝ
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Γεμάτη ουρά'
ΤΕΛΟΣ_ΑΝ
ΠΕΡΙΠΤΩΣΗ 2
ΑΝ f > 0 ΤΟΤΕ
ΓΡΑΨΕ 'Eξαγωγή : ', A[f]
A[f] <- ''
f <- f + 1
ΑΝ f > r ΤΟΤΕ
f <- 0

r <- 0
ΤΕΛΟΣ_ΑΝ
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Αδεια ουρά'
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ
ΜΕΧΡΙΣ_ΟΤΟΥ απάντηση = 9
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Στοίβα

1. Τι ονομάζεται στοίβα;
Στοίβα (stack), ονομάζεται μια δομή δεδομένων το σύνολο των στοιχείων της οποίας είναι διατεταγμένο με τέτοιο τρόπο, ώστε τα στοιχεία που βρίσκονται στην κορυφή της στοίβας λαμβάνονται πρώτα, ενώ αυτά που βρίσκονται στο βάθος της στοίβας λαμβάνονται τελευταία. Η παραπάνω μέθοδος ονομάζεται Τελευταίο Μέσα, Πρώτο Έξω ή LIFO (=Last In First Out).

2. Ποιες είναι οι κύριες λειτουργίες σε μια στοίβα;
● Η ώθηση (push) στοιχείου στην κορυφή της στοίβας. Στη διαδικασία της ώθησης ελέγχουμε αν η στοίβα είναι γεμάτη. Στην περίπτωση που προσπαθήσουμε να «προσθέσουμε» ένα στοιχείο σε μια ήδη γεμάτη στοίβα, έχουμε υπερχείλιση (overflow) της στοίβας.
● Η απώθηση (pop) στοιχείου από τη στοίβα. Στη διαδικασία της απώθησης ελέγχουμε αν υπάρχει ένα τουλάχιστον στοιχείο στη στοίβα. Στην περίπτωση που προσπαθήσουμε να «αφαιρέσουμε» ένα στοιχείο από μία κενή στοίβα, έχουμε υποχείλιση (underflow) της στοίβας.

3. Πως υλοποιείται η στοίβα με χρήση μονοδιάστατου πίνακα;
Χρησιμοποιούμε μια μεταβλητή (top), που δείχνει το στοιχείο που τοποθετήθηκε τελευταίο στην κορυφή της στοίβας, η οποία έχει τιμή 0, όταν η στοίβα είναι άδεια.
• Η ώθηση ενός νέου στοιχείου στη στοίβα (εισαγωγή στοιχείου στον πίνακα) γίνεται πάντα στην κορυφή της. Συγκεκριμένα, η μεταβλητή top αυξάνεται κατά ένα: top ← top+1 και στη συνέχεια γίνεται η ώθηση του στοιχείου.
• Η απώθηση ενός στοιχείου από τη στοίβα (εξαγωγή από τον πίνακα) γίνεται πάντα από την κορυφή της στοίβας. Συγκεκριμένα, εξάγεται το στοιχείο που δείχνει η μεταβλητή top και στη συνέχεια η μεταβλητή top μειώνεται κατά ένα: top ← top-1


ΠΡΟΓΡΑΜΜΑ ΣΤΟΙΒΑ
ΜΕΤΑΒΛΗΤΕΣ
ΧΑΡΑΚΤΗΡΕΣ: A[10]
ΑΚΕΡΑΙΕΣ: top, απάντηση, i
ΑΡΧΗ
top <- 0
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Δώστε 1: ώθηση 2: απώθηση 9:έξοδος'
ΔΙΑΒΑΣΕ απάντηση
ΑΝ απάντηση = 1 ΤΟΤΕ
! *******************
! ώθηση
ΑΝ top < 10 ΤΟΤΕ
top <- top + 1
ΓΡΑΨΕ 'Δώστε τιμή για ώθηση : '
ΔΙΑΒΑΣΕ A[top]
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Γεμάτη στοίβα'
ΤΕΛΟΣ_ΑΝ
ΑΛΛΙΩΣ_ΑΝ απάντηση = 2 ΤΟΤΕ
! *******************
! απώθηση
ΑΝ top > 0 ΤΟΤΕ
ΓΡΑΨΕ 'Απώθηση : ', A[top]
A[top] <- ''
top <- top - 1
ΑΛΛΙΩΣ
ΓΡΑΨΕ 'Αδεια στοίβα'
ΤΕΛΟΣ_ΑΝ

ΜΕΧΡΙΣ_ΟΤΟΥ απάντηση = 9
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Στοίβα-Ουρά

Στοίβα – Εισαγωγή

Η Στοίβα (Stack) είναι μια αφηρημένη δομή δεδομένων στην οποία η εισαγωγή και η αφαίρεση στοιχείων γίνεται μόνο από τη μία άκρη, που ονομάζεται κορυφή (top) της στοίβας.
Η βασική αρχή λειτουργίας της είναι LIFO (Last In, First Out), δηλαδή το τελευταίο στοιχείο που εισήχθη είναι και το πρώτο που αφαιρείται.
Παράδειγμα: Μια στοίβα από πιάτα — το τελευταίο πιάτο που βάζουμε πάνω είναι το πρώτο που θα πάρουμε.


Ουρά – Εισαγωγή

Η Ουρά (Queue) είναι μια αφηρημένη δομή δεδομένων στην οποία η εισαγωγή στοιχείων γίνεται στο ένα άκρο (πίσω μέρος – rear) και η αφαίρεση στο άλλο άκρο (μπροστινό μέρος – front).
Η βασική αρχή λειτουργίας της είναι FIFO (First In, First Out), δηλαδή το πρώτο στοιχείο που εισήχθη είναι και το πρώτο που αφαιρείται.
Παράδειγμα: Η ουρά σε ένα ταμείο — ο πρώτος που μπαίνει είναι και ο πρώτος που εξυπηρετείται.