ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ ΤΕΤΡΑΔΙΟΥ ΜΑΘΗΤΗ ΤΕΣΤ1 ΑΠΑΝΤΗΣΕΙΣ 1. Κατανόηση , Ανάλυση, Επίλυση 2. Είσοδος, Επεξεργασία, Έξοδος, Έλεγχος 3. Κατανόηση 4. Πληροφορία 5. Διατύπωση 6. Δομή 7. Απαιτήσεων 8. Λ, 1 9. Σ, 10. Σ, 11. Λ, 12. Σ ΤΕΣΤ2 Δίνονται οι παρακάτω ομάδες προτάσεων. Σε κάθε μια από αυτές, να βάλετε τις προτάσεις στη σωστή σειρά με την οποία θα πρέπει να γράφονται σε ένα πρόγραμμα 1. Α. Δήλωση μεταβλητών Γ. Επικεφαλίδα προγράμματος Β. Δήλωση σταθερών Δ. Εντολή εισόδου ΔΙΑΒΑΣΕ 2. Α. ΓΡΑΨΕ ‘Η συνολική τιμή είναι’, Τιμή Β. ΔΙΑΒΑΣΕ Ν Γ. Κόστος <– Ν * 100 Δ. Τιμή <– Κόστος + Κόστος * 0.18 Συμπλήρωσε τα κενά με τη σωστή λέξη που λείπει 3. Τα στοιχεία προγράμματος των οποίων η τιμή μπορεί να μεταβληθεί κατά τη διάρκεια εκτέλεσης ενός προγράμματος, ονομάζονται ………………… 4. Η τελευταία εντολή κάθε προγράμματος είναι ………………………. Χαρακτήρισε τα παρακάτω σαν σωστό ή λάθος 5. Η δήλωση των μεταβλητών που χρησιμοποιούνται σε ένα πρόγραμμα είναι υποχρεωτική. 6. Το σύμβολο της εντολής εκχώρησης είναι το ίσον =. 7. Κατά τον υπολογισμό μιας αριθμητικής παράστασης, πρώτα εκτελείται ο πολλαπλασιασμός και στη συνέχεια η πρόσθεση. 8. Οι λογικές μεταβλητές δέχονται μόνο δύο τιμές. Διάλεξε ένα μεταξύ των προτεινόμενων 9. Ποιες από τις παρακάτω εντολές δίνουν σαν αποτέλεσμα εκτέλεσης το μήνυμα: Η τιμή είναι 100 Α. Τιμή <– 100 Γ. Τιμή <– 100 ΓΡΑΨΕ ‘Η τιμή είναι’ 100 ΓΡΑΨΕ ‘Η τιμή είναι’, 100 Β. ΓΡΑΨΕ ‘Η τιμή είναι’, Τιμή Δ. Τιμή <– 100 ΓΡΑΨΕ ‘Η τιμή είναι’, Τιμή 10. Μετά την εκτέλεση της εντολής Υ <– 5 * (Χ – 3) + Χ ^ 3 – 2 + Ζ ποια είναι η τιμή της μεταβλητής Υ, αν Χ = 5 και Ζ = 1 Α. 35 Β. 134 Γ. 22 Δ. 148 11. Τι θα τυπώσουν οι παρακάτω εντολές Α <– 100 Χ <– (2 + Τ_Ρ (Α) * 3/10) ^ 2 – (Α + 50)/5 ΓΡΑΨΕ Χ Α. 22 Β. –5 Γ. 10 Δ. 25 2 12. Σε ένα πρόγραμμα έχουμε μία μεταβλητή Πλήθος την οποία θέλουμε να την αυξήσουμε κατά μία μονάδα. Ποια από τις εντολές έχει σαν αποτέλεσμα την αύξηση αυτή Α. Πλήθος + 1 <– Πλήθος Γ. Πλήθος <– + 1 Β. Πλήθος <– Πλήθος + 1 Δ. Πλήθος = Πλήθος + 1 Διάλεξε όλα όσα χρειάζονται μεταξύ των προτεινόμενων 13. Τα είδη μεταβλητών που υποστηρίζει η ΓΛΩΣΣΑ είναι Α. ακέραιες Γ. μιγαδικές Ε. ημερομηνίες Β. πραγματικές Δ. χαρακτήρες Ζ. λογικές 14. Ποια από τα παρακάτω είναι δεκτά σαν ονόματα σταθερών: Α. Α Γ. 1Στοιχείο Ε. Τιμή – σε – $ Β. Στοιχείο1 Δ. Φύλο μαθητή Ζ. ΤΑΧΥΤΗΤΑ ΑΠΑΝΤΗΣΕΙΣ 1. γ, β, α, δ 2. β, γ, δ, α 3. μεταβλητές 4. ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ όνομα προγράμματος 5. Σ, 6. Λ, 7. Σ, 9. δ, 10. β, 11. β, 13. α, β, δ, ζ, 3 8. Σ 14. α, β, ζ 12. β ΤΕΣΤ3 Δίνονται οι παρακάτω ομάδες προτάσεων. Σε κάθε μία από αυτές, να κάνετε τις απαραίτητες διορθώσεις ώστε να ισχύουν οι προτάσεις 1. Η αναπαράσταση αλγορίθμου με ελεύθερο κείμενο (free text) αποτελεί τον πιο καλά δομημένο τρόπο παρουσίασης αλγορίθμου. 2. Τα διαγράμματα ροής (flow charts) αποτελούν έναν ακολουθιακό τρόπο παρουσίασης ενός αλγορίθμου με χρήση βημάτων. 3. Η κωδικοποίηση (coding) ενός αλγορίθμου γίνεται με ένα πρόγραμμα που όταν εκτελεσθεί μπορεί και να μη δώσει τα ίδια αποτελέσματα με τον αλγόριθμο. Συμπλήρωσε τα κενά με τη σωστή λέξη που λείπει. 4. Η …………………. δομή (σειριακών βημάτων) χρησιμοποιείται πρακτικά για την αντιμετώπιση απλών προβλημάτων, όπου είναι δεδομένη η σειρά εκτέλεσης ενός συνόλου ενεργειών. 5. Η δομή της …………….. χρησιμοποιείται όταν υπάρχει αναγκαιότητα απόφασης μεταξύ ενός συνόλου περιπτώσεων. 6. Η ………………….. ενός αλγορίθμου γίνεται με ένα πρόγραμμα που όταν εκτελεσθεί θα δώσει τα ίδια αποτελέσματα με τον αλγόριθμο. 7. Τα ……………….. αποτελούν ένα γραφικό τρόπο παρουσίασης ενός αλγορίθμου. 8. Οι ……………….. διαδικασίες συνδυάζουν και χρησιμοποιούν περισσότερες από μία περιπτώσεις αλγοριθμικών συνιστωσών. Χαρακτήρισε τα παρακάτω σαν σωστό ή λάθος 9. Η αλγοριθμική υποστήριξη βοηθά στην επίλυση προβλημάτων. 10. Οι αλγοριθμικές δομές αποτελούνται από ένα ενιαίο κομμάτι και διαφέρουν μόνο στα στοιχεία εισόδου. 11. Για τον υπολογισμό ενός αθροίσματος ακεραίων μπορώ να χρησιμοποιήσω τη δομή της επιλογής. 12. Οι διαδικασίες πολλαπλών επιλογών χρησιμοποιούνται για τις διαφορετικές ενέργειες που πρέπει να γίνουν με βάση τον αριθμό των διακριτών ακεραίων τιμών μίας μεταβλητής. Διάλεξε όλα όσα χρειάζεται μεταξύ των προτεινόμενων 13. Τα χρησιμοποιούμενα γεωμετρικά σχήματα για την αναπαράσταση των διαγραμμάτων ροής είναι τα εξής: Α) έλλειψη Β) ρόμβος Γ) ορθογώνιο Δ) κύκλος 14. Ποια από τα παρακάτω κριτήρια πρέπει να ικανοποιεί απαραίτητα ένας αλγόριθμος: Α) είσοδος / έξοδος Β) ύπαρξη βρόχου ή συνθήκης επανάληψης Γ) μη-περατότητα Δ) καθοριστικότητα Ε) αποτελεσματικότητα 4 Βάλε έναν κύκλο στα σωστά 15. Οι αλγοριθμικές συνιστώσες περιλαμβάνουν: Α) δομή επιλογής Β) δομή ακολουθίας Γ) δομή δεδομένων Δ) δομή εισόδου 16. Ο πολλαπλασιασμός αλά ρωσικά περιλαμβάνει: Α) πολλαπλασιασμό επί 4 Β) πολλαπλασιασμό επί 2 Γ) διαίρεση δια 4 Δ) διαίρεση δια 2 17. Η Πληροφορική είναι η επιστήμη που μελετά τους αλγορίθμους από τις ακόλουθες σκοπιές: Α) Υλικού Β) Θεωρητική Γ) Πιθανολογική Δ) Αναλυτική ΑΠΑΝΤΗΣΕΙΣ 1. Η αναπαράσταση αλγορίθμου με ελεύθερο κείμενο (free text) αποτελεί μη δομημένο τρόπο παρουσίασης αλγορίθμου. 2. Τα διαγράμματα ροής αποτελούν (flow chart) ένα γραφικό τρόπο παρουσίασης ενός αλγορίθμου με χρήση συγκεκριμένων τύπων γραφικών για κάθε ενέργεια. 3. Η κωδικοποίηση (coding) ενός αλγορίθμου γίνεται με ένα πρόγραμμα που όταν εκτελεσθεί θα δίνει πάντοτε τα ίδια αποτελέσματα με τον αλγόριθμο. 4. Ακολουθιακή 5. Επιλογής 6. Υλοποίησης 7. Διαγράμματα ροής 8. Εμφωλευμένες 9. Σ, 10. Λ, 13. α, β, γ 15. α, β, 5 11. Λ, 12. Σ 14. α, δ, ε 16. β, δ, 17. α, β, δ ΤΕΣΤ4 Δίνονται οι παρακάτω ομάδες εντολές. Σε κάθε μια από αυτές, να βάλετε τις εντολές στη σωστή σειρά με την οποία θα πρέπει να γράφονται σε ένα πρόγραμμα 1. Α. ΓΡΑΨΕ ‘Δεν υπάρχει ρίζα’ Β. ΑΝ Α > 0 ΤΟΤΕ Γ. ΤΕΛΟΣ_ΑΝ Δ. ΑΛΛΙΩΣ Ε. Ρίζα < –Τ_Ρ(Α) 2. Α. ΜΕΧΡΙΣ_ΟΤΟΥ (Απάντηση = ‘Ν’ Ή Απάντηση = ‘ν’) Β. ΔΙΑΒΑΣΕ Απάντηση Γ. ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ Δ. ΓΡΑΨΕ ‘Δώσε απάντηση:’ Χαρακτήρισε τα παρακάτω σαν σωστό ή λάθος 3. Οι εντολές που βρίσκονται σε ένα βρόχο ΟΣΟ ΕΠΑΝΑΛΑΒΕ εκτελούνται τουλάχιστον μία φορά. 4. Η τιμή του βήματος στην εντολή ΓΙΑ είναι υποχρεωτική να αναγράφεται. 5. Κάθε εντολή ΑΝ πρέπει να έχει την αντίστοιχη εντολή ΤΕΛΟΣ_ΑΝ. 6. Κάθε βρόχος που υλοποιείται με την εντολή ΟΣΟ ΕΠΑΝΑΛΑΒΕ μπορεί να γραφεί και με χρήση της εντολής ΓΙΑ. 7. Αν το Α έχει την τιμή 5 και το Β την τιμή 6 τότε η λογική έκφραση Α > 5 Ή Α < 3 ΚΑΙ Β > 5 είναι ψευδής. Διάλεξε ένα μεταξύ των προτεινόμενων 8. Ποιο από τα παρακάτω υπολογίζει το άθροισμα των περιττών αριθμών που υπάρχουν στους 100 πρώτους ακέραιους. Α. Άθροισμα < – 0 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 100 Άθροισμα < – Άθροισμα + Ι ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Β. Άθροισμα < – 0 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 100 ΜΕ_ΒΗΜΑ 2 Άθροισμα < – Άθροισμα + Ι ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Γ. ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 100 ΜΕ_ΒΗΜΑ 2 Άθροισμα < – 0 Άθροισμα < – Άθροισμα + Ι 6 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Δ. ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 100 ΜΕ_ΒΗΜΑ 2 Άθροισμα < – Ι ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ 9. Τι θα εκτυπώσει το παρακάτω τμήμα προγράμματος Α<–0 ΓΙΑ Ι ΑΠΟ 10 ΜΕΧΡΙ 20 ΜΕ_ΒΗΜΑ 10 Α<–Α+Ι^2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ Α Α. Ο Β. 100 Γ. 500 Δ. 400 10. Πόσες φορές θα εκτελεστεί η παρακάτω επανάληψη ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ Α<–0 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5 Α<– Α–1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΜΕΧΡΙΣ_ΟΤΟΥ Α = 0 Α. 10 Β. 0 Γ. 5 Δ. Άπειρες 11. Δίνονται οι παρακάτω εντολές Α<–1 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10 ΜΕ_ΒΗΜΑ 2 Α<–Α*Ι ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Ποιες από τις επόμενες ομάδες εντολών δίνουν στο Α την ίδια τιμή Α. Β. Α<–1 Α<–1 Ι <–1 Ι <–1 ΟΣΟ Ι <=10 ΕΠΑΝΑΛΑΒΕ ΟΣΟ Ι <=10 ΕΠΑΝΑΛΑΒΕ Ι <–Ι+2 Α<–Α*Ι Α<–Α*Ι Ι <–Ι+2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Γ. Α<–1 Ι <–1 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ Α<–Α*Ι Ι <–Ι+2 7 Δ. Α<–1 Ι <–1 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ Α<–Α*Ι Ι <–Ι+2 ΜΕΧΡΙΣ_ΟΤΟΥ Ι < 10 ΜΕΧΡΙΣ_ΟΤΟΥ Ι = 10 12. Πόσες φορές θα εκτελεστεί η παρακάτω επανάληψη ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 2 ΜΕ_ΒΗΜΑ 3 ΓΡΑΨΕ ‘Μήνυμα’ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Α. 2 Β. 0 Γ. 1 Δ. Άπειρες 13. ποια η λειτουργία του παρακάτω τμήματος προγράμματος Β < – 10 ΔΙΑΒΑΣΕ Α Β<–Α ΑΝ Α < 0 ΤΟΤΕ Β < – –Α ΤΕΛΟΣ_ΑΝ Α<–0 ΓΡΑΨΕ Β Α. Τυπώνει τον αριθμό που διάβασε Β. Τυπώνει την απόλυτη τιμή του αριθμού που διάβασε Γ. Τυπώνει πάντα την τιμή 0 Δ. Τυπώνει πάντα την τιμή 10 ΑΠΑΝΤΗΣΕΙΣ 1. β, ε, δ, α, γ 2. γ, δ, β, α 3. Λ, 4. Λ, 8. β, 9. γ, 8 5. Σ, 6. Λ, 7. Σ 10. δ, 11. β, 12. γ, 13. β ΤΕΣΤ5 9 ΑΠΑΝΤΗΣΕΙΣ 1. Δομή δεδομένων είναι ένα σύνολο αποθηκευμένων δεδομένων που υφίστανται επεξεργασία από ένα σύνολο λειτουργιών που καλούνται από το υπόλοιπο πρόγραμμα. 2. Οι δυναμικές δομές δεδομένων δεν αποθηκεύονται σε συνεχόμενες θέσεις μνήμης αλλά στηρίζονται στην τεχνική της λεγόμενης δυναμικής παραχώρησης μνήμης (dynamic memory allocation). 3. Οι πίνακες χρησιμεύουν για την αποθήκευση και διαχείριση δύο σπουδαίων δομών: της στοίβας και της ουράς. 4: Αντιγραφή, 5: Συγχώνευση 6: Διαχωρισμός, 7: Ώθηση, Απώθηση 8: Εισαγωγή, Εξαγωγή 9: Ταξινόμηση 10. Σ, 11. Λ, 14. α, γ, δ, ε, η 16. α, γ 10 12. Λ, 15. α, γ, ε 13. Σ ΤΕΣΤ6 Συμπλήρωσε τα κενά με τη σωστή λέξη που λείπει 1. Οι πίνακες οι οποίοι έχουν τα στοιχεία τους σε μία στήλη ονομάζονται …………… 2. Οι πίνακες είναι μία ………………. δομή δεδομένων. 3. Το αποτέλεσμα από τις παρακάτω εντολές είναι ο υπολογισμός του αθροίσματος ……………………. του πίνακα Α Άθροισμα <– 0 ΓΙΑ Ι ΑΠΟ 1 ΜΧΡΙ Ν Άθροισμα <– Άθροισμα + Α [Ι, Ι] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Χαρακτήρισε τα παρακάτω σαν σωστό ή λάθος 4. Οι πίνακες πρέπει να χρησιμοποιούνται πάντα όταν αυτό είναι δυνατό. 5. Η δήλωση των πινάκων που χρησιμοποιούνται σε ένα πρόγραμμα είναι υποχρεωτική. 6. Για την ταξινόμηση ενός πίνακα 100 στοιχείων μπορεί να χρησιμοποιηθεί μόνο μία μέθοδος. 7. Η χρήση των πινάκων σε ένα πρόγραμμα αυξάνει την απαιτούμενη μνήμη. Διάλεξε ένα μεταξύ των προτεινόμενων 8. Ποιες από τις παρακάτω εντολές μπορούν να τυπώσουν όλα τα στοιχεία ενός δισδιάστατου πίνακα Π, 2Χ2 Α. ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 2 Β. ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 2 ΓΡΑΨΕ Π [Ι, Ι] ΓΡΑΨΕ Π [Ι] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Γ. ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 2 ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 2 ΓΡΑΨΕ Π [Ι, J] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Δ. ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 2 ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 2 ΓΡΑΨΕ Π ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ 9. Ποιο αποτέλεσμα των παρακάτω εντολών στον πίνακα Α 8Χ10: ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 8 Άθροισμα <– 0 ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 10 Άθροισμα <– Άθροισμα + Α[Ι, J] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΜΟ <– Άθροισμα/10 ΓΡΑΨΕ ΜΟ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Α. Γράφει το μέσο όρο των στοιχείων του πίνακα Β. Γράφει τον μέσο όρο των στοιχείων κάθε γραμμής 11 Γ. Γράφει το μέσο όρο των στοιχείων κάθε στήλης Δ. Γράφει τον μέσο όρο της τελευταίας γραμμής 10. Ποιο είναι το αποτέλεσμα των παρακάτω εντολών ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10 Α [Ι] <– 10 + Ι ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΣΥΝ <– 0 ΓΙΑ Κ ΑΠΟ 1 ΜΕΧΡΙ 10 ΜΕ_ΒΗΜΑ 2 ΣΥΝ <– ΣΥΝ + Α[Κ] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ ΣΥΝ Α. 75 Β. 155 Γ. 50 Δ. 125 Διάλεξε όλα όσα χρειάζονται μεταξύ των προτεινόμενων 11. Τυπικές επεξεργασίες σε έναν πίνακα είναι: Α. Ταξινόμηση Β. Πρόσθεση στοιχείων Γ. Πολλαπλασιασμός στοιχείων Δ. Συγχώνευση Ε. Αναζήτηση 12. Επιλογή του καλύτερου αλγορίθμου ταξινόμησης εξαρτάται από Α. Τον τύπο δεδομένων που έχει ο πίνακας Β. Τη διάσταση του πίνακα Γ. Το πλήθος των στοιχείων του πίνακα Δ. Την αρχική διάταξη των στοιχείων ΑΠΑΝΤΗΣΕΙΣ 1. Μονοδιάστατοι 2. Στατική 3. Διαγωνίου 4. Λ, 5. Σ, 8. γ, 9. β, 11. α, β, δ, ε 12 6. Λ, 10. α 12. γ, δ 7. Σ ΤΕΣΤ7 13 ΑΠΑΝΤΗΣΕΙΣ 1. Πηγαίο 2. Ιεραρχική 3. Οπτικό, οδηγούμενο από τα γεγονότα 4. Σ, 5. Λ, 6. Λ, 7. Λ 8. α, 9. β, 10. γ, 11. α 12. β, γ, 14 13. α, β, γ, δ, 14. α., δ ΤΕΣΤ8 Συμπλήρωσε τα κενά με τη σωστή λέξη που λείπει 1. Η λίστα των παραμέτρων που υπάρχει στη δήλωση μίας διαδικασίας ονομάζεται λίστα …………………… παραμέτρων. 2. Τα δύο είδη υποπρογραμμάτων είναι οι ………………… και οι ………………. Χαρακτήρισε τα παρακάτω σαν σωστό ή λάθος 3. Μια διαδικασία και μια συνάρτηση μπορούν να εκτελούν ακριβώς τις ίδιες λειτουργίες. 4. Το πλήθος των τυπικών και των πραγματικών παραμέτρων πρέπει να είναι ίδιο. 5. Η ενεργοποίηση μίας συνάρτησης γίνεται με την εντολή ΚΑΛΕΣΕ. Διάλεξε ένα μεταξύ των προτεινόμενων 6. Όταν μία μεταβλητή ισχύει μόνο στο υποπρόγραμμα που ορίστηκε ονομάζεται Α. Τοπική Β. Καθολική Γ. Παράμετρος Δ. Τυπική 7. Τι θα τυπώσουν οι παρακάτω εντολές …... Α <– 5 Β <– 10 Γ <– 0 ΚΑΛΕΣΕ Διαδ1 (Α, Β) ΓΡΑΨΕ Α, Β, Γ …… ΔΙΑΔΙΚΑΣΙΑ Διαδ1 (Γ, Δ) …… ΑΡΧΗ Γ <– Γ – Δ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ Διαδ1 Α. 5, 10, 0 Β. 5, 10, –5 Γ. –5, 10, 0 8. Τι θα τυπώσουν οι παρακάτω εντολές …… Α <– 5 Β <– 10 ΚΑΛΕΣΕ Διαδ1 (Β, Α) ΓΡΑΨΕ Α, Β …… ΔΙΑΔΙΚΑΣΙΑ Διαδ1 (Α, Β) …… ΑΡΧΗ ΓΡΑΨΕ Α, Β 15 Δ. –5, 10, –5 Α <– Α – Β ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ Διαδ1 Α. 5, 10 5, 10 Β. 10, 5 5, 5 Γ. 5, 10 –5, 10 Δ. 10, 5 5, 10 9. Μερικά από τα πλεονεκτήματα του τμηματικού προγραμματισμού είναι Α. Λιγότερος χρόνος για την ανάπτυξη του προγράμματος. Β. Ευκολότερη διόρθωση. Γ. Ταχύτητα κατά την εκτέλεση. Δ. Χρήση αναδρομικών διαδικασιών. ΑΠΑΝΤΗΣΕΙΣ 1. Τυπικών 2. διαδικασίες, συναρτήσεις 3. Λ, 4. Σ, 6. α, 7. γ, 9. α, β, 16 5. Λ 8. β ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ ΒΙΒΛΙΟΥ ΚΑΘΗΓΗΤΗ 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ 1. Ο βαθμός ενός σπουδαστή για ένα μάθημα υπολογίζεται ως εξής: αν η διαφορά του βαθμού εργαστηρίου και του γραπτού βαθμού είναι μεγαλύτερη από 2 μονάδες, τότε αυξάνεται ή μειώνεται ανάλογα ο βαθμός εργαστηρίου έτσι ώστε η διαφορά τους να μην είναι μεγαλύτερη από 2 μονάδες, αλλιώς ο βαθμός εργαστηρίου δεν αλλάζει. Ο τελικός βαθμός είναι ο μέσος όρος των δύο βαθμών. Να γραφεί αλγόριθμος που θα διαβάζει το όνομα και τους 2 βαθμούς του σπουδαστή και στη συνέχεια θα εμφανίζει κατάλληλο μήνυμα για το αν πέρασε το μάθημα ή όχι (βάση=5) μαζί με το όνομά του. 2. Ένα ξενοδοχείο διαθέτει μονόκλινα και δίκλινα δωμάτια τα οποία τα νοικιάζει 35 και 50 Ευρώ αντίστοιχα για κάθε διανυκτέρευση. Αν κάποιος πελάτης θέλει να νοικιάσει δωμάτιο για πάνω από 4 ημέρες, τότε η χρέωση για κάθε επιπλέον διανυκτέρευση είναι 30 και 42 Ευρώ αντίστοιχα, ενώ σε περίπτωση που κάποιος νοικιάζει πάνω από 7 ημέρες τότε η τιμή των δωματίων για τις επιπλέον ημέρες είναι 25 και 30 Ευρώ. Επίσης ο πελάτης χρεώνεται 5 Ευρώ την ημέρα στην περίπτωση που θέλει να του παρέχουν και πρωινό. Να γραφεί αλγόριθμος ο οποίος θα διαβάζει το είδος δωματίου και τις ημέρες παραμονής που κάποιος πελάτης του ξενοδοχείου επιθυμεί να κλείσει καθώς και το αν επιθυμεί πρωινό και στην συνέχεια να εκτυπώνεται το τελικό κόστος παραμονής. Να χρησιμοποιηθεί αποκλειστικά η δομή επιλογής ΕΠΙΛΕΞΕ. 3. Ένα μουσικό συγκρότημα κάνει περιοδεία με συναυλίες σε διάφορες πόλεις της Ευρώπης και κρατά σε αρχείο το όνομα της πόλης, τα έξοδα για τη συναυλία καθώς και τα έσοδα από τα εισιτήρια. Να γίνει πρόγραμμα το οποίο θα διαβάζει επαναληπτικά τα δεδομένα για κάθε συναυλία και θα σταματά όταν εισαχθεί αντί για το όνομα μίας πόλης η αλφαριθμητική τιμή ‘τέλος περιοδείας’. Στο τέλος πρέπει να εμφανίζει: α) Τα συνολικά καθαρά έσοδα του συγκροτήματος. β) Το μέσο όρο εξόδων από κάθε συναυλία. γ) Το όνομα της πόλης στην οποία σημειώθηκε το μεγαλύτερο κέρδος. δ) Το όνομα της πόλης στην οποία σημειώθηκε το μικρότερο κέρδος. 4. Να αναπτυχθεί αλγόριθμος για τον υπολογισμό του παρακάτω αθροίσματος: Γ = 3/2 + 9/4 + 27/8 + 81/16 + … Η διαδικασία θα σταματά όταν κάποιος από τους όρους βρεθεί μεγαλύτερος του 100. Στη συνέχεια θα εμφανίζεται το άθροισμα. 5. Ένα ferry-boat κάνει συγκεκριμένο δρομολόγιο και μπορεί να μεταφέρει αυτοκίνητα, μοτοσικλέτες και φορτηγά. Να γραφεί αλγόριθμος ο οποίος: Α) Θα διαβάζει επαναληπτικά το βάρος σε κιλά και τον τύπο κάθε οχήματος που εισέρχεται στο ferry-boat για ένα συγκεκριμένο δρομολόγιο. Το βάρος που δίνεται πρέπει να είναι θετικός αριθμός ενώ ο τύπος τροχοφόρου θα δίνεται με τη βοήθεια των χαρακτήρων ‘α’, ‘μ’, 35 ‘φ’, για αυτοκίνητα, μοτοσικλέτες και φορτηγά αντίστοιχα (έλεγχος δεδομένων για το βάρος και τον τύπο). Β) Θα εμφανίζει κατάλληλο μήνυμα στον οδηγό για το κόστος της διαδρομής. Οι μοτοσικλέτες χρεώνονται με 25 Ευρώ, τα αυτοκίνητα με 58 Ευρώ και τα φορτηγά με 85 Ευρώ. Γ) Αφού εισέλθει το πρώτο όχημα θα ερωτάται ο καπετάνιος του ferry-boat αν μπορεί να εισέλθει άλλο όχημα πάνω στο πλοίο. Ανάλογα και με την απάντησή του θα συνεχίζεται ή όχι η διαδικασία φόρτωσης. Δ) Τέλος θα εμφανίζεται το συνολικό κέρδος από τη διαδρομή, το πλήθος των μοτοσικλετών, των αυτοκινήτων και των φορτηγών που επρόκειτο να ταξιδέψουν καθώς και το συνολικό βάρος σε τόνους. Ε) Ποια από τις τρεις δομές επανάληψης χρησιμοποιήσατε για την ανάπτυξη του παραπάνω αλγόριθμου. Δικαιολογείστε την επιλογή σας. 6. Μία επαγγελματική ομάδα ποδοσφαίρου δίνει 300 Ευρώ για κάθε αγώνα σε όλους τους παίχτες της. Επίσης δίνει bonus σε κάθε παίχτη ανάλογα με τα λεπτά συμμετοχής και τα τέρματα τα οποία πετυχαίνει, σύμφωνα με τους παρακάτω πίνακες (κλιμακωτοί πίνακες): Μέσος όρος συμμετοχής ανα αγώνα Bonus ανα λεπτό συμμετοχής έως και 15’ 0 Ευρώ άνω των 15 έως και 45’ 10 Ευρώ άνω των 45 έως και 70’ 12 Ευρώ άνω των 70’ 15 Ευρώ Τέρματα Χρήματα ανα τέρμα 1 έως 3 40 Ευρώ 4 έως 6 80 Ευρώ άνω των 6 100 Ευρώ Στο πρωτάθλημα μετά την ολοκλήρωση της ένατης αγωνιστικής, η διοίκηση της ομάδας αποφάσισε να υπολογίσει κάποια στοιχεία. Να αναπτυχθεί αλγόριθμος, ο οποίος θα διαβάζει το όνομα, τα συνολικά λεπτά συμμετοχής στους 9 αγώνες καθώς και τα τέρματα που έχει πετύχει κάθε παίχτης (να γίνεται έλεγχος των λεπτών και των τερμάτων. Τα τέρματα πρέπει να είναι θετικός αριθμός ή μηδέν και τα λεπτά συμμετοχής από 0’ μέχρι και 810’) και θα εμφανίζει: 1) Το μέσο όρο συμμετοχής του κάθε παίχτη. 2) Τα χρήματα τα οποία έχει κερδίσει ως τώρα. 3) Το όνομα του παίχτη με τα περισσότερα λεπτά συμμετοχής. 4) Το ποσοστό των παιχτών που δεν έχουν σκοράρει. 36 7. Να αναπτύξετε αλγόριθμο ο οποίος κατά την εκτέλεσή του θα εμφανίζει στην οθόνη ένα μενού δυο επιλογών το οποίο θα δίνει στο χρήστη τη δυνατότητα να επιλέξει τη λειτουργία που θέλει να εκτελέσει με τα κατάλληλα μηνύματα . Το μενού θα έχει την παρακάτω μορφή: 1. Υπολογισμός λογαριασμού ΔΕΗ 2. Υπολογισμός φόρου Πληκτρολογήστε τον αριθμό της επιλογής σας. Αν ο χρήστης πληκτρολογήσει «1» ο αλγόριθμος θα ζητάει την κατανάλωση ρεύματος και τα τετραγωνικά μέτρα του διαμερίσματος και θα υπολογίζει και θα εμφανίζει α) τη μηνιαία χρέωση για τη ΔΕΗ, β) τα δημοτικά τέλη που αντιστοιχούν και γ)τη συνολική χρέωση στο λογαριασμό. Αν ο χρήστης πληκτρολογήσει «2» ο αλγόριθμος θα ζητάει το ετήσιο εισόδημα του χρήστη και θα υπολογίζει και θα εμφανίζει το φόρο εισοδήματος. Οι χρεώσεις για το ρεύμα και το φόρο είναι κλιμακωτές και δίνονται στους παρακάτω πίνακες. Το δημοτικό τέλος που πληρώνεται μαζί με το ρεύμα υπολογίζεται για κάθε τετραγωνικό μέτρο και δεν χρεώνεται κλιμακωτά. ΧΡΕΩΣΗ ΡΕΥΜΑΤΟΣ KWh ΦΟΡΟΣ ΕΙΣΟΔΗΜΑΤΟΣ ΔΗΜΟΤΙΚΑ ΤΕΛΗ 0 έως και 250 Ευρώ/K Wh 0,08 από έως 0,13 πάνω από 11000, έως και 25000 10% από 51 έως και 100 0,20 Πάνω από 1000 0,20 πάνω από 25000 25% πάνω από 100 0,25 251 και 1000 Εισόδημα Συντελεστής Τετρ. Μέτρα Ευρώ/Τετρ. 0 έως και 11000 0 0 έως και 50 0,15 8. Δίνεται το παρακάτω τμήμα αλγορίθμου: Χ←3 Υ←4 Ζ←2 Για Ι από 2 μέχρι 6 με_βήμα 2 Αν Ι ≤ 4 τότε Όσο Υ ≤ 6 επανάλαβε Υ←Υ+2 Χ←Χ+1 Αν Χ > 6 τότε Εκτύπωσε Χ, Υ Τέλος_αν Χ←Χ+2 Τέλος_επανάληψης αλλιώς Αρχή_επανάληψης 37 Ζ←Ζ–1 Χ←Χ+1 Εκτύπωσε Ζ μέχρις_ότου Ζ = 0 ή Ζ = -1 Τέλος_αν Υ←Υ–2 Τέλος_επανάληψης Ποιες είναι οι τιμές των μεταβλητών Χ, Υ και Ζ που θα εκτυπωθούν κατά την εκτέλεση του παραπάνω τμήματος αλγορίθμου; Να γίνει το διάγραμμα ροής του αλγόριθμου. 9. Μια εταιρεία κινητής τηλεφωνίας ακολουθεί ανά μήνα την πολιτική τιμών δύο προγραμμάτων “Πρόγραμμα 1” και “Πρόγραμμα 2” που φαίνεται στους παρακάτω πίνακες : Πρόγραμμα 1 Πάγιο 10 € Μήνυμα SMS 0.08 € Χρόνος τηλεφωνημάτων (λεπτά) Χρονοχρέωση (€ / λεπτό) 1 - 40 Χωρίς χρέωση Πάνω από 40 – 90 0.23 € Πάνω από 90 – 120 0.21 € Πάνω 0.19 € από 120 Πρόγραμμα 2 Πάγιο 15 € Μήνυμα SMS 0.08 € Χρόνος τηλεφωνημάτων (λεπτά) Χρονοχρέωση (€ / λεπτό) 1 - 60 Χωρίς χρέωση Πάνω από 60 – 120 0.20 € Πάνω 0.19 € από 120 Να γραφεί πρόγραμμα το οποίο: (Α) να διαβάζει για κάθε συνδρομητή το είδος του προγράμματός του (1 ή 2), τη χρονική διάρκεια των τηλεφωνημάτων σε λεπτά και τα μηνύματα που έστειλε σε διάρκεια ενός μηνός. (Β) να υπολογίζει τη μηνιαία χρέωση του συνδρομητή κλιμακωτά. 38 (Γ) να εμφανίζει τη μηνιαία χρέωση του συνδρομητή με το ΦΠΑ 19%. Το πρόγραμμα να τερματίζει όταν δοθεί ως είσοδος μη αποδεκτό είδος προγράμματος. 10. 1) Δίνεται το ακόλουθο τμήμα αλγορίθμου κωδικοποιημένο σε ψευδογλώσσα: Διαβασε κ ι←1 Αρχή_επανάληψης Εμφάνισε ι ι ← ι+1 Μέχρις_ότου ι>κ Να γραφτεί τμήμα αλγορίθμου που θα δίνει την ίδια έξοδο για κάθε τιμή του κ που δίνεται ως είσοδος χρησιμοποιώντας τη Για αντί της εντολής Αρχή_επανάληψης.. Μέχρις_ότου. Να γίνει το διάγραμμα ροής. 2) Δίνεται το ακόλουθο τμήμα αλγορίθμου κωδικοποιημένο σε ψευδογλωσσα: σ←0 μ←0 Αρχή_επανάληψης Διαβασε χ Σ ← Σ +χ μ ← μ+1 Μέχρις_ότου (σ>=1000 ή μ=50) Εμφάνισε Σ, μ Να γραφτεί τμήμα αλγορίθμου που θα δίνει την ίδια έξοδο για κάθε είσοδο χρησιμοποιώντας τη "Όσο .. επανάλαβε" αντί της εντολής «Αρχή_επανάληψης.. Μέχρις_ότου». Να γίνει το διάγραμμα ροής. 11. Δίνεται ο παρακάτω αλγόριθμος: Αλγόριθμος Θέμα_2 Διάβασε Ν υ←Ν x←1 Αρχή_επανάληψης x←x+1 Όσο υ mod x = 0 επανάλαβε Εμφάνισε x υ ← υ div x 39 Τέλος_επανάληψης Μέχρις_ότου υ = 1 Τέλος Θέμα_2 Α) Τι θα εκτυπώσει αν δοθεί σαν είσοδος ο αριθμός 60; Β) Να γίνει διάγραμμα ροής 12. Το παιχνίδι «πάνω κάτω» παίζεται ως εξής: Προσπαθούμε να μαντέψουμε έναν προεπιλεγμένο αριθμό μέσα σε ένα εύρος (θεωρείστε το εύρος 0 – 1000). Σε κάθε προσπάθειά μας παίρνουμε την πληροφορία αν ο αριθμός που ζητάμε είναι μεγαλύτερος ή μικρότερος από αυτόν που δώσαμε. Α) Ζητείται να γραφεί αλγόριθμος για ένα αντίστοιχο παιχνίδι που να παίζεται με δύο παίχτες. Πιο συγκεκριμένα: Ο πρώτος παίχτης εισάγει στον αλγόριθμο το «μυστικό αριθμό», ο οποίος πρέπει να ανήκει στο διάστημα 0 – 1000 (έλεγχος εγκυρότητας έτσι ώστε να ανήκει στο συγκεκριμένο διάστημα και να είναι ακέραιος). Ο δεύτερος παίκτης έχει στη διάθεσή του 10 προσπάθειες για να βρει το μυστικό αριθμό, διαφορετικά το παιχνίδι τελειώνει και ο παίκτης χάνει. Εισάγει λοιπόν διαδοχικά αριθμούς προσπαθώντας να μαντέψει τον σωστό. Για κάθε έναν από αυτούς τους αριθμούς που δίνει σαν είσοδο ο δεύτερος παίκτης, ο αλγόριθμος εμφανίζει μήνυμα σχετικά με το αν είναι μικρότερος ή μεγαλύτερος από το μυστικό αριθμό. Μετά το τέλος του παιχνιδιού ο αλγόριθμος θα πρέπει : 1. Αν ο δεύτερος παίκτης τελικά κέρδισε, να εμφανίζει: i. κατάλληλο μήνυμα πως κέρδισε ii. σε ποια προσπάθεια μάντεψε το μυστικό αριθμό 2. Αν ο δεύτερος παίκτης τελικά δεν κέρδισε, αν εμφανίζει: i. κατάλληλο μήνυμα πως έχασε ii. πόσο κοντά πλησίασε το μυστικό αριθμό. Δηλαδή τον πλησιέστερο αριθμό στο μυστικό αριθμό που έδωσε Β) Τροποποιήστε τον προηγούμενο αλγόριθμο έτσι ώστε να μετά το τέλος του παιχνιδιού να ρωτάει αν θα επαναληφθεί το παιχνίδι. Η απάντηση θα ελέγχεται αν είναι «ΝΑΙ» ή «ΌΧΙ». Στην περίπτωση που η απάντηση είναι «ΝΑΙ» το παιχνίδι θα επαναλαμβάνεται. Στην περίπτωση που η απάντηση είναι «ΌΧΙ» ο αλγόριθμος θα τερματίζει. Μετά το τέλος της διαδικασίας ο αλγόριθμος να εμφανίζει το ποσοστό των παιχνιδιών στα οποία ο δεύτερος παίχτης βρήκε τον μυστικό αριθμό. 13. Δίνεται ο παρακάτω αλγόριθμος Αλγόριθµος Eμφάνιση xÅ2 Αρχή_ επανάληψης Αν x<>8 ή x<>17 τότε 40 Εμφάνισε x Αλλιώς yÅ x mod 3 Εμφάνισε y Τέλος _αν x Å x +3 Μέχρις_ότου x >=20 Τέλος Eµφάνιση 1. Πόσες φορές θα εκτελεστεί η εντολή Εμφάνισε x και πόσες η εντολή Εμφάνισε y 2. Να μετατραπεί ο παραπάνω αλγόριθμος σε ισοδύναμο με τη χρήση της εντολής Όσο … επανάλαβε 3. Να μετατραπεί ο παραπάνω αλγόριθμος σε ισοδύναμο με τη χρήση της εντολής Για …από …μέχρι 4. Να γίνει το διάγραμμα ροής 14. Δίνεται το παρακάτω τμήμα αλγορίθμου: χ<--1 ψ <-- 0 ένδειξη<--Αληθής Αρχή_Επανάληψης Αν ένδειξη = αληθής τότε εμφάνισε χ χ<-- χ+2 ένδειξη <--ψευδής αλλιώς εμφάνισε ψ ψ <-- ψ + 2 ένδειξη <--αληθής Τέλος_αν Μεχρις_ότου (χ + ψ > 9) Α) τι θα εμφανιστεί στην έξοδο κατά την εκτέλεσή του; Β) να γίνει το διάγραμμα ροής 15. Για την εξόφληση ενός δανείου σε μία τράπεζα η συμφωνία είναι ο δανειολήπτης να δίνει στην τράπεζα ένα ποσό κάθε μήνα μέχρι εξαντλήσεως της οφειλής έχοντας το δικαίωμα να εξοφλήσει το αναγκαίο ποσό μέσα σε 25 έτη. Στο τέλος κάθε έτους το ποσό που απομένει επανατοκίζεται με επιτόκιο 8%. 41 Να δοθεί αλγόριθμος ο οποίος αρχικά να διαβάζει το αρχικό ποσό του δανείου και στην συνέχεια για κάθε μήνα: 1. να διαβάζει το ποσό που δίνει ο δανειολήπτης και να ελέγχεται ως προς την ορθότητά του (να μην υπερβαίνει το ποσό που απομένει). 2. να εμφανίζει μήνυμα που να αναφέρει το υπόλοιπο μετά από κάθε τέτοια συναλλαγή 3. να επανατοκίζει το ποσό που απομένει όταν συμπληρώνεται ένα έτος. 4. να εμφανίζει πόσος χρόνος σε μήνες απομένει στον δανειολήπτη για την εξόφληση του δανείου Ο αλγόριθμος να τερματίζει είτε με την εξόφληση του δανείου εμφανίζοντας ανάλογο μήνυμα είτε ένα μήνα πριν τη λήξη της προθεσμίας εμφανίζοντας το ποσό που απομένει να πληρωθεί. Η παραπάνω διαδικασία πρέπει να εκτελείτε για πλήθος δανειοληπτών όπου θα πρέπει για τον καθένα να διαβάζει, εκτός από το αρχικό δάνειο, και το όνομά του και να τερματίζει όταν δοθεί ως όνομα το κενό. Στο τέλος θα εμφανίζει το όνομα του δανειολήπτη που έλαβε το μεγαλύτερο δάνειο καθώς και το όνομα του δανειολήπτη που εξόφλησε σε συντομότερο χρόνο τα δάνειό του. 16. Α) Δί νεται η δο μή επανάληψης: Y Å 2 X Å 1 Ό σ ο X<= 25 Ε πα νάλα βε ΥÅ Χ+4 ΧÅ Χ+3 ΖÅ Υ+ Χ^2 Τ έλ ο ς_ επανάληψης Ε μ φά νι σ ε Ζ Να μετατρέψετε τη ν παραπά νω δο μή σ ε ι σ ο δ ύ να μη δ ομ ή ε πα νά λ η ψη ς Γι α ...α πό .. μέχ ρι και Αρχή _ επα νάλ ηψ η ς. Β) Δίνεται το παρακάτω τμήμα αλγορίθμου. Να βρείτε την τιμή που θα μπορούσε να έχει τυπικά η μεταβλητή z, αν γνωρίζουμε ότι μετά την εκτέλεση του η τιμή της μεταβλητής a είναι 3. (Εξηγήστε αναλυτικά την απάντηση σας) aÅ0 cÅ0 Για i από z μέχρι 4 με_βήμα -2 cÅc+1 Αν c mod 2 = 1 τότε 42 aÅa+1 τέλος_αν Τέλος_επανάληψης 17. Α. Τι υπολογίζει και τι εμφανίζει το παρακάτω τμήμα αλγορίθμου όταν δοθούν ως είσοδοι διαδοχικά οι τιμές: 5, 8, 6, 9, 0; Να θεωρήσετε ότι x ακέραιος αριθμός. Αλγόριθμος Θ2 kÅ1 SÅ0 Γ Å1 Διάβασε x Όσο k<=100 και x<>0 επανάλαβε Αν x mod 2 = 0 τότε S Å S+x Τέλος_αν Αν x mod 3 = 0 τότε Γ Å Γ*x Τέλος_αν k Å k+1 Διάβασε x Τέλος_επανάληψης Εμφάνισε S, Γ Τέλος Θ2 Β. Να μετατρέψετε το παραπάνω τμήμα αλγορίθμου σε ισοδύναμο με χρήση της εντολής “Αρχή_επανάληψης … Μέχρις_ότου”. 18. Για τις ανάγκες του εφετινού διαγωνισμού ΑΣΕΠ έχουν δεσμευτεί 350 αίθουσες διαφορετικής χωρητικότητας σε εξεταστικά κέντρα σε ολόκληρη τη χώρα. Ο αριθμός των επιτηρητών που απαιτούνται ανά αίθουσα καθορίζεται από το πλήθος των εξεταζομένων που βρίσκονται σε αυτή, σύμφωνα με τον παρακάτω πίνακα: 43 Άτομα που διαγωνίζονται Αριθμός επιτηρητών μέχρι και 12 1 από 13 μέχρι και 22 2 περισσότερα από 22 3 Να αναπτύξετε αλγόριθμο ο οποίος: α. Για κάθε αίθουσα, i. θα διαβάζει επαναληπτικά τα ονόματα των εξεταζομένων που θα βρίσκονται σε αυτήν. Η επαναληπτική διαδικασία πρέπει να τερματίζεται μόλις εισαχθεί ως όνομα εξεταζομένου το λεκτικό "τέλος". ii. θα εκτυπώνεται το πλήθος των επιτηρητών που απαιτούνται για αυτήν. β. θα εκτυπώνει το μικρότερο πλήθος εξεταζομένων που θα εξεταστούν σε κάποια αίθουσα (μπορεί να είναι και περισσότερες από μια). γ. θα εκτυπώνει το πλήθος των επιτηρητών που απαιτούνται συνολικά για τη διενέργεια των εξετάσεων. Παρατήρηση: η καταχώρηση των ατόμων για κάθε αίθουσα είναι σωστή, δεν υπάρχει περίπτωση να παραβιάζεται η χωρητικότητα κάποιας αίθουσας. 19. Δίνεται το παρακάτω τμήμα αλγορίθμου, όπου Α, Μ θετικές ακέραιες σταθερές Για i από A μέχρι M με_βήμα 2 Εμφάνισε i Τέλος_Επανάληψης 1. Πόσες φορές θα εκτελεστεί η εντολή Εμφάνισε i αν α. M = A + 3 β. Μ = Α + 4 γ. Α = Μ + 3 δ. Α = Μ 2. Ποια σχέση πρέπει να έχουν οι αριθμοί Α, Μ έτσι ώστε η εντολή Εμφάνισε i να εκτελεστεί : α. Τουλάχιστον μια (1) φορά. β. Τουλάχιστον 10 (δέκα) φορές. γ. Το πολύ τρεις (3) φορές. δ. Ακριβώς επτά (7) φορές. 20. Δίνεται το παρακάτω τμήμα αλγορίθμου με αριθμημένες εντολές για εύκολη αναφορά σε αυτές. Κάθε εντολή περιέχει ένα ή δύο κενά (σημειωμένα με …), που το καθένα αντιστοιχεί σε μία σταθερά ή μία μεταβλητή ή έναν τελεστή. Επίσης δίνεται πίνακας όπου κάθε γραμμή αντιστοιχεί σε μία εντολή του τμήματος αλγορίθμου και κάθε στήλη σε μία θέση μνήμης (μεταβλητή). Η κάθε γραμμή του πίνακα παρουσιάζει το αποτέλεσμα που έχει η εκτέλεση της αντίστοιχης εντολής στη μνήμη: συγκεκριμένα, δείχνει την τιμή της μεταβλητής την οποία επηρεάζει η εντολή. Αν κατά την εκτέλεση της εντολής η μεταβλητή αλλάζει τιμή περισσότερες 44 από μια φορές τότε φαίνονται όλες οι τιμές με την αντίστοιχη σειρά. Δηλαδή η τελευταία εντολή είναι και η τελική τιμή της μεταβλητής. Εντολές Μνήμη Α 1 AÅ … 2 B Å … – 12 3 Γ Å … mod … 4 X Å … Ψευδής Αν … Β Επανάληψη Γ Χ Υ Σ 10 0 13 1 0 Αληθής <> Ψευδής τότε … Å 0 5 … Å 10 αλλιώς Α Å 10 Τέλος_Αν 6 ΣÅ1 5 1η 13 2η 25 3η iÅ… Όσο i <= … επανάλαβε ΣÅΣ + i i Å i + … Τέλος_επανάληψης ΓÅ1 Για i από … μέχρι … με_βήμα 7 14 1η 37 2η … ΓÅΓ+i Τέλος_επανάληψης Να γράψετε στο τετράδιό σας τον αριθμό της καθεμιάς εντολής και δίπλα να σημειώσετε τη σταθερά, τη μεταβλητή, ή τον τελεστή που πρέπει να αντικαταστήσει το κάθε κενό της εντολής ώστε να έχει το αποτέλεσμα που δίνεται στον πίνακα, ως εξής: Για τις εντολές 1, 6 και 7 να συμπληρώσετε με σταθερές τιμές. Για την εντολή 4 να συμπληρώσετε με τελεστή και για τις 2, 3, 5 εντολές να συμπληρώσετε με μεταβλητές. 21. Ο παρακάτω αλγόριθμος διαβάζει κατά σειρά το όνομα, το φύλο και το βαθμό κάποιων μαθητών και πραγματοποιεί κάποιες επεξεργασίες. Αλγόριθμος Θέμα_2 m Å -1 45 SÅ0 πÅ0 Για ι από 1 μέχρι 100 Διάβασε όνομα Αρχή επανάληψης Διάβασε φύλο Μέχρις_ότου φύλο = “αγόρι” ή φύλο = “κορίτσι” Αρχή επανάληψης Διάβασε βαθμός Μέχρις_ότου βαθμός > 0 και βαθμός <=20 Αν φύλο = “αγόρι” τότε SÅS+βαθμός πÅπ+1 αλλιώς Αν βαθμός>m τότε m Å βαθμός m_ον Å όνομα Τέλος_αν Τέλος_αν Τέλος_επανάληψης Αν π<>0 τότε Μ_ΤÅS/π Εμφάνισε Μ_Τ Τέλος_αν Εμφάνισε m, m_ον Τέλος Θέμα_2 Αφού κατανοήσετε τη λειτουργία του απαντήστε τα παρακάτω ερωτήματα: 1. Για πόσους μαθητές διαβάζει τα στοιχεία ο αλγόριθμος; 2. Τι υπολογίζει η μεταβλητή S και τι υπολογίζει η μεταβλητή π; 3. Τι υπολογίζει η μεταβλητή Μ_Τ; 4. Αν για κάποιο μαθητή επιχειρηθεί να δοθούν ως στοιχεία εισόδου οι εντός εισαγωγικών τιμές: «Παπαθανασίου ΧΥ 17» θα συμπεριληφθούν τα στοιχεία του μαθητή στην επεξεργασία; Να αιτιολογήσετε την απάντηση. 5. Αν για κάποιο μαθητή επιχειρηθεί να δοθούν ως στοιχεία εισόδου οι εντός εισαγωγικών τιμές: «Πανταζόπουλος κορίτσι 25» θα συμπεριληφθούν τα στοιχεία του στην επεξεργασία; Να αιτιολογήσετε την απάντηση. 6. Αν για κάποιο μαθητή επιχειρηθεί να δοθούν ως στοιχεία εισόδου οι εντός εισαγωγικών τιμές: «Παπάζογλου αγόρι 0» θα συμπεριληφθούν τα στοιχεία του μαθητή στην επεξεργασία; Να αιτιολογήσετε την απάντηση. 46 7. Να προσθέσετε τις κατάλληλες εντολές στον παραπάνω αλγόριθμο έτσι ώστε να υπολογίζει και να εμφανίζει το πλήθος των κοριτσιών. 8. Ποια επεξεργασία πραγματοποιεί ο αλγόριθμος για τα κορίτσια; 9. Ο παραπάνω αλγόριθμος έχει ένα λάθος στην περίπτωση που και οι 100 μαθητές είναι αγόρια. Εντοπίστε το. Διορθώστε το. 10. Οι μεταβλητές m και m_ον τι υπολογίζουν ; 22. Να μετατρέψετε το παρακάτω τμήμα αλγορίθμου από ψευδογλώσσα σε ΓΛΩΣΣΑ: Αλγόριθμος Υπολογισμός Για Ι από 1 μέχρι 90 Αρχή_επανάληψης Διάβασε Φ[Ι] Μέχρις_ότου Φ[Ι] = «Α» ή Φ[Ι] = «Κ» Τέλος_επανάληψης Πλήθος Å 0 Για Ι από 1 μέχρι 90 Αν Φ[Ι] = «Α» τότε Πλήθος Å Πλήθος + 1 Τέλος_αν Τέλος_επανάληψης ποσ Å πλήθος * 100 / 90 Εμφάνισε «ΑΓΟΡΙΑ», ποσ Τέλος Υπολογισμός 23. Μία τράπεζα παρέχει στους πελάτες της κάρτα ανάληψης μετρητών. Για την ανάληψη χρημάτων ο κάτοχος διαθέτει τετραψήφιο κωδικό, και αν κατά τη διάρκεια της διαδικασίας εισαχθεί τρεις φορές λάθος κωδικός, τότε η κάρτα ακυρώνεται αυτόματα. Το δεύτερο ψηφίο του κωδικού (1, 2 ή 3) δείχνει το όριο ανάληψης μετρητών σε διάστημα μίας ημέρας. Αν ο αριθμός είναι 1 τότε το όριο είναι στα 1000 Ευρώ, αν είναι 2 τότε το όριο είναι 2000 Ευρώ ενώ αν ο αριθμός 3 σημαίνει ότι δεν υπάρχει όριο ανάληψης. Ένα φωτοκύτταρο διαβάζει τον κωδικό της κάρτας και τα χρήματα που έχει κάποιος πελάτης στο λογαριασμό και στη συνέχεια ζητά από τον πελάτη τον κωδικό. Αν η κάρτα δεν ακυρωθεί και συνεχιστεί η διαδικασία εμφανίζει μήνυμα στον πελάτη με τα χρήματα που διαθέτει ο λογαριασμός και το επιτρεπτό ποσό ανάληψης. Στη συνέχεια το ΑΤΜ ζητά από τον πελάτη το ποσό ανάληψης που επιθυμεί. Μετά την ανάληψη θα εμφανίζεται το υπόλοιπο του λογαριασμού και πόσα χρήματα μπορεί να τραβήξει ακόμα για τη συγκεκριμένη ημέρα. Αν ο πελάτης δώσει τρεις φορές λάθος κωδικό εμφανίζει μήνυμα ακύρωσης της κάρτας. Να γραφεί πρόγραμμα που θα προσομοιώνει την παραπάνω διαδικασία. 47 24. Να γραφεί πρόγραμμα το οποίο δέχεται δύο ακέραιους αριθμούς α και β. Στη συνέχεια να εμφανίζονται οι πρώτοι αριθμοί που βρίσκονται μεταξύ του α και του β, χωρίς το α και το β (πρώτοι ονομάζονται οι αριθμοί που διαιρούνται ακριβώς μόνο με τον εαυτό τους και το 1, π.χ. 17). 25. Δίνεται το παρακάτω τμήμα αλγορίθμου: ΓÅ1 SÅ0 λÅ0 κÅ0 ωÅ0 πÅ0 Αρχή_επανάληψης Αρχή _επανάληψης Διάβασε x Μέχρις_ότου x>=0 λÅλ+1 Αν x mod 2 = 0 τότε πÅπ+1 SÅS+x αλλιώς_αν x mod 3 = 0 τότε ΓÅΓ*x ωÅω+1 αλλιώς κÅκ+1 Τέλος_αν Εμφάνισε “Θέλετε να εισάγετε άλλο αριθμό;” Διάβασε απάντηση Μέχρις_ότου απάντηση= “όχι” Αν π<>0 τότε ΜÅS/π Τέλος_αν Εμφάνισε M, Γ, κ, λ, ω Αφού κατανοήσετε την λειτουργία του παραπάνω αλγορίθμου απαντήστε στις παρακάτω ερωτήσεις : 1. Αν κατά την ερώτηση «Θέλετε να εισάγετε άλλο αριθμό;» ο χρήστης εισάγει το κείμενο «Δεν θέλω» θα τερματίσει ο εξωτερικός βρόχος; 2. Αν εισαχθεί στη μεταβλητή x ο αριθμός -2 θα γίνει αποδεκτός για επεξεργασία; 3. Εισάγετε 3 αριθμούς που θα αυξήσουν τη μεταβλητή π. 48 4. Εισάγετε 3 αριθμούς που θα αυξήσουν τη μεταβλητή κ. 5. Τι υπολογίζει η μεταβλητή π; 6. Τι υπολογίζει η μεταβλητή κ; 7. Τι υπολογίζει η μεταβλητή Γ; 8. Τι υπολογίζει η μεταβλητή Μ; 9. Μπορεί να εισαχθεί κάποια τιμή που να αυξήσει τις τιμές και των 3 μεταβλητών λ, π και κ; 10. Ο αριθμός 6 αυξάνει τη μεταβλητή ω; 26. Δίνεται το παρακάτω τμήμα αλγορίθμου : ΧÅ8 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΙΑ Υ ΑΠΟ 7 ΜΕΧΡΙ 2 ΜΕ_ΒΗΜΑ -2 ΧÅΧ-2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ Χ ΜΕΧΡΙΣ_ΟΤΟΥ Χ <0 1) Πόσες φορές θα εκτελεστεί η εντολή Χ Å Χ – 2 2) Πόσες φορές θα εκτελεστεί η εντολή ΓΡΑΨΕ Χ 3) Να μετατρέψετε το παραπάνω τμήμα αλγορίθμου κάνοντας αποκλειστική χρήση της εντολής ΟΣΟ … ΕΠΑΝΑΛΑΒΕ 27. Δίνεται ο παρακάτω αλγόριθμος: Αλγόριθμος Θέμα_2 ΑÅ 0 ΚÅ 0 Αρχή_επανάληψης Αρχή_επανάληψης Διάβασε Χ Μέχρις_ότου Χ >0 ΚÅΚ+Χ Α Å Α +1 Διάβασε Γ Μέχρις_ότου Γ= ’Ο’ ή Γ= ’ο’ ΛÅΚ/Α 49 Εμφάνισε Κ, Λ Τέλος Θέμα_2 1) Ποιες τιμές είναι αποδεκτές για τη μεταβλητή Χ ; 2) Τι τύπου μεταβλητή πρέπει να είναι η Γ ; 3) Τι υπολογίζουν οι μεταβλητές Α, Κ και Λ ; 4) Πότε τερματίζει ο εξωτερικός επαναληπτικός βρόχος του παραπάνω αλγόριθμου ; 5) Υπάρχει περίπτωση οι εντολές του αλγορίθμου να μην εκτελεστούν καμία φορά ; 6) Ποια είναι τα αποτελέσματα που θα δώσει στην έξοδο ο παραπάνω αλγόριθμος αν δώσουμε στην μεταβλητή Χ κατά σειρά τις τιμές 5, 7,-2, 4, 8 και στη μεταβλητή Γ την τιμή ‘Ο’ όταν η μεταβλητή Χ πάρει την τιμή 8 ; 7) Αν θελήσετε να τερματίζει ο αλγόριθμος και σε περίπτωση που οι αριθμοί που θα δοθούν φτάσουν τους 100 τι θα έπρεπε να συμπληρώσετε ; 28. Να μετατρέψετε τον παρακάτω αδόμητο αλγόριθμο, σε αλγόριθμο που ακολουθεί τις αρχές του δομημένου προγραμματισμού Αρχή Αν συνθήκη1 τότε Αν συνθήκη2 τότε Εντολή1 Πήγαινε στην εντολή3 Τέλος_αν Εντολή2 Εντολή3 Πήγαινε στην αρχή Τέλος_αν Εντολή4 Εντολή5 Τέλος 29. Δίνεται το παρακάτω τμήμα αλγορίθμου σε φυσική γλώσσα κατά βήματα. Χρησιμοποιώντας κωδικοποίηση, να μετατραπεί σε αλγόριθμο που ακολουθεί τις αρχές του δομημένου προγραμματισμού Βήμα 1 Θέσε Σ=0 Βήμα 2 Θέσε Ι=1 Βήμα 3 Αν το Ι < = 10 τότε πήγαινε στο Βήμα 4, αλλιώς πήγαινε στο Βήμα 8 Βήμα 4 Διάβασε Χ Βήμα 5 Θέσε Σ=Σ+Χ Βήμα 6 Θέσε Ι=Ι+1 50 Βήμα 7 Πήγαινε στο Βήμα 3 Βήμα 8 Τύπωσε το Σ 30. Σε μία ουρά αναμονής που υλοποιείται σε έναν πίνακα 10 θέσεων έρχονται τα παρακάτω προγράμματα με την σειρά που αναφέρονται: Microsoft Word Microsoft Excel Internet Explorer Αριθμομηχανή Media Player 1. Να σχεδιάσετε την μορφή του πίνακα – ουρά μετά την εισαγωγή σε αυτή των παραπάνω προγραμμάτων. Να αναφέρετε επίσης και τις θέσεις του/των δεικτών στον πίνακα – ουρά. 2. Από την ουρά αφαιρούνται δύο προγράμματα. Ποια είναι αυτά και ποιες είναι οι θέσεις του/των δεικτών στον πίνακα – ουρά μετά τις διαγραφές; 3. Στην ουρά προστίθενται τα προγράμματα Γλώσσα, Γλωσσομάθεια με την σειρά που αναφέρθηκαν. Να σχεδιαστεί ο πίνακας – ουρά μετά τις εισαγωγές και να αναφερθούν οι θέσεις του/των δεικτών. 4. Πόσα και ποια προγράμματα πρέπει να κλείσει ο χρήστης του υπολογιστή για να μπορέσει να χρησιμοποιήσει το πρόγραμμα Γλώσσα; 31. Σε µία στοίβα 10 θέσεων έχουν τοποθετηθεί διαδοχικά τα στοιχεία: Ζ, Χ, Β, Θ, Κ στην πρώτη, δεύτερη, τρίτη, τέταρτη και πέμπτη θέση αντίστοιχα. α. Να προσδιορίσετε την τιμή του δείκτη της παραπάνω στοίβας. β. Αν εφαρμόζουμε με τη σειρά τις παρακάτω λειτουργίες Απώθηση Απώθηση Ώθηση Λ Ώθηση Ν Απώθηση ποια θα είναι η νέα τιμή του δείκτη της παραπάνω στοίβας ; γ. Να σχεδιάσετε την τελική μορφή της στοίβας με τα περιεχόμενα της. 32. Παρακάτω δίνεται μια ουρά 10 θέσεων και δύο στοίβες 6 θέσεων η κάθε μια οι Σ1 και Σ2. 6 51 1 2 3 4 5 6 7 8 9 10 7 16 25 36 8 9 Σ1 Ουρά Σ2 1. Ποιές οι αρχικές τιμές των δεικτών της ουράς και των στοιβών Σ1 και Σ2 πριν οποιαδήποτε μεταβολή ; 2. Αν επιχειρήσουμε να ωθήσουμε όλα τα στοιχεία της ουράς στη στοίβα Σ1 τι θα συμβεί στη στοίβα; 3. Αν επιχειρήσουμε να απωθήσουμε ένα στοιχείο από τη Σ2 τι θα συμβεί στη στοίβα; 4. Να εξάγετε 2 στοιχεία της ουράς στη στοίβα Σ2. Ποιες είναι οι νέες τιμές των δεικτών της ουράς και της στοίβας; 5. Να γράψετε τις λειτουργίες με τις οποίες εξάγονται 2 στοιχεία της στοίβας Σ1 και στη συνέχεια εισάγονται στην ουρά. 6. Να αφαιρέσετε 2 στοιχεία από την ουρά και να τα εισάγετε στην στοίβα Σ2. Ποιες λειτουργίες εκτελέσατε; 7. Να σχεδιάσετε την τελική κατάσταση των τριών δομών δεδομένων μετά την εκτέλεση των λειτουργιών στις ερωτήσεις 4, 5 και 6. 33. Έστω πίνακας Χ 6 ακέραιων στοιχείων με τις τιμές που φαίνονται παρακάτω Χ 1 2 3 4 5 6 6 5 4 3 2 1 iÅ1 Όσο i < X[i] επανάλαβε X[Χ[i]] Å X[i] iÅi+1 Εμφάνισε i, X[i], X[X[i]] Τέλος_Επανάληψης 1. Πόσες φορές θα εκτελεστούν οι εντολές μέσα στην επανάληψη; 2. Τι θα εμφανίσει το παραπάνω τμήμα αλγορίθμου σε κάθε επανάληψη; 3. Ποιες θα είναι οι τιμές των στοιχείων του πίνακα μετά το τέλος της επανάληψης; 34. Τι θα εμφανίσει το παρακάτω τμήμα αλγορίθμου για n = 11, και A[1]=4, A[2]=5, A[3]=6, A[4]=7, A[5]=8, A[6]=7, A[7]=8, A[8]=7, A[9]=6, A[10]=5, A[11]=4; iÅ1 mid Å n div 2 52 Οσο i <= mid και A[i] = A[n – i +1] Επανάλαβε Εμφάνισε Α[n–i+1] i Å i +1 Τέλος_επανάληψης Αν i > mid τότε Εμφάνισε ‘ΝΑΙ’ Αλλιώς Εμφάνισε ‘ΟΧΙ’ Τέλος_αν 35. Δίνεται δισδιάστατος πίνακας Β[4,5] ο οποίος περιέχει τα παρακάτω δεδομένα 0 0 3 0 0 2 0 0 0 -1 0 0 0 0 0 7 0 0 0 0 Και το ακόλουθο τμήμα αλγόριθμου το οποίο δημιουργεί έναν μονοδιάστατο πίνακα Α : ΚÅ 0 ΠÅ0 Για i από 1 μέχρι 4 Για j από 1 μέχρι 5 Αν B[ i , j ] <>0 τότε Α[3*Κ+1] Å i Α[3*Κ+2] Å j Α[3*Κ+3] Å B[ i , j ] K Å K +1 Αλλιώς Π Å Π +1 Τέλος_αν Tέλος_επανάληψης Tέλος_επανάληψης Ν Å Π / 20 * 100 Εμφάνισε Ν, ‘%’ α) Να σχεδιάσετε την μορφή και τα περιεχόμενα του πίνακα Α όπως θα είναι μετά την εκτέλεση του παραπάνω αλγορίθμου β) Ποια η τιμή της μεταβλητής Ν μετά το τέλος του αλγορίθμου και τι ακριβώς μας υποδεικνύει; 53 36. Δίνεται ο πίνακας Α και το παρακάτω τμήμα προγράμματος: 1 5 5 4 5 2 3 5 5 2 3 5 1 5 5 4 sum Å 0 ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 4 ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 4 ΑΝ i = j ΤΟΤΕ sum Å sum + A[i, j] ΑΛΛΙΩΣ A[i, j] Å 0 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ sum Αυτό το τμήμα προγράμματος χρησιμοποιεί τον πίνακα Α με τις τιμές των στοιχείων του, όπως αυτές φαίνονται στο σχήμα 1. α. Να σχεδιάσετε στο τετράδιο σας τον πίνακα Α με τις τιμές που θα έχουν τα στοιχεία του μετά την εκτέλεση του τμήματος αυτού. β. Ποια είναι η τιμή της μεταβλητής sum που θα εμφανιστεί; 37. Δίνεται ο παρακάτω πίνακας Β τι θα εμφανίσουν οι παρακάτω εντολές; Α) εμφάνισε Β[3,1] Β) εμφάνισε Β[2,3] 1 4 2 2 1 Γ) i ← 1 3 1 5 1 2 εμφάνισε Β[i ,i + 3] 2 2 4 4 5 Δ) i ← 1 1 1 3 5 1 j←3 εμφάνισε Β[Β[ i ,2], j ] Ε) i ← 3 j←2 εμφάνισε Β [ Β [ i , 2] , B[ j , i ] ] 54 38. Ένας δισδιάστατος πίνακας ονομάζεται τριγωνικός άνω αν όλα τα στοιχεία του που βρίσκονται κάτω από την κύρια διαγώνιο είναι 0, ενώ ονομάζεται τριγωνικός κάτω αν όλα τα στοιχεία του που είναι πάνω από την κύρια διαγώνιο είναι 0. Δίνεται πίνακας δισδιάστατος 100Χ100, που περιέχει ακέραιους αριθμούς. Να γραφεί αλγόριθμος ο οποίος ελέγχει και εμφανίζει μήνυμα για το αν ο πίνακας είναι τριγωνικός άνω, τριγωνικός κάτω, τίποτα από τα δύο ή και τα δύο (διαγώνιος πίνακας). 39. Ένας δισδιάστατος πίνακας χαρακτηρίζεται αραιός αν τα μηδενικά του στοιχεία είναι πάνω από το 70% των στοιχείων ολόκληρου του πίνακα. Να γραφεί αλγόριθμος ο οποίος θα διαβάζει έναν πίνακα ΝΧΜ, και θα εμφανίζει κατάλληλο μήνυμα για το αν ο πίνακας είναι αραιός ή όχι. Αν ο πίνακας είναι αραιός ο αλγόριθμος θα πρέπει να δημιουργεί μονοδιάστατο πίνακα που Θα περιέχει τα μη μηδενικά στοιχεία του αρχικού καθώς και τις θέσεις αυτών. 40. Να κατασκευαστεί αλγόριθμος ή πρόγραμμα το οποίο θα κάνει τα ακόλουθα: Θα διαβάζει τα ονόματα 30 μαθητών και θα τα αποθηκεύει σε κατάλληλο μονοδιάστατο πίνακα. Θα διαβάζει τις απαντήσεις όλων των μαθητών σε 20 ερωτήσεις Σωστού-Λάθους και θα τις καταχωρεί σε κατάλληλο δισδιάστατο πίνακα. Θα διαβάζει έναν πίνακα Γ ο οποίος περιέχει τις σωστές απαντήσεις των ερωτήσεων. Με την βοήθεια του πίνακα Γ θα κατασκευάζει έναν μονοδιάστατο πίνακα Δ ο οποίος θα περιέχει τον βαθμό κάθε μαθητή αν γνωρίζουμε ότι κάθε Σωστή απάντηση παίρνει 5 μόρια και κάθε Λάθος αφαιρεί από τον μαθητή 2 μόρια. Να υπολογίζει τον μέσο όρο της τάξης και να εμφανίζει το όνομα του μαθητή του οποίου ο βαθμός είναι πιο κοντά στο μέσο όρο της τάξης Να εμφανίζει μήνυμα για το αν υπάρχει ή όχι μαθητής ή μαθητές που να έπιασε το άριστα (100) καθώς και το όνομά ή τα ονόματά τους. 41. Μία κατασκευαστική εταιρεία αυτοκινήτων προωθεί τα 6 νέα μοντέλα της σε 14 χώρες της Ευρώπης. Η εταιρεία θέλει να κάνει μία έρευνα για τις πωλήσεις των μοντέλων αυτών και σας ζήτησε να δημιουργήσετε αλγόριθμο ο οποίος: Α) Θα αποθηκεύει σε κατάλληλες δομές δεδομένων τα ονόματα των μοντέλων, των χωρών καθώς και τον αριθμό πωλήσεών του κάθε μοντέλου σε κάθε μία από τις χώρες. Β) Θα βρίσκει και θα εμφανίζει το όνομα ή τα ονόματα των μοντέλων με τις λιγότερες πωλήσεις. Γ) Θα βρίσκει και θα εμφανίζει τη χώρα όπου η εταιρεία έκανε τις περισσότερες πωλήσεις. (Θεωρείστε ότι είναι μόνο μία. Δ) Να εμφανιστεί το μοντέλο με τις λιγότερες πωλήσεις στη χώρα που επιτεύχθηκαν οι περισσότερες πωλήσεις. Ε) Θα εμφανίζει ποιο μοντέλο και σε ποια χώρα είχε τη μεγαλύτερη επιτυχία στις πωλήσεις. 55 42. Σε ένα Δήμο υπάρχουν 4 σταθμοί μέτρησης ενός συγκεκριμένου ατμοσφαιρικού ρύπου. Η καταγραφή της τιμής του ρύπου γίνεται ανά ώρα και σε 24ωρη βάση. Οι αποδεκτές τιμές του ρύπου κυμαίνονται από 0 έως και 100. Να γραφεί αλγόριθμος, ο οποίος: α. για κάθε σταθμό και για κάθε ώρα του 24ώρου διαβάζει την τιμή του ρύπου και την καταχωρίζει σε πίνακα διαστάσεων 4x24, ελέγχοντας την εγκυρότητα κάθε τιμής, β. για κάθε ώρα του 24ώρου υπολογίζει και εμφανίζει τη μέση τιμή του ρύπου από τους 4 σταθμούς. γ. για κάθε σταθμό βρίσκει και εμφανίζει τη μέγιστη και την ελάχιστη τιμή του ρύπου στο 24ωρο. δ. βρίσκει και εμφανίζει τη μέγιστη τιμή του ρύπου στη διάρκεια του 24ώρου, καθώς και την ώρα και τον αριθμό του σταθμού που σημειώθηκε η τιμή αυτή. (Να θεωρήσετε ότι η τιμή αυτή είναι μοναδική στον πίνακα). 43. Ένας επενδυτής διέθεσε 10.000 € για την αγορά ορισμένων τεμαχίων 10 διαφορετικών μετοχών. Να γράψετε αλγόριθμο ο οποίος: α. Για καθεμία από τις 10 μετοχές διαβάζει • το όνομα της μετοχής, • το πλήθος των τεμαχίων της μετοχής, που κατέχει ο επενδυτής, ελέγχοντας το πλήθος να είναι θετικός αριθμός, και καταχωρίζει τα δεδομένα αυτά σε σχετικούς πίνακες. β. Για καθεμία από τις 10 μετοχές και για καθεμία από τις πέντε (5) εργάσιμες ημέρες της εβδομάδας διαβάζει την τιμή ενός τεμαχίου της μετοχής και την αποθηκεύει σε κατάλληλο πίνακα δύο διαστάσεων, ελέγχοντας η τιμή του τεμαχίου να είναι θετικός αριθμός. γ. Για καθεμία από τις 10 μετοχές υπολογίζει τη μέση εβδομαδιαία τιμή του τεμαχίου της και την αποθηκεύει σε μονοδιάστατο πίνακα. δ. Υπολογίζει και εμφανίζει τη συνολική αξία όλων των τεμαχίων όλων των μετοχών του επενδυτή, την τελευταία ημέρα της εβδομάδας. ε. Υπολογίζει εάν ο επενδυτής την τελευταία ημέρα της εβδομάδας έχει κέρδος ή ζημία ή καμία μεταβολή σε σχέση με το αρχικό ποσό που διέθεσε, εμφανίζοντας κατάλληλα μηνύματα. 44. Να γίνει αλγόριθμος που θα διαβάζει τους κωδικούς, τα ονόματα και τα τμήματα στα οποία φοιτούν οι 650 φοιτητές ενός πανεπιστημίου και θα τα εκχωρεί σε κατάλληλους πίνακες. Στη συνέχεια θα ζητά από τον χρήστη να επιλέξει τι αναζήτηση θέλει να κάνει, δηλαδή με βάση ποιο κριτήριο (όνομα ή κωδικό). Έπειτα θα διαβάζει το στοιχείο αναζήτησης και όταν το εντοπίσει θα εμφανίζει τα υπόλοιπα αντίστοιχα στοιχεία του φοιτητή. Για παράδειγμα αν κάποιος κάνει αναζήτηση με βάση το όνομα, Θα ζητείται αυτό και θα εμφανίζεται, αν υπάρχει, το αντίστοιχο τμήμα και ο κωδικός του φοιτητή. 45. Να γραφεί αλγόριθμος ο οποίος θα διαβάζει τα ονόματα και τα επίθετα των υπαλλήλων μίας εταιρείας και θα τα αποθηκεύει σε δισδιάστατο πίνακα ΝΧ2. Επίσης θα αποθηκεύει σε πίνακα Ν στοιχείων τους μισθούς του κάθε υπάλληλου. Ο αλγόριθμος στη συνέχεια πρέπει να 56 εμφανίζει τα στοιχεία κάθε υπάλληλου (όνομα, επίθετο και μισθό) ταξινομημένα με βάση τους μισθούς κατά φθίνουσα σειρά. Σε περίπτωση που 2 υπάλληλοι έχουν τον ίδιο μισθό η ταξινόμηση πρέπει να γίνεται με βάση το επίθετο κάθε υπάλληλου αλφαβητικά. 46. Οι 60 μαθητές της Γ’ Γυμνασίου ενός σχολείου εξετάζονται σε 12 μαθήματα στο τέλος της χρονιάς. Να γραφεί αλγόριθμος ο οποίος: Α) Θα διαβάζει τα ονόματα και τα επίθετά των μαθητών και θα τα αποθηκεύει σε δισδιάστατο πίνακα. Επίσης τα ονόματα των 12 μαθημάτων αποθηκεύονται σε μονοδιάστατο πίνακα. Τέλος, ο βαθμός κάθε μαθητή σε κάθε μάθημα θα καταχωρείται σε δισδιάστατο πίνακα. Β) Θα βρίσκει και θα εμφανίζει το όνομα ή τα ονόματα των μαθητών με τις περισσότερες πρωτιές. Που πέτυχαν δηλαδή τον υψηλότερο βαθμό, σε σύγκριση με τους άλλους, τις περισσότερες φορές. Γ) Θα εμφανίζει τα ονόματα και τα επώνυμα όλων των μαθητών μαζί με το μέσο όρο τους στα μαθήματα ταξινομημένα σε αλφαβητική σειρά με βάση το επίθετο. Σε περίπτωση που 2 μαθητές έχουν το ίδιο επίθετο θα τοποθετούνται με αλφαβητική σειρά μικρών ονομάτων. 47. Σε μια εκλογική αναμέτρηση για την ανάδειξη της νέας Δημοτικής αρχής σε έναν δήμο υπάρχουν 25 εκλογικά τμήματα και 5000 εγγεγραμμένοι στους δημοτικούς καταλόγους και ψηφίζουν μεταξύ 5 υποψηφίων συνδυασμών. Μόλις τελειώσει η καταμέτρηση σε ένα εκλογικό τμήμα, αναφέρεται στη Νομαρχία το πλήθος των ψήφων που έλαβε κάθε συνδυασμός, καθώς και το πλήθος των λευκών / άκυρων. Να γραφεί αλγόριθμος ο οποίος : α) αποθηκεύει σε μονοδιάστατο πίνακα Ο[6] τα ονόματα των 5 συνδυασμών και στην έκτη θέση εκχωρεί την ονομασία Λευκά / Άκυρα β) διαβάζει το πλήθος των ψήφων κάθε συνδυασμού σε κάθε εκλογικό τμήμα και το αποθηκεύει σε δισδιάστατο πίνακα Α[25,6] , με την 1 η στήλη να αντιστοιχεί στον συνδυασμό Α, τη δεύτερη στο Β κ.ο.κ. Η τελευταία στήλη αντιπροσωπεύει τα λευκά /άκυρα ψηφοδέλτια γ) υπολογίζει και αποθηκεύει σε μονοδιάστατο πίνακα το σύνολο των ψήφων που έλαβε κάθε συνδυασμός στο σύνολο των εκλογικών τμημάτων καθώς και το σύνολο των λευκών /άκυρων δ) να εμφανίζει τα αποτελέσματα των εκλογών με ποσοστιαίες αναλογίες ξεκινώντας από το συνδυασμό που πήρε το μεγαλύτερο ποσοστό. Το ποσοστό λευκών /άκυρων να εμφανίζεται στην τελευταία θέση μετά από όλους τους συνδυασμούς ε) να υπολογίζεται το πλήθος των δημοτών που προσήλθαν στις κάλπες και στη συνέχεια να εμφανίζεται το ποσοστό αποχής από τις εκλογές. 48. Ένα τετραώροφο ξενοδοχείο διαθέτει 25 δωμάτια σε κάθε όροφο. Το κόστος για κάθε ημέρα παραμονής είναι 60 Ευρώ για τα μη μέλη, ενώ αν έχει γίνει κάποιος μέλος το κόστος είναι 45 Ευρώ την ημέρα. 57 Σε έναν δισδιάστατο πίνακα 25Χ4 αποθηκεύεται η πληροφορία για το αν το δωμάτιο είναι διαθέσιμο ή όχι. Στην περίπτωση που είναι διαθέσιμο τότε στον πίνακα υπάρχει η λέξη άδειο, ενώ στην αντίθετη περίπτωση το στοιχείο έχει το όνομα του πελάτη που μένει στο δωμάτιο. Να γραφεί αλγόριθμος ο οποίος: Α) Αποθηκεύει στον δισδιάστατο πίνακα Ξ τις πληροφορίες που δίνει ο υπάλληλος του ξενοδοχείου για τα δωμάτια. Β) Εμφανίζει τον αριθμό του ορόφου με τις λιγότερες κρατήσεις. Γ) Αποθηκεύει σε νέο πίνακα τα ονόματα των πελατών που τη συγκεκριμένη χρονική στιγμή μένουν σε δωμάτιο του 3ου ορόφου. Δ) Όταν κάποιος πελάτης έρχεται στο ξενοδοχείο δίνει το όνομά του, το δωμάτιο στο οποίο θέλει να μείνει (σε δύο μεταβλητές, μία για τον όροφο και μία για το δωμάτιο. Π.χ. στο δωμάτιο 24 του 3ου ορόφου) καθώς και το αν είναι μέλος ή όχι. Το πρόγραμμα διαβάζει αυτές τις πληροφορίες και ελέγχει αν το δωμάτιο που ζήτησε ο πελάτης είναι διαθέσιμο. Αν είναι, εμφανίζεται κατάλληλο μήνυμα με το κόστος και εκχωρείται στον πίνακα Ξ το όνομά του. Στην αντίθετη περίπτωση εμφανίζεται στην οθόνη το πρώτο διαθέσιμο δωμάτιο που υπάρχει, αρχίζοντας την αναζήτηση από τον πρώτο όροφο, μετά ακολουθεί ο 2ος όροφος κ.ο.κ. Αν δε βρεθεί κανένα διαθέσιμο δωμάτιο το πρόγραμμα εμφανίζει κατάλληλο μήνυμα. 49. Να γραφεί αλγόριθμος ο οποίος θα διαβάζει τους βαθμούς στο μάθημα της ΑΕΠΠ των μαθητών μίας τάξης 32 μαθητών και θα τους αποθηκεύει σε μονοδιάστατο πίνακα (πραγματικών αριθμών). Στη συνέχεια θα αποθηκεύει σε νέο πίνακα όλους τους διαφορετικούς βαθμούς που εμφανίστηκαν στην τάξη. Τέλος θα εμφανίζει ποιος βαθμός παρουσιάστηκε τις περισσότερες φορές. Πώς θα μπορούσε να λυθεί το τελευταίο ερώτημα αν δινόταν η πληροφορία ότι οι βαθμοί είναι ακέραιοι από το 1 έως και το 20; 50. Να γραφεί αλγόριθμος ο οποίος: α) Θα αποθηκεύει σε μονοδιάστατο πίνακα τα ονόματα 6 ραδιοφωνικών σταθμών και σε πίνακα 6Χ60 το μηνιαίο ποσοστό ακρόασης που πέτυχαν τα τελευταία 5 χρόνια. β) Θα δημιουργεί πίνακα 6Χ5 με το μέσο ετήσιο ποσοστό ακρόασης των σταθμών για αυτά τα 5 χρόνια. γ) Θα ελέγχει αν υπάρχει καταχωρημένος ο ραδιοφωνικός σταθμός ‘top radio’ στον μονοδιάστατο πίνακα. Αν υπάρχει θα εμφανίζει τα ετήσια ποσοστά ακρόασης που πέτυχε ταξινομημένα κατά φθίνουσα σειρά. Αν δεν υπάρχει θα εμφανίζει κατάλληλο μήνυμα. δ) Θα εμφανίζει το όνομα ή τα ονόματα των σταθμών με τα μεγαλύτερα ποσοστά ακρόασης τον τελευταίο χρόνο. 51. Για την ανάδειξη του επταμελούς (7) Διοικητικού Συμβουλίου ενός Πολιτιστικού Συλλόγου υπάρχουν 20 υποψήφιοι. Να γράψετε αλγόριθμο ο οποίος: α. διαβάζει τα ονόματα των υποψηφίων και τα αποθηκεύει σε πίνακα. 58 β. διαβάζει για κάθε υποψήφιο τον αριθμό των ψήφων που έλαβε και τον αποθηκεύει σε πίνακα. γ. εμφανίζει τα ονόματα των εκλεγέντων μελών του Διοικητικού Συμβουλίου κατά φθίνουσα σειρά ψήφων (να θεωρηθεί ότι δεν υπάρχουν περιπτώσεις ισοψηφίας). δ. διαβάζει το όνομα ενός υποψηφίου και ελέγχει αν ο συγκεκριμένος εκλέγεται ή όχι, εμφανίζοντας κατάλληλο μήνυμα. 52. Ένα σχολείο έχει 350 μαθητές οι οποίοι εξετάζονται σε 6 μαθήματα για την επικείμενη εισαγωγή τους στην τριτοβάθμια εκπαίδευση. Σε ένα πίνακα Β διαστάσεων 350χ6 εισάγονται οι βαθμολογίες κάθε μαθητή ανά μάθημα. Να σημειωθεί ότι οι βαθμολογίες είναι από 1 μέχρι 20. Σε ένα μονοδιάστατο πίνακα ΟΝ εισάγονται τα ονόματα των μαθητών και σε ένα μονοδιάστατο πίνακα Μ εισάγονται τα ονόματα των μαθημάτων (Φυσική, ΑΟΔΕ κτλ). Ζητούνται : Α) Να γεμίζονται οι πίνακες με τιμές που δίνει ο χρήστης από το πληκτρολόγιο. Προσοχή να μην επιτρέπεται η είσοδος τιμών στον πίνακα Β μεγαλύτερες από 20 και μικρότερες από 1. Β) Σε ποιο μάθημα έπεσαν οι περισσότεροι μαθητές κάτω από τη βάση ; Γ) Πόσοι Γιάννηδες απέτυχαν στο μάθημα που εντοπίστηκε από το προηγούμενο ερώτημα ; Δ) Να διαβάζει το όνομα ενός μαθητή από το πληκτρολόγιο και να το αναζητά στον πίνακα Β. Στην περίπτωση που εντοπιστεί να εμφανίζει σε ποιο μάθημα έβγαλε το μεγαλύτερο βαθμό (Να σημειωθεί ότι μπορεί να είναι και σε περισσότερα από ένα) Ε) Ένα πανεπιστήμιο θέλει να πάρει τους 7 μαθητές με τον μεγαλύτερο μέσο όρο, αρκεί το όνομά τους να μην είναι Ειρήνη, ποιοι θα είναι αυτοί οι μαθητές; (να θεωρήσετε ότι δεν υπάρχουν 2 μαθητές με τον ίδιο μέσο όρο). 53. Να γραφεί πρόγραμμα το οποίο διαβάζει τα ονόματα και τους χρόνους ενός πλήθους αθλητών και τα αποθηκεύει σε πίνακα. (Το πλήθος αυτό μπορεί να είναι από 8 έως και 24). Στη συνέχεια το πρόγραμμα θα εμφανίζει τα ονόματα των αθλητών που θα πάρουν το χρυσό μετάλλιο (αυτοί δηλαδή που πέτυχαν τον καλύτερο χρόνο οι οποίοι μπορεί να είναι και πολλοί αν έχουμε περιπτώσεις αθλητών με τον ίδιο χρόνο), τα ονόματα των αθλητών που θα πάρουν το αργυρό καθώς και αυτούς που θα πάρουν το χάλκινο. 54. Σε ένα θερινό τουρνουά ποδοσφαίρου λαμβάνουν μέρος 8 ομάδες. Κάθε ομάδα αντιμετωπίζει όλες τις υπόλοιπες από μία φορά την καθεμία. Σε έναν πίνακα 8 θέσεων με όνομα ΟΝ αποθηκεύουμε τα ονόματα των 8 ομάδων και σε έναν πίνακα 8 γραμμών και 8 στηλών με όνομα ΣΚΟΡ αποθηκεύουμε τα αποτελέσματα των αγώνων που διεξήχθησαν, ως εξής : για τον αγώνα μεταξύ της πέμπτης και της τρίτης ομάδας - στο στοιχείο [3,5] του πίνακα είναι γραμμένα τα γκολ που έβαλε η τρίτη ομάδα στην πέμπτη ενώ στο στοιχεί [5,3] τα γκολ που έβαλε η πέμπτη ομάδα στην τρίτη. Έτσι εννοείται ότι στην κύρια διαγώνιο του πίνακα όλα τα στοιχεία είναι μηδενικά. Αν κάθε ομάδα παίρνει για κάθε νίκη 3 βαθμούς, για κάθε ισοπαλία 1 και για κάθε ήττα 0 βαθμούς ζητείται να γραφεί αλγόριθμος ο οποίος: Α) να διαβάζει τα ονόματα των 8 ομάδων και να τα αποθηκεύει σε μονοδιάστατο πίνακα ΟΝ. 59 Β) να διαβάζει για κάθε ομάδα το αποτέλεσμα του αγώνα με κάθε άλλη ομάδα και να το αποθηκεύει κατάλληλα στον πίνακα ΣΚΟΡ. Γ) να κατασκευάζει τον μονοδιάστατο πίνακα ΒΑΘΜΟΛΟΓΙΑ 8 θέσεων που θα περιέχει τη βαθμολογία που συγκέντρωσε κάθε ομάδα με το πέρας των αγώνων. Δ) να εμφανίζει τα ονόματα και την βαθμολογία των ομάδων όπως παρουσιάζονται στην τελική κατάταξη του τουρνουά (από την καλύτερη στην χειρότερη). Σε περίπτωση ισοβαθμίας καλύτερη θεωρείται η ομάδα που η διαφορά των τερμάτων που έχει πετύχει συνολικά σε σχέση με αυτά που έχει δεχθεί συνολικά είναι καλύτερη. Να θεωρηθεί ότι δεν υπάρχουν δύο ομάδες με ίδια διαφορά τερμάτων. 55. Σε πίνακα Π[100, 10] εισάγονται οι 10 βαθμοί στα μαθήματα κατεύθυνσης 100 μαθητών της Γ’ Λυκείου. Οι βαθμοί είναι ακέραιοι στο διάστημα [0, 100] και δεν θα πρέπει να γίνεται έλεγχος. Το τελευταίο μάθημα είναι οι «Αρχές Οικονομικής θεωρίας». Αν κάποιος μαθητής δεν έχει εξεταστεί Πανελλαδικώς στο μάθημα τότε εισάγεται στην αντίστοιχη θέση του πίνακα η τιμή -1. Σε δεύτερο πίνακα Α[100] εισάγονται τα επίθετα των μαθητών. Να γραφεί πρόγραμμα το οποίο: Α. Θα διαβάζει τα στοιχεία των πινάκων. Β. Θα υπολογίζει και θα εμφανίζει το μέσο όρο για κάθε μαθητή στα 9 πρώτα μαθήματα κατεύθυνσης μαζί με το όνομά του. Γ. Θα ταξινομεί τα ονόματα των μαθητών κατά φθίνουσα σειρά ως προς τον μέσο όρο στα 9 πρώτα μαθήματα κατεύθυνσης και θα εμφανίζει τους 10 πρώτους. Δ. Θα εμφανίζει το σύνολο των μαθητών που συμμετείχαν πανελλαδικώς στο μάθημα «Αρχές Οικονομικής θεωρίας». 56. Στο πρωτάθλημα μπάσκετ της Α1 κατηγορίας ανδρών μια ομάδα συμμετέχει με 20 παίκτες δίνοντας συνολικά 40 αγώνες. Να γραφεί αλγόριθμος ο οποίος : α) να καταχωρεί σ’ έναν πίνακα ακεραίων Π[20,40] τους πόντους που πέτυχε ο κάθε παίκτης σε κάθε αγώνα του πρωταθλήματος. Όταν ένας παίκτης δε συμμετέχει σ’ έναν αγώνα τότε καταχωρούμε την τιμή -1 στον πίνακα. Θεωρήστε ότι οι τιμές που εισάγονται στον πίνακα είναι μεγαλύτερες ή ίσες του -1 και μικρότερες ή ίσες του 25. Μην ασχολείστε με τον έλεγχο εγκυρότητας δεδομένων. β) να καταχωρεί σ’ έναν πίνακα Ο[20] τα ονόματα των παικτών της ομάδας. γ) να βρίσκει σε πόσους από τους 40 αγώνες , ένας μόνο παίκτης έφερε την καλύτερη επίδοση στον αγώνα. δ) να εμφανίζει τα ονόματα των παικτών που δεν έχασαν κανέναν αγώνα στο πρωτάθλημα. ε) να διαβάζει το όνομα ενός παίκτη και να εμφανίζει για το συγκεκριμένο παίκτη τους έξι αγώνες στους οποίους είχε τις καλύτερες επιδόσεις. Θεωρήστε ότι δεν υπάρχει περίπτωση ισοβαθμίας. Αν ο παίκτης αυτός έχει αγωνιστεί σε συνολικά λιγότερους από έξι αγώνες να εμφανίζεται κατάλληλα διαμορφωμένο μήνυμα. 60 57. Να σχηματίσετε τον πίνακα τιμών των παρακάτω προγραμμάτων. Τι θα εκτυπωθεί; Α) ΠΡΟΓΡΑΜΜΑ Πτ1 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α, Β, Γ ΑΡΧΗ Α <– 20 Β <– 45 Γ <– 8 ΓΡΑΨΕ Α, Β, Γ ΚΑΛΕΣΕ ΕΤ1 (Β, Γ) ΓΡΑΨΕ Α, Β, Γ ΚΑΛΕΣΕ ΕΤ1 (Γ, Α) ΓΡΑΨΕ Α, Β, Γ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΔΙΑΔΙΚΑΣΙΑ ΕΤ1 (α1, α2) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: α1, α2 ΑΡΧΗ α1 <– α1 MOD 2 α2 <– α2 ^ 2 ΓΡΑΨΕ α1, α2 ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ Β) Πρόγραμμα P1 Μεταβλητές Ακέραιες : α,β,x,y Αρχή αÅ5 βÅ1 xÅΣυναρτ1(α,β) yÅΣυναρτ1(β,α) Γράψε x,y Tέλος_προγράμματος Συνάρτηση Συναρτ1(κ,λ) : Ακέραια Μεταβλητές Ακέραιες: κ,λ,i Αρχή 61 iÅλ Όσο κ<λ επανάλαβε iÅi -1 κÅκ+3 τέλος_επανάληψης Συναρτ1Åi Τέλος_συνάρτησης Γ) ΠΡΟΓΡΑΜΜΑ Π3 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α, Β ΑΡΧΗ Α <–2 Β <– 19 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΚΑΛΕΣΕ Επεξεργασία_Τιμών (Β, Α) ΓΡΑΨΕ Α, Β ΜΕΧΡΙΣ_ΟΤΟΥ (Α > Β) ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΔΙΑΔΙΚΑΣΙΑ Επεξεργασία_Τιμών (Α, Β) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α, Β ΑΡΧΗ Α <– Α - 2 Β <– Β + 5 ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ 58. Α) Να γράψετε στο τετράδιό σας τις τιμές που θα εμφανιστούν κατά την εκτέλεση του προγράμματος αν δοθούν ως είσοδοι οι τιμές -3 και 9. Β) Να αναφέρετε τις πραγματικές και τις τυπικές παραμέτρους που παρουσιάζονται στα παρακάτω τμήματα προγράμματος. ΠΡΟΓΡΑΜΜΑ Θ2 ΔΙΑΔΙΚΑΣΙΑ Δ1(Χ,Υ,Ω) ΣΥΝΑΡΤΗΣΗ Σ1(Κ,Λ): ΑΚΕΡΑΙΑ ΜΕΤΑΒΛΗΤΕΣ ΜΕΤΑΒΛΗΤΕΣ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ:Α,Β,Γ,Τ ΑΡΧΗ ΑΚΕΡΑΙΕΣ:Χ,Υ,Ω ΑΡΧΗ Α <-- 2 Χ <-- Υ DIV Ω ΔΙΑΒΑΣΕ Β,Γ Υ <-- Χ MOD Ω Τ <-- Β ΑΝ Υ=0 ΤΟΤΕ 62 ΑΚΕΡΑΙΕΣ:Ι,Λ,Κ ΑΡΧΗ ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ Κ Λ <-- Λ + 2 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Β <-- Α Α <-- Τ ΓΡΑΨΕ Α,Β,Γ,Τ Τ <-- Τ*(-1) ΟΣΟ Γ>=4 ΕΠΑΝΑΛΑΒΕ Χ <-- Σ1(Ω,Χ) ΑΛΛΙΩΣ Σ1 <-- Λ ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ Χ <-- Χ+2 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΚΑΛΕΣΕ Δ1(Α,Β,Τ) Γ <-- Γ-Α Β <-- Β+1 ΓΡΑΨΕ Α,Β,Γ,Τ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ Γ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ 59. ∆ίνεται το παρακάτω πρόγραμμα και υποπρογράμματα: ΠΡΟΓΡΑΜΜΑ Κλήση_Υποπρογραμμάτων ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: α, β, χ ΑΡΧΗ α <- 1 β <- 2 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΑΝ α<= 4 ΤΟΤΕ ΚΑΛΕΣΕ ∆ιαδ1(α, β, χ) ΑΛΛΙΩΣ χ <- Συν1(α, β) ΤΕΛΟΣ_ΑΝ ΓΡΑΨΕ α, β, χ ΜΕΧΡΙΣ_ΟΤΟΥ χ > 11 ΓΡΑΨΕ χ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Κλήση_Υποπρογραμμάτων ΔΙΑΔΙΚΑΣΙΑ Διαδ1 (λ, κ, μ) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: κ, λ, μ ΑΡΧΗ 63 κ <- κ + 1 λ <- λ + 3 μ <- κ + λ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΣΥΝΑΡΤΗΣΗ Συν1(ε, ζ): ΑΚΕΡΑΙΑ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: ε, ζ ΑΡΧΗ ζ <- ζ + 2 ε <- ε * 2 Συν1 <- ε + ζ ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ Να γράψετε στο τετράδιό σας τις τιμές που θα εμφανιστούν κατά την εκτέλεση του προγράμματος. 60. Δίνεται το παρακάτω πρόγραμμα, το οποίο υπολογίζει την τιμή της παράστασης ⎧ (127 − x)3 x , αν x > 2 + ⎪ x x−2 ⎪ ⎪ 7127 − x x αν x < −2 Y =⎨ +e , ⎪ x − 10 αλλιώς ⎪Δεν ορίζεται , ⎪ ⎩ ΠΡΟΓΡΑΜΜΑ Θέμα_3 ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: x, Y ΑΡΧΗ ΔΙΑΒΑΣΕ x ΑΝ x > 2 TOTE Y ‹― (127 – x)^3 / x Υ ‹― Υ + x / (x – 2) ΑΛΛΙΩΣ_AN x < –2 TOTE Y ‹― (7127 – x) / (x – 10) + E(x) 64 ! ΤΜΗΜΑ Α ! ΤΜΗΜΑ Β ΑΛΛΙΩΣ ΑΝ x < 0 TOTE ΓΡΑΨΕ 'Δεν ορίζεται για –2 ≤ x < 0' ΑΛΛΙΩΣ ΓΡΑΨΕ 'Δεν ορίζεται για 0 ≤ x ≤ 2' ΤΕΛΟΣ_ΑΝ ! !ΤΜΗΜΑ Γ ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ α) Να αναπτύξετε υποπρογράμματα που θα υλοποιούν τα τμήματα Α, Β και Γ του προγράμματος Θέμα_3. Θα τα ορίσετε ως συναρτήσεις ή ως διαδικασίες; Εξηγήστε για κάθε περίπτωση. β) Να ξαναγράψετε το κύριο πρόγραμμα Θέμα_3 έτσι, ώστε να χρησιμοποιεί τα τρία υποπρογράμματα που ορίσατε στο ερώτημα α). 61. Τι θα εμφανίσει το παρακάτω πρόγραμμα αν δοθούν διαδοχικά οι τιμές: 1, 1, 3, 5, 8, 0, 2, 12, 3, 7; ΠΡΟΓΡΑΜΜΑ Θέμα ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α[5], Β[5], Γ[10], k ΔΙΑΔΙΚΑΣΙΑ Κάνε (X, Y, Z) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: X[5], Y[5], Z[10], i ΑΡΧΗ ΚΑΛΕΣΕ Δώσε (Α) ΚΑΛΕΣΕ Δώσε (Β) ΑΡΧΗ ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 5 ΚΑΛΕΣΕ Κάνε (Α, Β, Γ) ΚΑΛΕΣΕ Πάρε (Γ) ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Ζ[ i ] Å Χ[ i ] + Y[ i ] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΙΑ i ΑΠΟ 10 ΜΕΧΡΙ 6 ΜΕ ΒΗΜΑ - 1 Ζ[ i ] Å Χ[ i – 5 ] – Y[ i – 5 ] ΔΙΑΔΙΚΑΣΙΑ Δώσε (Χ) ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΑΚΕΡΑΙΕΣ: Χ[5], i ΑΡΧΗ ΔΙΑΔΙΚΑΣΙΑ Πάρε (Χ) ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 5 ΔΙΑΒΑΣΕ Χ[i] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Χ[10], i ΑΡΧΗ ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ Χ[i] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ 65 62. Τι θα εκτυπώσει το παρακάτω πρόγραμμα αν δοθούν ως αρχικές τιμές στην εντολή Διάβασε Α, Β, Γ οι τιμές 6,3,5 αντίστοιχα ; ΠΡΟΓΡΑΜΜΑ ΤΑΔΕ ΔΙΑΔΙΚΑΣΙΑ Δ1(Γ, Β, Α, ΤΙΜΗ) ΣΥΝΑΡΤΗΣΗ ΜΕΤΑΒΛΗΤΕΣ ΜΕΤΑΒΛΗΤΕΣ ΥΠΟΛΟΓΙΣΜΟΣ(Ζ,Β):ΛΟΓΙΚΗ ΑΚΕΡΑΙΕΣ : Α, Β, Γ ΑΚΕΡΑΙΕΣ : Α, Β, Γ ΜΕΤΑΒΛΗΤΕΣ ΛΟΓΙΚΕΣ : ΤΙΜΗ ΠΡΑΓΜΑΤΙΚΕΣ : Χ ΑΚΕΡΑΙΕΣ : Β ΑΡΧΗ ΛΟΓΙΚΕΣ : ΤΙΜΗ ΠΡΑΓΜΑΤΙΚΕΣ: Ζ, Υ ΔΙΑΒΑΣΕ Α, Β, Γ ΑΡΧΗ ΑΡΧΗ ΓΡΑΨΕ Α, Β, Γ Χ Å 2*Γ MOD (Β + Α) Y Å Ζ – Α_Μ(Β/2) ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ Χ AN Y > 0 TOTE ΚΑΛΕΣΕ Δ1(Α, Β, Γ, ΤΙΜΗ) ΤΙΜΗ Å ΥΠΟΛΟΓΙΣΜΟΣ(Χ, Γ) ΥΠΟΛΟΓΙΣΜΟΣ Å ΑΛΗΘΗΣ ΓΡΑΨΕ Α, Β, Γ ΓÅΓ+2 ΑΛΛΙΩΣ ΜΕΧΡΙΣ_ΟΤΟΥ ΤΙΜΗ = ΑΛΗΘΗΣ ΑÅΑ+1 ΥΠΟΛΟΓΙΣΜΟΣ Å ΨΕΥΔΗΣ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ β) Ποιες είναι οι πραγματικές και ποιες οι τυπικές παράμετροι στο παραπάνω πρόγραμμα, τη συνάρτηση και τη διαδικασία; 63. Δίνεται το παρακάτω πρόγραμμα σε ΓΛΩΣΣΑ. ΠΡΟΓΡΑΜΜΑ Θέμα2 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ:α, ι, υπ ΑΡΧΗ ΔΙΑΒΑΣΕ α υπ Å α ιÅ1 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ιÅι+1 ΚΑΛΕΣΕ Διαιρέσεις(υπ,ι) ΜΕΧΡΙΣ_ΟΤΟΥ υπ=1 ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΔΙΑΔΙΚΑΣΙΑ Διαιρέσεις(δ,π) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ:δ,π ΑΡΧΗ ΌΣΟ δ MOD π=0 ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ π δ Å δ DIV π ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ 66 Σε κάθε επανάληψη της ΜΕΧΡΙΣ_ΟΤΟΥ του ΠΡΟΓΡΑΜΜΑΤΟΣ Θέμα2: 1) Ποιες είναι οι τιμές που θα πάρουν : α) οι πραγματικές παράμετροι υπ και ι β) οι τυπικές παράμετροι δ και π γ) τι θα εκτυπωθεί 2) Ποιες είναι οι τιμές που μεταβιβάζονται στη ΔΙΑΔΙΚΑΣΙΑ Διαιρέσεις και ποιες επιστρέφονται στο ΠΡΟΓΡΑΜΜΑ Θέμα2 αν δοθεί ως είσοδος η τιμή 90 ; 64. Να γραφεί πρόγραμμα το οποίο θα διαβάζει τέσσερις ακέραιους θετικούς αριθμούς και θα υπολογίζει και εκτυπώνει το γινόμενο τους χρησιμοποιώντας κατάλληλο υποπρόγραμμα για την υλοποίηση του πολλαπλασιασμού αλά Ρωσικά. Θεωρείστε ότι οι αριθμοί είναι ακέραιοι και θετικοί και ότι το υποπρόγραμμα δέχεται 2 αριθμούς και επιστρέφει το γινόμενό τους. 65. Να γραφεί πρόγραμμα το οποίο διαβάζει έναν δισδιάστατο πίνακα ακέραιων αριθμών Δ[3Χ5] και στη συνέχεια καλεί διαδικασία η οποία ταξινομεί τα στοιχεία του δισδιάστατου όπως το παρακάτω παράδειγμα: Δ Δ 23 1 9 40 -2 76 40 23 12 9 12 5 6 -1 7 7 6 5 4 2 -9 4 76 2 0 1 0 -1 -2 -9 αρχικός πίνακας ταξινομημένος πίνακας 66. Να δημιουργηθεί πρόγραμμα το οποίο: Α) Διαβάζει πίνακα 2 διαστάσεων Π[7Χ15] ακεραίων αριθμών. Β) Καλεί διαδικασία η οποία ταξινομεί κάθε στήλη του πίνακα Π κατά αύξουσα σειρά και τον επιστρέφει στο κύριο πρόγραμμα. Γ) Καλεί συνάρτηση που υπολογίζει και επιστρέφει το μέσο όρο κάθε στήλης. Δ) Εμφανίζει το μέσο όρο κάθε στήλης. Ε) Υπολογίζει και εμφανίζει το μικρότερο στοιχείο του πίνακα Π. ΣΤ) Ταξινομεί κατά φθίνουσα σειρά όλα τα στοιχεία της 4ης γραμμής που είναι μεγαλύτερα του συνολικού μέσου όρου του πίνακα, χωρίς να αλλάζει τη θέση των υπολοίπων στοιχείων. Για παράδειγμα αν ο συνολικός μέσος όρος του πίνακα είναι το 12 και τα στοιχεία της 4ης γραμμής τα παρακάτω: 15 3 11 31 20 8 22 40 4 9 5 31 4 9 5 15 Μετά την ταξινόμηση η νέα μορφή της γραμμής θα είναι: 40 3 11 31 31 8 22 20 67. Ένα εργοστάσιο παρασκευής χρωμάτων, έχει 1.500 πελάτες κάθε ένας από τους οποίους πραγματοποιεί συγκεκριμένο αριθμό παραγγελιών σε μηνιαία βάση κατά τη διάρκεια ενός 67 έτους. Αν γνωρίζεται ότι το συγκεκριμένο εργοστάσιο παύει τη λειτουργία του κατά το μήνα Αύγουστο, να γράψετε πρόγραμμα σε ‘ΓΛΩΣΣΑ’ το οποίο: α) εισάγει στο μονοδιάστατο πίνακα ΟΝΕΠ το ονοματεπώνυμο κάθε πελάτη. β) καλεί τη διαδικασία ΠΑΡ στην οποία καταχωρείται στον πίνακα δύο διαστάσεων ΑΠ ο αριθμός των παραγγελιών κάθε πελάτη για κάθε μήνα του έτους (εκτός του μηνός Αυγούστου). Κάθε καταχώρηση πρέπει να ελέγχεται ως προς την εγκυρότητά της, δηλαδή να είναι μεγαλύτερη του μηδενός. Για το μήνα παύσης, να καταχωρείται η τιμή μηδέν. γ) καλεί τη συνάρτηση ΕΥΡΕΣΗ η οποία υπολογίζει, για κάθε πελάτη, το σύνολο των ετήσιων παραγγελιών του. δ) καταχωρεί στο μονοδιάστατο πίνακα ΣΠ το σύνολο των ετήσιων παραγγελιών κάθε πελάτη. ε) τυπώνει το ονοματεπώνυμο κάθε πελάτη και δίπλα του το αντίστοιχο σύνολο των ετήσιων παραγγελιών του (Θέμα ΟΕΦΕ) 68. Να γίνει πρόγραμμα το οποίο εμφανίζει επαναληπτικά το παρακάτω μενού: α) Υπολογισμός ΕΚΠ 2 αριθμών β) Υπολογισμός ΜΚΔ 2 αριθμών γ) Έξοδος Στη συνέχεια θα διαβάζει την επιλογή που δίνει ο χρήστης και το πρόγραμμα θα σταματά όταν δοθεί το Γ ως επιλογή. Όταν δίνεται το Α ή το Β το πρόγραμμα θα διαβάζει 2 θετικούς αριθμούς, με κατάλληλα υποπρογράμματα θα υπολογίζει το ΕΚΠ ή το ΜΚΔ και το πρόγραμμα θα εμφανίζει τα αποτελέσματα. 69. Στα πλαίσια της συγκέντρωσης χρημάτων για την 5ήμερη εκδρομή της Γ’ λυκείου, ένα λύκειο παρήγαγε CD με διάφορα τραγούδια της ορχήστρας του σχολείου. Το ένα CD κοστίζει 10 €, αλλά αν κάποιος αγοράσει από 6 και πάνω τότε όσα CD είναι από 6 και πάνω χρεώνονται από 5 € το ένα, σαν ένα είδος προσφοράς. Ο στόχος από τις πωλήσεις είναι είτε να πουλήσουν 600 CD είτε να συγκεντρώσουν τουλάχιστον 5500 €. Να γράψετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο: α)θα διαβάζει το όνομα κάθε αγοραστή καθώς και τον αριθμό των CD που αγόρασε παίρνοντας έλεγχο εγκυρότητας ώστε να είναι θετικός αριθμός. β)Θα υπολογίζει και θα εμφανίζει τον συνολικό αριθμό των CD που πουλήθηκαν, καθώς και τα χρήματα που συγκεντρώθηκαν όταν επετεύχθη ο στόχος. Ο υπολογισμός του κόστους που πρέπει να πληρώσει κάθε αγοραστής θα γίνει με την βοήθεια συνάρτησης που πρέπει να κατασκευάσετε για τον σκοπό αυτό. γ)Θα εμφανίζει το όνομα του αγοραστή που αγόρασε τα περισσότερα CD καθώς και πόσα ήταν αυτά. δ)Να υπολογίζει και να εκτυπώνει το ποσοστό των αγοραστών που επωφελήθηκαν της προσφοράς. 68 70. Ο Κώστας και η Μαρία θέλουν να καταχωρήσουν (ο καθένας χωριστά) τους τίτλους όλων των τραγουδιών που διαθέτουν στον υπολογιστή τους σε δύο μονοδιάστατους πίνακες (Α και Β αντίστοιχα). Εσείς πρέπει να δημιουργήσετε πρόγραμμα το οποίο εκτελεί τις παρακάτω λειτουργίες: Α) Θα αποθηκεύει στις κατάλληλες δομές δεδομένων τις πληροφορίες για τα τραγούδια, το πλήθος των οποίων δεν μπορεί να ξεπεράσει τα 2000. Β) θα εντοπίζει και θα αποθηκεύει σε νέο μονοδιάστατο πίνακα Ξ τους τίτλους των τραγουδιών που διαθέτει ο Κώστας αλλά δε διαθέτει η Μαρία. (Διαδικασία) Γ) Τα περιεχόμενα του πίνακα Ξ θα εμφανίζονται ταξινομημένα αλφαβητικά με βάση τον τίτλο (οι τίτλοι θεωρούνται μοναδικοί, δεν υπάρχουν δηλαδή δύο τραγούδια με τον ίδιο τίτλο). Δ) Τέλος το πρόγραμμα θα έχει τη δυνατότητα να διαβάζει τον τίτλο ενός τραγουδιού και να εμφανίζει το μήνυμα ‘ΟΚ’ στην περίπτωση που και οι δύο φίλοι έχουν το τραγούδι στη συλλογή τους, το μήνυμα ‘ΑΝΤΑΛΛΑΓΗ’ αν το έχει μόνο ένας από τους δύο ή το μήνυμα ‘ΑΝΑΖΗΤΗΣΗ’ αν δεν το έχει κανένας από τους δύο. (Συνάρτηση) 71. Α) Να γραφεί συνάρτηση η οποία δέχεται ως όρισμα έναν αλφαριθμητικό μονοδιάστατο πίνακα 36 θέσεων, καθώς και μία τιμή χαρακτήρα (στοιχείο αναζήτησης) και θα επιστρέφει τη θέση του πίνακα στην οποία βρέθηκε το στοιχείο αναζήτησης. Στην περίπτωση που το στοιχείο δε βρεθεί στον πίνακα η συνάρτηση επιστρέφει την τιμή 0 (μηδέν). Β) Να δημιουργεί διαδικασία η οποία δέχεται δισδιάστατο πίνακα [20,36] πραγματικών αριθμών, υπολογίζει το άθροισμα κάθε στήλης και αποθηκεύει τα αποτελέσματα σε μονοδιάστατο πίνακα. Στη συνέχεια, ο μονοδιάστατος πίνακας θα σταλεί στο πρόγραμμα που κάλεσε τη διαδικασία. Γ) Κάθε χρόνο στο Ανόβερο της Γερμανίας πραγματοποιείται διαγωνισμός για την ανάδειξη της πιο αξιόπιστης οθόνης Η/Υ. Οι 20 ειδικοί σε θέματα τεχνολογίας, αφού δοκιμάσουν όλα τα δείγματα που διαγωνίζονται αξιολογούν έως και 10 από αυτά με βαθμό από το 1 μέχρι και το 8. Φέτος στο διαγωνισμό έλαβαν μέρος 36 μοντέλα από διάφορες εταιρίες. Να αναπτυχθεί πρόγραμμα το οποίο: 1) Θα αποθηκεύει σε μονοδιάστατο πίνακα τα ονόματα των 36 μοντέλων. 2) Θα εκχωρεί την τιμή 0 (μηδέν) σε όλα τα στοιχεία ενός δισδιάστατου πίνακα Β[20,36]. 3) Στη συνέχεια ο καθένας από τους ειδικούς πρέπει να δίνει επαναληπτικά τα ονόματα και τις βαθμολογίες του μοντέλου που επέλεξε και τα αποτελέσματα θα αποθηκεύονται στις κατάλληλες θέσεις του πίνακα. Για παράδειγμα αν ο 3 ος κατά σειρά ειδικός βαθμολογήσει με 7 το μοντέλο ‘CE210w’ που βρίσκεται στη θέση 13 του πίνακα Α, τότε στο στοιχείο Β[3,13] πρέπει να εκχωρηθεί η τιμή 7. Σημείωση: Να χρησιμοποιήσετε τη συνάρτηση του ερωτήματος Α για τον εντοπισμό της θέσης κάθε μοντέλου στον πίνακα Α. 4) θα εμφανίζει το όνομα ή τα ονόματα των μοντέλων που συγκέντρωσαν την υψηλότερη βαθμολογία. Η τελική βαθμολογία κάθε μοντέλου θα πρέπει να υπολογίζεται με τη βοήθεια της διαδικασίας του Β ερωτήματος. 69 72. Η δανειστική βιβλιοθήκη του σχολείου σας έχει 100 αντίτυπα, καθένας από τους οποίους πιθανόν να υπάρχει σε περισσότερα από 1 αντίτυπα. Να γραφεί πρόγραμμα το οποίο: Α) Θα αποθηκεύει σε μονοδιάστατο πίνακα Τ[100] τους τίτλους των βιβλίων. Β) Θα αποθηκεύει σε μονοδιάστατο πίνακα Α[100] τον αριθμό των διαθέσιμων προς δανεισμό αντιτύπων του κάθε βιβλίου, κάνοντας έλεγχο έτσι ο αριθμός αυτός να μην είναι αρνητικός. Γ) Θα διαβάζει έναν τίτλο και αν ο τίτλος αυτός δεν είναι καταχωρημένος εμφανίζει κατάλληλο μήνυμα. Αν ο τίτλος είναι καταχωρημένος καλεί μία διαδικασία η οποία υλοποιεί τα εξής: Αν υπάρχουν διαθέσιμα αντίτυπα εμφανίζει το μήνυμα ΔΙΑΘΕΣΙΜΟ και μειώνει κατά 1 τον αριθμό διαθέσιμων αντιτύπων, ενώ αν έχουν δανειστεί όλα τα αντίτυπα εμφανίζει το μήνυμα ΜΗ ΔΙΑΘΕΣΙΜΟ. (Θέμα ΟΕΦΕ) 73. Στην εταιρεία διοδίων χρησιμοποιούν πίνακα Π[3] που περιέχει το πλήθος των οχημάτων έχουν διέλθει από τα διόδια, πιο συγκεκριμένα: Επιβατικά (θέση 1 πίνακα), Φορτηγά (θέση 2 πίνακα) και Δίκυκλα (θέση 3 πίνακα). Το κόστος διέλευσης για κάθε κατηγορία οχήματος είναι 2,3,1 ευρώ με τη σειρά που αναφέρθηκαν. Να αναπτύξετε αλγόριθμο πρόγραμμα για την ημερήσια διαχείριση των διοδίων που θα επιτελεί τις παρακάτω λειτουργίες: 1. Θα μηδενίζει τα κελιά του πίνακα Π (αρχή της ημέρας) 2. Θα δέχεται επαναληπτικά τον τύπο ενός διερχόμενου οχήματος. Να θεωρήσετε γνωστή τη διαδικασία (δε χρειάζεται να την υλοποιήσετε) «Διέλευση_οχήματος» που επιστρέφει τον τύπο του οχήματος, που μπορεί να είναι "Ε", "Φ" ή "Δ". Είναι αυτονόητο ότι εντός της διαδικασίας πραγματοποιείται ο απαραίτητος έλεγχος δεδομένων. Να περιγράψετε τις παραμέτρους που χρησιμοποιεί η διαδικασία αυτή. 3. Να εμφανίζει το κόστος διέλευσης του οχήματος αυτού. Ο υπολογισμός του κόστους θα πραγματοποιείται με υποπρόγραμμα που θα υλοποιηθεί για το σκοπό αυτό. 4. Θα ενημερώνει τον πίνακα Π καταμετρώντας το διερχόμενο όχημα. Η ενέργεια αυτή θα πραγματοποιείται με υποπρόγραμμα που θα υλοποιηθεί για το σκοπό αυτό. Η επαναληπτική διαδικασία ολοκληρώνεται όταν εισαχθεί το "Πέρας ημέρας" ως τύπος οχήματος. 5. Θα εμφανίζεται το πλήθος των οχημάτων κάθε κατηγορίας που διήλθαν. Η ενέργεια αυτή θα πραγματοποιείται με υποπρόγραμμα που θα υλοποιηθεί για το σκοπό αυτό. 74. Για την παρακολούθηση των θερμοκρασιών της επικράτειας κατά το μήνα Μάιο καταγράφεται κάθε μέρα η θερμοκρασία στις 12:00 το μεσημέρι για 20 πόλεις. Να αναπτύξετε πρόγραμμα το οποίο: Α) θα διαβάζει τα ονόματα των 20 πόλεων και τις αντίστοιχες θερμοκρασίες για κάθε μία από τις ημέρες του μήνα και θα καταχωρεί τα στοιχεία σε πίνακες. Β) θα εμφανίζει για κάθε πόλη το όνομά της και τη μέγιστη θερμοκρασία που καταγράφηκε σε αυτήν στη διάρκεια του μήνα. Ο υπολογισμός της μέγιστης θερμοκρασίας να γίνεται με τη χρήση υποπρογράμματος που θα κατασκευάσετε για το σκοπό αυτό. 70 Γ) θα διαβάζει το όνομα μιας πόλης και θα εμφανίζει τη μέγιστη θερμοκρασία που καταγράφηκε στην πόλη αυτή στη διάρκεια του μήνα. Ο υπολογισμός της μέγιστης θερμοκρασίας πρέπει να γίνεται με τη βοήθεια του υποπρογράμματος που αναπτύχθηκε στο προηγούμενο ερώτημα (ii). Αν η πόλη αυτή δεν υπάρχει να εμφανίζεται κατάλληλο μήνυμα. Δ) θα υπολογίζει και θα εμφανίζει τη μέγιστη θερμοκρασία που παρατηρήθηκε κατά τη διάρκεια όλου του μήνα και το όνομα της πόλης στην οποία καταγράφηκε. Ο υπολογισμός καθώς και η εμφάνιση των στοιχείων που προαναφέρθηκαν να γίνεται με τη χρήση υποπρογράμματος που θα κατασκευάσετε για το σκοπό αυτό. 75. Το Υπουργείο Ναυτιλίας σε συνεργασία με το Υπουργείο Τουρισμού σχεδιάζουν να προωθήσουν πληροφορίες ιστιοπλοΐας για τις αποστάσεις σε ναυτικά μίλια 15 απομακρυσμένων νησιών του Αιγαίου έτσι ώστε να ενισχυθεί ο θαλασσινός τουρισμός. Για το έργο αυτό χρειάζεται μονοδιάστατος πίνακας Ονόματα 15 θέσεων που περιέχει τα ονόματα 15 νησιών καθώς και δισδιάστατος τετραγωνικός πίνακας Απόσταση με 15 γραμμές και 15 στήλες που περιέχει τις μεταξύ τους αποστάσεις σε ναυτικά μίλια ως εξής: Στο στοιχείο Απόσταση [5,3] καταχωρείται η απόσταση μεταξύ των νησιών που τα ονόματά τους βρίσκονται στην 5η και την 3η θέση του πίνακα Ονόματα. Για παράδειγμα στον πίνακα του σχήματος που καταχωρούνται οι αποστάσεις για 6 μόνο νησιά, η απόσταση μεταξύ της Φολέγανδρος - - - - - - Ανάφη 3 - - - - - Αστυπάλαια 5 8 - - - - Σίκινος 9 2 7 - - - Κίμωλος 12 10 4 6 - - Τήλος 13 14 11 15 9 - Πίνακες με τα ονόματα και τις αποστάσεις για 6 μόνο νησιά του Αιγαίου Να υλοποιήσετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο: α) Διαβάζει τα ονόματα των νησιών και τα αποθηκεύει σε μονοδιάστατο πίνακα β) Εισάγει σε δισδιάστατο πίνακα τις αποστάσεις μεταξύ των νησιών ως εξής : 71 Τήλος Κίμωλος Σίκινος Αστυπάλαια Ανάφη Φολέγανδρος Κιμώλου και της Αστυπάλαιας είναι 4 ναυτικά μίλια. Διαβάζει από το πληκτρολόγιο και τοποθετεί τις αποστάσεις μόνο για τις θέσεις του πίνακα που βρίσκονται κάτω της κυρίας διαγωνίου ελέγχοντας να είναι ακέραιοι θετικοί αριθμοί. γ) Εντοπίζει και εμφανίζει τα ονόματα των 2 νησιών με τη μικρότερη μεταξύ τους απόσταση δ) Να κατασκευαστεί συνάρτηση η οποία θα δέχεται σαν παράμετρο έναν πίνακα[16,16] με στοιχεία συμπληρωμένα μόνο κάτω από την κύρια διαγώνιο και έναν αριθμό από το 1 ως το 16 που αντιστοιχεί στη θέση ενός νησιού στον πίνακα Π. Η συνάρτηση θα επιστρέφει το μέσο όρο όλων των στοιχείων του πίνακα που βρίσκονται στην ίδια γραμμή καθώς και αυτών που βρίσκονται στην ίδια στήλη με τον αριθμό που δόθηκε σαν παράμετρο και βρίσκονται κάτω από την κύρια διαγώνιο. ε) Θα υπολογίζει και θα εμφανίζει το νησί που έχει τον ελάχιστο μέσο όρο αποστάσεων από τα άλλα νησιά έτσι ώστε να κατασκευαστεί εκεί ένας σταθμός ανεφοδιασμού. Για τον υπολογισμό του μέσου όρου της απόστασης κάποιου νησιού από όλα τα άλλα να χρησιμοποιηθεί η συνάρτηση του προηγούμενου ερωτήματος. Σημείωση: Θεωρήστε ότι όλες οι αποστάσεις είναι διαφορετικές μεταξύ τους. Στην απάντηση η συνάρτηση θα γράφεται μετά το τέλος του κυρίως προγράμματος σύμφωνα με τους συντακτικούς κανόνες της ΓΛΩΣΣΑΣ. 76. Σε έναν υποθετικό ευρωπαϊκό διαγωνισμό έντεχνου τραγουδιού συμμετέχουν 24 χώρες. Κάθε χώρα ψηφίζει 7 άλλες χώρες δίνοντας 7 διαφορετικές (αλλά συγκεκριμένες) βαθμολογίες οι οποίες είναι αποθηκευμένες σε αύξουσα σειρά στον πίνακα Πόντοι[7]. Πόντοι 1 3 1 2 4 7 8 10 3 4 5 6 12 7 Κάθε μια χώρα με τη σειρά δίνει τη βαθμολογία της σε άλλες 7 χώρες. Διαδοχικά δίνει το όνομα της χώρας που θα πάρει τον ένα βαθμό, στη συνέχεια δίνει το όνομα της χώρας που δίνει τους 3 βαθμούς κλπ μέχρι να δώσει και τους 12 βαθμούς. Για λόγους αρχειοθέτησης αποθηκεύουμε σε πίνακα Β[24,24] τη βαθμολογία που έδωσε κάθε χώρα στις 7, της προτίμησής της και στις υπόλοιπες τοποθετούμε το 0. Το στοιχείο Β[i,j], περιέχει τη βαθμολογία που δίνει η χώρα που βρίσκεται στη γραμμή i στη χώρα που βρίσκεται στη στήλη j. α) Να γραφεί συνάρτηση η οποία θα δέχεται σαν παράμετρο ένα πίνακα τύπου χαρακτήρα 24 θέσεων και μια λέξη. Η συνάρτηση θα επιστρέφει τη θέση του πίνακα στην οποία υπάρχει η λέξη ή 0 αν η λέξη δεν υπάρχει σε κάποια από τις θέσεις του πίνακα. β) Να γραφεί πρόγραμμα σε ΓΛΩΣΣΑ το οποίο αποθηκεύει στον πίνακα Ο[24] τα ονόματα των χωρών που συμμετέχουν στο διαγωνισμό και αποθηκεύει στον πίνακα Πόντοι[7] τους συγκεκριμένους πόντους σε κάθε θέση όπως φαίνεται στο παράδειγμα 72 διαβάζει για κάθε χώρα τα ονόματα 7 διαφορετικών χωρών στις οποίες δίνει βαθμολογία και θα αποθηκεύει στον πίνακα Β[24,24] την αντίστοιχη βαθμολογία κάνοντας χρήση του πίνακα Πόντοι[7] και με τη βοήθεια της συνάρτησης . Θα πραγματοποιείται έλεγχος εισόδου που θα εξασφαλίζει ότι η κάθε χώρα δεν βαθμολογεί τον εαυτό της και ότι κάθε όνομα χώρας στην οποία δίνει βαθμολογία είναι καταχωρημένη στον πίνακα Ο[24]. γ) Στη συνέχεια το πρόγραμμα θα υπολογίζει τη συνολική βαθμολογία κάθε χώρας και θα εκτυπώνει μια λίστα με τα ονόματα των χωρών που συμμετείχαν στο διαγωνισμό και την αντίστοιχη βαθμολογία. Η λίστα θα είναι ταξινομημένη κατά φθίνουσα σειρά βαθμολογίας. Σε περίπτωση ισοβαθμίας οι χώρες θα εμφανίζονται σε αλφαβητική σειρά 77. Ένας τρόπος υπολογισμού του συνημιτόνου ενός αριθμού, που χρησιμοποιείται συχνά από τους υπολογιστές είναι με τον υπολογισμό του παρακάτω αθροίσματος: συνx = 1 − x2 x4 x6 x 2v + − + ... + (−1) v ⋅ + ... 2! 4! 6! (2v)! όπου ο αριθμός x είναι σε ακτίνια. Για να υπολογίσετε το παραπάνω άθροισμα εργαστείτε ως εξής: i) Κατασκευάστε διαδικασία η οποία θα διαβάζει τη γωνία x σε μοίρες της οποίας θέλουμε να βρούμε το συνημίτονο και ένα αριθμό κ, ο οποίος αντιστοιχεί στην επιθυμητή ακρίβεια του υπολογισμού του αθροίσματος. Κατάλληλος έλεγχος εισόδου θα εξασφαλίζει ότι για την ακρίβεια θα ισχύει: 0.001 ≤ κ ≤ 0.1. Η διαδικασία θα μετατρέπει τον αριθμό σε ακτίνια και θα δίνει τη νέα τιμή μέσω παραμέτρου στο κύριο πρόγραμμα καθώς επίσης και την ακρίβεια κ. Δίνεται: 360 μοίρες = 2π ακτίνια όπου π = 3.14 ii) Κατασκευάστε μια συνάρτηση με όνομα παραγοντικό που θα δέχεται σαν παράμετρο έναν ακέραιο αριθμό ν μεγαλύτερο ή ίσο με 0 και θα υπολογίζει το ν! (παραγοντικό) σύμφωνα με τον τύπο: 1, αν ν=0 ν! = 1*2*3* …*ν, αν ν>0 iii) Γράψτε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο με τη βοήθεια των υποπρογραμμάτων των ερωτημάτων i) και ii) θα υπολογίζει και θα εμφανίζει το συνημίτονο του x. Η επαναληπτική διαδικασία θα σταματάει όταν προστεθεί στο άθροισμα κάποιος όρος το οποίου η απόλυτη τιμή θα είναι μικρότερη από το κ. 78. Δίνονται δύο υποπρογράμματα τα οποία θα πρέπει να χρησιμοποιήσετε. ΔΙΑΔΙΚΑΣΙΑ Τ(Α, Ν) ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: Α[50], TEMP 73 ΑΚΕΡΑΙΕΣ: Ι, Κ, Ν ΑΡΧΗ ΓΙΑ Κ ΑΠΟ 2 ΜΕΧΡΙ Ν ΓΙΑ Ι ΑΠΟ Ν ΜΕΧΡΙ Κ ΜΕ_ΒΗΜΑ -1 ΑΝ Α[Ι]<Α[Ι-1] ΤΟΤΕ TEMP Å Α[Ι] Α[Ι] Å Α[Ι-1] Α[Ι-1] Å TEMP ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΣΥΝΑΡΤΗΣΗ Πλήθος(Ν, Α, Χ): ΑΚΕΡΑΙΑ ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: Α[50], Χ ΑΚΕΡΑΙΕΣ: Ι, Ν, Σ ΑΡΧΗ ΣÅ0 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ Ν ΑΝ Α[Ι] = Χ ΤΟΤΕ Σ Å Σ+1 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Πλήθος Å Σ ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ 1) Περιγράψτε τη λειτουργία που εκτελούν τα δύο υποπρογράμματα. 2) Υλοποιήσετε ένα πρόγραμμα το οποίο: α) Διαβάζει τους βαθμούς που πήραν οι μαθητές δυο τμημάτων Γ΄ τάξης, τους οποίους καταχωρεί σε δύο πίνακες 50 θέσεων ο καθένας. Το ένα τμήμα έχει 15 μαθητές και το άλλο 22. Πρέπει να γίνεται έλεγχος έτσι ώστε οι βαθμοί που διαβάζονται να είναι μεγαλύτεροι του 0 και μικρότεροι ή ίσοι του 20. β) Ταξινομεί τους πίνακες κατά αύξουσα σειρά. γ) Διαβάζει από τον χρήστη βαθμούς και θα εμφανίζει πόσες φορές εμφανίζονται οι βαθμοί αυτοί στο πρώτο τμήμα και πόσες στο δεύτερο. Το πρόγραμμα θα σταματάει να διαβάζει βαθμούς όταν ο χρήστης δώσει βαθμό -1. 74 75
© Copyright 2024 Paperzz