ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ / ΑΠΟΦΟΙΤΟΙ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 05/03/2012 ΘΕΜΑ Α Α1. Να γράψετε τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη ΣΩΣΤΟ, αν είναι σωστή ή τη λέξη ΛΑΘΟΣ, αν είναι λανθασμένη. 1. Η ουρά χρησιμοποιεί δύο δείκτες. 2. Η εντολή ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΜΕΧΡΙΣ_ΟΤΟΥ μπορεί να εκτελεστεί καμία μία ή περισσότερες φορές. 3. Όταν ένας αλγόριθμος χρησιμοποιεί μια συγκεκριμένη τιμή εισόδου για να σταματήσει την εκτέλεση του, τότε η τιμή αυτή καλείται τιμή φρουρός. 4. Ο έλεγχος των τιμών εισόδου, είναι προτιμότερο να υλοποιείται με μια δομή επιλογής. 5. Η εντολή ΓΙΑ Κ ΑΠΟ Λ ΜΕΧΡΙ Λ ΜΕ_ΒΗΜΑ Β εκτελείται μόνο μια φορά, όποιες και αν είναι οι τιμές των Λ και Β, αν Β < > 0. (Μονάδες 10) Α2. Να γράψετε καθένα από τους αριθμούς της Στήλης Α και δίπλα ένα γράμμα της Στήλης Β, ώστε να προκύπτει η σωστή αντιστοίχιση. Στήλη Α Στήλη Β 1. κόμβος α. ταξινόμηση 2. κορυφή β. θετικός ακέραιος αριθμός 3. απαιτούν μνήμη γ. ουρά 4. δείκτης δ. στοίβα 5. FIFO ε. μειονέκτημα πίνακα στ. δομή δεδομένων (Μονάδες 5) Σελίδα 1 από 6
Α3. α. Αναφέρετε τις βασικές λειτουργίες της στοίβας και της ουράς. β. Ποιες είναι οι διαφορές των στατικών και δυναμικών δομών δεδομένων (Μονάδες 6) A4 Δίνεται η παρακάτω δομή επανάληψης: ΓΙΑ ΜΕ ΑΠΟ ΑΤ ΜΕΧΡΙ ΤΤ ΜΕ_ΒΗΜΑ Β ΓΡΑΨΕ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Να μεταφέρετε στο γραπτό σας και να συμπληρώσετε τον παρακάτω πίνακα: ΑΤ ΤΤ Β ΠΛΗΘΟΣ ΕΠΑΝΑΛΗΨΕΩΝ 2 5 2 2 5-2 5 2-2 5 2 2 4 7 0 Α5. Δίνεται το παρακάτω τμήμα αλγορίθμου που περιέχει κενά διαστήματα: Ι 1 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ Χ ΑΝ Χ 2 = 1 ΤΟΤΕ Σ Σ + ΤΕΛΟΣ_ΑΝ Ι Ι + 1 ΜΕΧΡΙΣ_ΟΤΟΥ (Μονάδες 5) α. Να γράψετε ξανά το παραπάνω τμήμα με συμπληρωμένα τα κενά διαστήματα με τα κατάλληλα αλγοριθμικά στοιχεία(μεγέθη, τελεστές, εκφράσεις) ώστε το Σελίδα 2 από 6
παραπάνω τμήμα να υπολογίζει το μέσο όρο των περιττών αριθμών από τους 100 που διαβάζονται. β. Να ξαναγράψετε το συμπληρωμένο τμήμα με αποκλειστική χρήση της δομής επανάληψης ΓΙΑ ΑΠΟ ΜΕΧΡΙ ΜΕ_ΒΗΜΑ (Μονάδες 6) ΘΕΜΑ Β Β1. Δίνεται το παρακάτω τμήμα αλγορίθμου γραμμένο σε «ψευδογλώσσα» Διάβασε Ν Κ (-2) Λ 10 Αρχή_επανάληψης Λ Λ Ν Κ Κ / Λ Μέχρις_ότου Λ < 0 Επίσης δίνεται ο παρακάτω πίνακας όπου στη Στήλη Α υπάρχουν διάφορες τιμές της μεταβλητής Ν και στη Στήλη Β διάφορες προτάσεις που αφορούν το παραπάνω τμήμα αλγορίθμου. Να γράψετε τις σωστές αντιστοιχίσεις μεταξύ των αριθμών της στήλης Α και των γραμμάτων της Στήλης Β. Στήλη Α Στήλη Β 1. Ν=-1 α. οι εντολές μέσα στη δομή επανάληψης εκτελούνται 4 φορές 2. Ν=15 β. οι εντολές μέσα στη δομή επανάληψης εκτελούνται 2 φορές 3. Ν=5 γ. οι εντολές του αλγορίθμου παραβιάζουν το κριτήριο της περατότητας 4. Ν=3 δ. οι εντολές μέσα στη δομή επανάληψης εκτελούνται 1 φορά ε. οι εντολές του αλγορίθμου παραβιάζουν το κριτήριο της καθοριστικότητας (Μονάδες 8) Σελίδα 3 από 6
Β2. Δίνετε το παρακάτω τμήμα αλγορίθμου γραμμένο σε «ΓΛΩΣΣΑ»: ΔΙΑΒΑΣΕ Ν ΓΙΑ Ι ΑΠΟ 7 ΜΕΧΡΙ 12 ΜΕ_ΒΗΜΑ 0 Χ 2 ΓΡΑΨΕ Ι ΟΣΟ Ν MOD X = 0 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ Χ, Ν Ν Ν DIV X ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ α. Να διορθώσετε το λάθος που υπάρχει, ώστε να ικανοποιείται το κριτήριο της περατότητας, αν γνωρίζετε ότι η δομή επανάληψης ΓΙΑ ΑΠΟ ΜΕΧΡΙ ΜΕ_ΒΗΜΑ πρέπει να εκτελείται 3 φορές χωρίς να μεταβληθεί η αρχική και η τελική τιμή της μεταβλητής ελέγχου Ι. (Μονάδες 2) β. Να γράψετε ξανά το διορθωμένο τμήμα του αλγορίθμου ισοδύναμα, με αποκλειστική χρήση της δομής επανάληψης ΟΣΟ ΕΠΑΝΑΛΑΒΕ (Μονάδες 3) γ. Να γράψετε τις τιμές που εμφανίζει το τμήμα του αλγορίθμου για Ν=100 (Μονάδες 7) ΘΕΜΑ Γ Το ταχυδρομείο μιας πόλης κάπου στην Ελλάδα επεξεργάζεται άγνωστο αριθμό επιστολών. Για κάθε επιστολή εφαρμόζει για τα έξοδα αποστολής χρέωση σύμφωνα με τον παρακάτω πίνακα: Βάρος επιστολής σε γραμμάρια Χρέωση εσωτερικού σε ευρώ Χρέωση εξωτερικού σε ευρώ Από 0 έως και 500 2.0 4.8 Πάνω από 500 έως και 1000 3.5 7.2 Πάνω από 1000 έως και 2000 4.6 11.5 Σελίδα 4 από 6
Να γράψετε αλγόριθμο σε «ψευδογλώσσα» ο οποίος: Γ1. Διαβάζει τον προορισμό της επιστολής. Οι τιμές για τον προορισμό είναι ΕΣ για επιστολές εσωτερικού και ΕΞ για επιστολές εξωτερικού. Γ2. Για κάθε επιστολή διαβάζει το βάρος της εξασφαλίζοντας ότι οι τιμές που δίνονται είναι θετικές και δεν ξεπερνούν το 2000. Γ3. Υπολογίζει και εμφανίζει τα έξοδα αποστολής. Γ4. Ο αλγόριθμος σταματά να επεξεργάζεται επιστολές, όταν αντί για προορισμό δοθεί η λέξη ΤΕΛΟΣ. Γ5. Ο αλγόριθμος στο τέλος εμφανίζει το ποσοστό (%) επί του συνόλου των επιστολών όσων επιστολών είχαν προορισμό το εξωτερικό. ΘΕΜΑ Δ Ένας καταστηματάρχης χρειάζεται ένα πρόγραμμα διαχείρισης αποθήκης. Στην αποθήκη μπορεί να υπάρχουν το πολύ 200 προϊόντα. Να γραφεί αλγόριθμος σε «ΓΛΩΣΣΑ» ο οποίος: Δ1. Να περιέχει τμήμα δηλώσεων μεταβλητών (Μονάδες 2) Δ2. Να διαβάζει έναν θετικό αριθμό(θεωρήστε ότι είναι ακέραιος) σαν το πλήθος των προϊόντων που υπάρχουν στην αποθήκη. Ο αλγόριθμος να εξασφαλίζει την εγκυρότητα της τιμής. (Μονάδες 2) Δ3. Για κάθε προϊόν να διαβάζει το κωδικό του(ακέραιος τετραψήφιος αριθμός), την επωνυμία του, τη διαθέσιμη ποσότητα του σε τεμάχια (μη αρνητικός ακέραιος αριθμός) και τα καταχωρίζει στους μονοδιάστατους πίνακες με ονόματα ΚΩΔΙΚΟΣ, ΕΠΩΝΥΜΙΑ, και ΠΟΣΟΤΗΤΑ αντίστοιχα. Οι τιμές στους πίνακες τοποθετούνται με αντιστοιχία θέσης. Για τον πίνακα ΠΟΣΟΤΗΤΑ να γίνεται Σελίδα 5 από 6
έλεγχος εγκυρότητας ώστε οι τιμές να μην υπερβαίνουν τα 50 τεμάχια. Για τους άλλους πίνακες θεωρούμε ότι οι τιμές που δίνονται είναι έγκυρες. Επίσης οι τιμές στο πίνακα ΚΩΔΙΚΟΣ είναι μοναδικές. Δ4. Να διαβάζει το κωδικό κάποιου προϊόντος και αν αυτός ο κωδικός αντιστοιχεί σε προϊόν της αποθήκης, να ελέγχει αν αυτό είναι διαθέσιμο(δηλ. η ποσότητα δεν είναι μηδενική) να εμφανίζει την επωνυμία του και τη φράση ΔΙΑΘΕΣΙΜΟ διαφορετικά ΜΗ ΔΙΑΘΕΣΙΜΟ. Αν ο κωδικός δεν βρεθεί να εμφανίζεται το μήνυμα Ο ΚΩΔΙΚΟΣ ΔΕΝ ΑΝΤΙΣΤΟΙΧΕΙ ΣΕ ΠΡΟΪΟΝ (Μονάδες 7) Δ5. Ο αλγόριθμος εμφανίζει τα ονόματα των 5 προϊόντων με τις μεγαλύτερες διαθέσιμες ποσότητες (Μονάδες 7) Υπόδειξη: Πριν από κάθε εντολή εισόδου και πριν από κάθε εντολή εξόδου να εμφανίζονται κατάλληλα ενημερωτικά μηνύματα. ΣΑΣ ΕΥΧΟΜΑΣΤΕ ΚΑΛΗ ΕΠΙΤΥΧΙΑ! Σελίδα 6 από 6