ΕΡΩΤΗΣΕΙΣ 1. Τι καλείται ψευδοκώδικας; 2. Τι καλείται λογικό διάγραμμα; 3. Για ποιο λόγο είναι απαραίτητη η τυποποίηση του αλγόριθμου; 4. Ποιες είναι οι βασικές αλγοριθμικές δομές; 5. Να περιγράψετε τις δομές της επιλογής. 6. Να περιγράψετε τις δομές της επανάληψης. 7. Ποιος είναι ο ελάχιστος και ποιος ο μέγιστος αριθμός επαναλήψεων που μπορούν να κάνουν οι 3 δομές επανάληψης και γιατί. 8. Σωστό ή Λάθος a) Η καταγραφή του αλγόριθμου είναι απαραίτητη βοήθεια για την επίλυση ενός προβλήματος. b) Ο ψευδοκώδικας χρησιμοποιεί σχήματα για την αναπαράσταση του αλγόριθμου. c) Στη δομή επανάληψης εκτελούνται τουλάχιστον μια φορά οι εντολές που περιέχονται. d) Αν οι μεταβλητές Α, Β είναι αριθμητικές και έχουν κάποια τιμή, τότε οι παρακάτω εντολές ανταλλάσσουν τις τιμές τους: Α = Α + Β Β = Α - Β Α = Α - Β 9. Η τιμή μιας μεταβλητής δεν μπορεί να αλλάξει κατά τη διάρκεια εκτέλεσης ενός αλγορίθμου. 10. Οι εντολές «Εμφάνισε», «Γράψε» και «Εκτύπωση» είναι εντολές εξόδου ενός αλγορίθμου. 11. Στη δομή ακολουθίας μια συγκεκριμένη εντολή μπορεί να εκτελεστεί πολλές φορές. 12. Η δομή ακολουθίας εκτελείται όταν μια συνθήκη είναι αληθής. 13. Στη δομή ακολουθίας εκτελούνται όλες οι εντολές. 14. Ποιο από τα παρακάτω αποτελεί εντολή της ψευδογλώσσας των αλγορίθμων; a) Α + Β = 1 b) Α = Β * 5 c) Α + Β = 23 d) Α = 2 * Β = 12 15. Ποια η τιμή της μεταβλητής Α μετά την εκτέλεση της παρακάτω εντολής; Α = ( 5 + 4 / 2 * 2 ) * 2 ( 3 * 2 + 5 3 ) * ( 3 * 2 + 5 3 ) + 9 / 3 2 a) -53 b) -37 c) -125 d) -45 16. Σε ένα πρόγραμμα έχουμε μια μεταβλητή Πλήθος, την οποία θέλουμε να αυξήσουμε κατά μια μονάδα. Ποια από τις παρακάτω εντολές έχει σαν αποτέλεσμα την αύξηση αυτή; a) Πλήθος + 1 = Πλήθος b) Πλήθος = Πλήθος + 1 c) Πλήθος = +1 d) Πλήθος = Πλήθος * 1 17. Σωστό ή Λάθος; a) Η ροή ενός αλγορίθμου μπορεί να αλλάζει με βάση κάποια συνθήκη, χρησιμοποιώντας τη δομή επιλογής. b) Στη δομή επιλογής υπάρχει περίπτωση κάποιες εντολές να μην εκτελούνται ποτέ. c) Η συνθήκη που ελέγχεται σε μια δομή επιλογής μπορεί να πάρει περισσότερες από δυο διαφορετικές τιμές. d) Κάθε εντολή «Αν» περιέχει «Αλλιώς». e) Μια δομή επιλογής μπορεί να περιλαμβάνει μόνο εντολές εκχώρησης τιμής. f) Για τον υπολογισμό του μέσου όρου τριών αριθμών είναι απαραίτητο να χρησιμοποιηθεί η δομή επιλογής. g) Με την εντολή «Αν Χ div 2 = 0 τότε» ελέγχουμε αν ο Χ είναι άρτιος.
h) Οι επαναληπτικές δομές χρησιμοποιούνται στην περίπτωση που μια ομάδα εντολών πρέπει να εκτελεστεί πολλές φορές. i) Μια δομή επανάληψης πρέπει να φροντίζει για τη μεταβολή της τιμής της συνθήκης ελέγχου, έτσι ώστε κάποτε να τερματίζεται η επανάληψη. j) Στην εντολή «Για» οι εντολές επαναλαμβάνονται για προκαθορισμένο αριθμό επαναλήψεων. k) Η δομή χρησιμοποιείται μόνο όταν γνωρίζουμε το πλήθος των επαναλήψεων. l) Στη δομή η ομάδα εντολών εκτελείται κατ' επανάληψη μέχρι η συνθήκη να γίνει ψευδής. m) Με τη δομή «Επανάλαβε...μέχρι» η ομάδα εντολών εκτελείται τουλάχιστον μια φορά. 18. Δίδεται το παρακάτω τμήμα αλγορίθμου: Διάβασε α β = 2 * α + 1 γ = α + β Αν γ > β τότε β = γ Αλλιώς γ = β Αν Εμφάνισε α,β,γ Μετά την εκτέλεση του παραπάνω τμήματος αλγορίθμου, ποιες θα είναι οι τιμές των μεταβλητών α, β, γ που θα εμφανιστούν όταν: α) α = 10 και β) α = -10 19. Δίνεται το παρακάτω τμήμα αλγορίθμου. a) Το τμήμα αλγορίθμου περιγράφει δομή επιλογής ή επανάληψης; b) Για ποια τιμή του Χ τερματίζεται ο αλγόριθμος; c) Κατά την εκτέλεση του τμήματος αλγορίθμου, ποιες είναι οι τιμές του Χ που θα εμφανιστούν; ΑΣΚΗΣΕΙΣ Χ = 13 Χ <= 20 Εμφάνισε Χ Χ = Χ + 2 Εμφάνισε Χ 1. Να αναπτύξετε αλγόριθμο, ο οποίος θα διαβάζει έναν θετικό αριθμό x και θα υπολογίζει και εκτυπώνει την τιμή της συνάρτησης: f x = x 7 9 3 x 4 3 x 3 2. Το ημερομίσθιο ενός εργαζόμενου είναι 35, το οποίο επιβαρύνεται με ποσοστό κρατήσεων 11% για ασφάλεια και 8,5% για φόρο. Να αναπτύξετε αλγόριθμο που θα διαβάζει το όνομα ενός εργαζόμενου και τις ημέρες απασχόλησής του για τον τρέχοντα μήνα και θα εμφανίζει τις καθαρές αποδοχές του.
3. Να γραφεί σε μορφή ψευδοκώδικα το παρακάτω διάγραμμα ροής. Ποιος είναι ο πίνακας τιμών των μεταβλητών X και Y, αν εισαχθούν οι τιμές α=5 και β=-2 από τον χρήστη; Διάβασε α,β Χ = α mod 2 Y = 2 * α + β ^ 3 Χ = Υ * Χ Υ = (Υ div X) ^ 2 Εκτύπωσε Χ, Υ 4. Δίνεται ο παρακάτω αλγόριθμος. a) Να παρουσιάσετε τον πίνακα τιμών και τις τιμές που θα εκτυπωθούν, αν εισαχθούν οι τιμές α=5, β=6. b) Να δημιουργήσετε το διάγραμμα ροής. Διάβασε α, β γ = β*β mod α Αν γ > 1 τότε γ = α * 5 Αλλιώς γ = γ + α * 5 Αν α + γ <= -10 τότε β = β + γ α = α γ Αλλιώς αν α + β <= 20 τότε α = α + γ β = β γ Αλλιώς γ = γ (α + β) α = α + β Αν Αν Εμφάνισε α,β,γ 5. Το Internet Cafe της γειτονιάς έχει την εξής πολιτική χρέωσης: Τα πρώτα 30 λεπτά χρεώνονται 1,45, ενώ κάθε επόμενο 30λεπτο χρεώνονται προς 1,10. Πρέπει να επισημανθεί ότι μόλις περάσει έστω και ένα λεπτό χρεώνεται ολόκληρο το 30λεπτο. Να αναπτύξετε αλγόριθμο που θα διαβάζει το χρόνο (σε λεπτά) που παρέμεινε κάποιος πελάτης στο Internet Cafe και θα εκτυπώνει το λογαριασμό.
6. Η χρέωση (κλιμακωτή) στους λογαριασμούς της ΕΠΑΛ-ΤΕΛ είναι η εξής: Πάγιο 15,00 Αστικές Μονάδες 0,030 ανά μονάδα Υπεραστικές Μονάδες Χ 0 <= Χ <= 150 0, 045 ανά μονάδα 150 <= X <= 500 0, 039 ανά μονάδα 500 < X 0, 033 ανά μονάδα Να αναπτύξετε αλγόριθμο που θα διαβάζει το όνομα ενός συνδρομητή, τις αστικές και τις υπεραστικές μονάδες του και θα εκτυπώνει το ποσό του λογαριασμού. Λάβετε υπόψη ότι υπάρχει και επιβάρυνση φόρου τηλεπικοινωνιών 4%. 7. Να αναπτύξετε αλγόριθμο που θα διαβάζει Ν ακέραιους (όπου Ν δεδομένος ακέραιος) και θα υπολογίζει και εκτυπώνει το άθροισμα και τον μέσο όρο των άρτιων. 8. Να σχηματίσετε το διάγραμμα ροής για την παρακάτω κωδικοποίηση: Διάβασε χ, ν μ = ν ζ = χ α = 1 μ > 0 μ mod 2 = 0 μ = μ div 2 ζ = ζ * ζ μ = μ 1 α = α * ζ Εκτύπωσε α Στη συνέχεια να σχηματίσετε τον πίνακα τιμών αν: α) χ = 4, ν = 2 β) χ = 3, ν = 3 Τι θα εκτυπωθεί σε καθεμιά από τις δύο αυτές περιπτώσεις; Μελετώντας τα αποτελέσματα, ποια πιστεύετε ότι είναι η λειτουργία του αλγορίθμου;
9. Να ξαναγράψετε το παρακάτω τμήμα αλγόριθμου χρησιμοποιώντας όμως μόνο τη δομή επανάληψης «Επανάλαβε...Μέχρι»: α = 0 β = 5 α >= -54 α = α -3 β = β + α ^ 2 Τύπωσε α,β 10. Να εντοπίσετε τα λάθη στον παρακάτω αλγόριθμο: Διάβασε α ζ = 2 * α + β Εκτύπωσε ζ 11. Ο τελικός βαθμός κάποιου μαθητή σε ένα μάθημα υπολογίζεται με βάση την προφορική και γραπτή βαθμολογία του με την ακόλουθη διαδικασία: Αν η διαφορά των δύο βαθμών είναι μεγαλύτερη από πέντε (5) μονάδες, τότε ο προφορικός βαθμός προσαρμόζεται (δηλαδή αυξάνεται ή μειώνεται) έτσι, ώστε η αντίστοιχη διαφορά να μειωθεί στις τρεις (3) μονάδες, αλλιώς ο προφορικός βαθμός παραμένει αμετάβλητος. Ο τελικός βαθμός είναι ο μέσος όρος των δύο βαθμών. Παράδειγμα προσαρμογής προφορικού βαθμού: Αν ο γραπτός βαθμός είναι 18 και ο προφορικός 11, τότε ο προφορικός γίνεται 15, ενώ, αν ο γραπτός είναι 11 και ο προφορικός 19, τότε ο προφορικός γίνεται 14. Να αναπτύξετε αλγόριθμο ο οποίες: a) θα διαβάζει τους δύο βαθμούς b) θα υπολογίζει τον τελικό βαθμό σύμφωνα με την παραπάνω διαδικασία c) θα εμφανίζει τον τελικό βαθμό και, αν αυτός είναι μεγαλύτερος ή ίσος του 10, το μήνυμα ΠΡΟΑΓΕΤΑΙ, αλλιώς το μήνυμα ΑΠΟΡΡΙΠΤΕΤΑΙ. 12. Ο Δείκτης Μάζας του ανθρώπινου Σώματος (ΔΜΣ) υπολογίζεται από το βάρος (Β) σε χλγ. και το ύψος (Υ) σε μέτρα με τον τύπο: ΔΜΣ = Β Υ 2 Ο ανωτέρω τύπος ισχύει για άτομα άνω των 18 ετών. Το άτομο ανάλογα με την τιμή του ΔΜΣ χαρακτηρίζεται σύμφωνα με τον παρακάτω πίνακα: ΔΜΣ < 18,5 Αδύνατο άτομο 18,5 ΔΜΣ < 25 Κανονικό άτομο 25 ΔΜΣ < 30 Βαρύ άτομο 30 ΔΜΣ Υπέρβαρο άτομο
Να γράψετε αλγόριθμο ο οποίος: a) Θα διαβάζει την ηλικία, το βάρος και το ύψος του ατόμου. b) Εάν η ηλικία είναι μεγαλύτερη των 18 ετών, τότε: 1. Θα υπολογίζει το ΔΜΣ. 2. Θα ελέγχει την τιμή του ΔΜΣ από τον ανωτέρω πίνακα και θα εμφανίζει τον αντίστοιχο χαρακτηρισμό. c) Εάν η ηλικία είναι μικρότερη ή ίση των 18 ετών, τότε να εμφανίζει το μήνυμα «Δεν ισχύει ο δείκτης ΔΜΣ». Παρατήρηση: Θεωρήστε ότι το βάρος, το ύψος και η ηλικία είναι θετικοί αριθμοί. 13. Δίνεται το παρακάτω τμήμα αλγορίθμου, όπου οι μεταβλητές Κ, Λ, Μ είναι ακέραιες: Κ = 35 Λ = 17 Μ = 0 Λ > 0 Αν Λ mod 2 = 1 τότε Μ = Μ + Κ Αν Κ = Κ * 2 Λ = Λ div 2 Εμφάνισε Μ a) Να συμπληρώσετε τον παρακάτω πίνακα: Αρχικές τιμές 1η επανάληψη 2η επανάληψη 3η επανάληψη 4η επανάληψη 5η επανάληψη Κ Λ Μ b) Για ποια τιμή της μεταβλητής Λ τερματίζει ο αλγόριθμος; c) Ποια είναι η τελική τιμή της μεταβλητής Μ;
14. Δίνεται το λογικό διάγραμμα: Διάβασε Α,Β Σ = 0 Ναι Ναι Β>0 Β mod 2 = 1 Σ = Σ + Α Όχι Όχι Εμφάνισε Σ Α = Α * 2 Β = Β div 2 a) Να μετατρέψετε το παραπάνω λογικό διάγραμμα σε ψευδοκώδικα. b) Να γράψετε τον πίνακα τιμών των μεταβλητών Α, Β και Σ, αν ως αρχικές τιμές δοθούν: Α = 15 και Β = 20 15. Μια εταιρία δημοσκοπήσεων θέτει σε ένα δείγμα 2000 πολιτών ένα ερώτημα. Για την επεξεργασία των δεδομένων να αναπτύξετε αλγόριθμο που: a) Θα διαβάζει το φύλο του πολίτη (Α = Άνδρας, Γ = Γυναίκα) και θα ελέγχει την ορθή εισαγωγή. b) Θα διαβάζει την απάντηση στο ερώτημα, η οποία μπορεί να είναι ΝΑΙ, ΟΧΙ, ΔΕΝ ΞΕΡΩ και θα ελέγχει την ορθή εισαγωγή. c) Θα υπολογίζει και θα εμφανίζει το πλήθος των ατόμων που απάντησαν ΝΑΙ. d) Στο σύνολο των ατόμων που απάντησαν ΝΑΙ, θα υπολογίζει και θα εμφανίζει το ποσοστό των ανδρών και το ποσοστό των γυναικών. 16. Να αναπτύξετε αλγόριθμο που θα διαβάζει άγνωστο πλήθος θετικών ακεραίων και θα εκτυπώνει μήνυμα σχετικά με το αν είναι όλοι άρτιοι ή όχι. Η επανάληψη πρέπει να τερματίζεται όταν εισαχθεί ακέραιος μικρότερος ή ίσος από το μηδέν.