ΔΙΑΓΩΝΙΣΜΑ ΒΑΘΜΟΣ: στο μάθημα προσανατολισμού Γ τάξης ενιαίου Λυκείου: Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον [εξεταστέα ύλη: Βασικές Έννοιες Αλγορίθμων, Δομή Επιλογής, εντολή ΌΣΟ, Eισαγωγή στον Προγραμματισμό] Ονοματεπώνυμο: ΘΕΜΑ Α Α1 Να χαρακτηρίσετε ως σωστή (Σ) ή λανθασμένη (Λ), κάθε μία από τις παρακάτω προτάσεις: 1 Όλες οι δομές επιλογής μπορούν να μετατραπούν σε απλή δομή Αν τότε 2 Ο μεταγλωττιστής διορθώνει τα λογικά λάθη του προγράμματος 3 Αν στην εντολή ΌΣΟ (συνθήκη) ΕΠΑΝΑΛΑΒΕ η συνθήκη γίνει ψευδής, εκτελείται η εντολή που βρίσκεται αμέσως μετά την εντολή ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ 4 Το πρόγραμμα που προκύπτει από τη σύνδεση του αντικειμένου με τις βιβλιοθήκες είναι το πηγαίο 5 Η εντολή ΌΣΟ ΕΠΑΝΑΛΑΒΕ, εκτελείται τουλάχιστον μία φορά Α2 ίνεται το παρακάτω τμήμα αλγορίθμου: (5x2) 1 Ι 1 2 Όσο Ι < 10 επανάλαβε 3 Εμφάνισε Ι 4 Ι Ι + 3 5 Τέλος_επανάληψης 6 Εμφάνισε Ι Α Να σχεδιάσετε το ισοδύναμο διάγραμμα ροής Μονάδες 5 Β Να κάνετε τον πίνακα τιμών του παραπάνω αλγορίθμου Μονάδες 5 Α3 Α Ποιες είναι οι τρεις αλγοριθμικές δομές που χρησιμοποιούνται στο δομημένο προγραμματισμό; Ποια η λειτουργία της εντολής GOTO και γιατί η χρήση της έχει περιοριστεί τόσο πολύ; (3+3) Β Να περιγραφεί η διαδικασία της μεταγλώττισης και σύνδεσης ενός προγράμματος, συμπεριλαμβανόμενης και της εύρεσης και διόρθωσης λαθών Μονάδες 4 1 σ ελίδα
Α4 Δίνεται ο παρακάτω αλγόριθμος: Αλγόριθμος Εμφωλευμένες Διάβασε α Αν α < 0 τότε Εμφάνισε αρνητικό Αλλιώς Αν α <= 100 τότε Εμφάνισε μεταξύ 0 και 100 Αλλιώς Αν α <= 200 τότε Εμφάνισε μεταξύ 100 και 200 Αλλιώς Εμφάνισε μεγαλύτερο από 200 Τέλος Εμφωλευμένες Να αναπτύξετε αλγόριθμο ισοδύναμο με τον παραπάνω, χρησιμοποιώντας την εντολή ΑΝ ΑΛΛΙΩΣ_ΑΝ χωρίς χρήση εμφωλευμένων επιλογών Μονάδες 40 2 σ ελίδα
ΘΕΜΑ Β Σε κάποια εξεταστική δοκιμασία κάθε γραπτό εξεταζόμενου, αξιολογείται αρχικά από δύο βαθμολογητές και υπάρχει περίπτωση το γραπτό να χρειάζεται αναβαθμολόγηση από τρίτο βαθμολογητή Στην περίπτωση αναβαθμολόγησης ο τελικός βαθμός υπολογίζεται ως εξής: 1 Αν ο βαθμός του τρίτου βαθμολογητή είναι ίσος με το μέσο όρο (ΜΟ) των βαθμών των δύο πρώτων βαθμολογητών, τότε ο τελικός βαθμός είναι ο ΜΟ 2 Αν ο βαθμός του τρίτου βαθμολογητή είναι μικρότερος από το μικρότερο βαθμό (ΜΙΝ) των δύο πρώτων βαθμολογητών, τότε ο τελικός βαθμός είναι ο ΜΙΝ 3 Διαφορετικά, ο τελικός βαθμός είναι ο μέσος όρος του βαθμού του τρίτου βαθμολογητή με τον πλησιέστερο προς αυτόν βαθμό των δύο πρώτων βαθμολογητών Να αναπτύξετε πρόγραμμα υπολογισμού του τελικού βαθμού ενός γραπτού με αναβαθμολόγηση, το οποίο: Β1 Να διαβάζει το όνομα του υποψηφίου εξεταζόμενου, εμφανίζοντας κατάλληλο μήνυμα Β2 Να διαβάζει τους βαθμούς του πρώτου, του δεύτερου και του τρίτου βαθμολογητή του συγκεκριμένου γραπτού, εμφανίζοντας κατάλληλα μηνύματα Β3 Να υπολογίζει και να εκτυπώνει το μεγαλύτερο (ΜΑΧ) και το μικρότερο (ΜΙΝ) από τους βαθμούς του πρώτου και του δεύτερου βαθμολογητή Β4 Να υπολογίζει τον τελικό βαθμό του γραπτού σύμφωνα με την παραπάνω διαδικασία και να εκτυπώνει το όνομα του εξεταζόμενου και τον τελικό βαθμό του Β5 Η παραπάνω διαδικασία να επαναλαμβάνεται, μέχρι να δοθεί ως όνομα εξεταζόμενου η λέξη «ΤΕΛΟΣ» Παρατήρηση: Θεωρήστε ότι και οι τρεις βαθμοί είναι θετικοί ακέραιοι αριθμοί Μονάδες 30 3 σ ελίδα
ΘΕΜΑ Γ Ομάδα μαθητών στα πλαίσια κάποιας περιβαλλοντικής εκδρομής θα διαμείνει σε ξενοδοχείο Η ομάδα μπορεί να αποτελείται από 2 καθηγητές και από 4 μέχρι και 15 μαθητές Το ξενοδοχείο έχει δίκλινα και τρίκλινα δωμάτια Στο δίκλινο η διανυκτέρευση κοστίζει 60, ενώ στο τρίκλινο 75 Για την κατανομή των μαθητών στα δωμάτια ισχύουν οι εξής κανόνες: οι συνοδοί καθηγητές καταλαμβάνουν 1 δίκλινο δωμάτιο Οι μαθητές καταλαμβάνουν όσο το δυνατόν περισσότερα τρίκλινα Επίσης, ποτέ δεν μένει κάποιος μαθητής μόνος του σε δωμάτιο Για παράδειγμα, 7 μαθητές κατανέμονται σε ένα τρίκλινο και δύο δίκλινα, ενώ οι 8 μαθητές θα κατανεμηθούν σε δύο τρίκλινα και ένα δίκλινο δωμάτιο Η εκδρομή μπορεί να είναι είτε πενταήμερη (τέσσερις (4) διανυκτερεύσεις), είτε επταήμερη (έξι (6) διανυκτερεύσεις) Να γραφεί πρόγραμμα το οποίο: Γ1 Θα διαβάζει τον αριθμό των διανυκτερεύσεων που θέλει να μείνει η ομάδα καθώς και το πλήθος των μαθητών που την αποτελούν Γ2 Στη συνέχεια, να υπολογίζει και να εμφανίζει (με κατάλληλο μήνυμα) το ποσό που θα πληρώσει η ομάδα Μονάδες 15 Γ3 Σε περίπτωση που οι διανυκτερεύσεις είναι περισσότερες από 4, το ξενοδοχείο προσφέρει έκπτωση 10% στο τελικό ποσό Σε αυτήν την περίπτωση, να υπολογίζεται το ποσό της έκπτωσης και το πρόγραμμα να εμφανίζει: το αρχικό ποσό που είναι να πληρώσει η ομάδα, το ποσό της έκπτωσης, καθώς και το ποσό που θα πληρώσει τελικά η ομάδα Όλα τα αποτελέσματα θα συνοδεύονται με κατάλληλα μηνύματα Μονάδες 5 Μονάδες 30 Καλή επιτυχία!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Παπαγιαννούλας Νίκος, Φυσικός Παν Αθηνών, ΜΔΕ Παν Αθηνών, MSc ΕΜΠ 4 σ ελίδα
ΘΕΜΑ Α Α1 (ενδεικτικές)απαντησεισ Α2 Α 1 Σωστό 2 Λάθος 3 Σωστό 4 Λάθος 5 Λάθος ΑΡΧΗ Ι <-- 1 Μονάδες 5 Ι < 10 Α Ψ ΓΡΑΨΕ Ι Ι <-- Ι + 3 ΓΡΑΨΕ Ι ΤΕΛΟΣ Β Μονάδες 5 αρ εντολής Ι συνθήκη οθόνη 1 1 2 1 < 10 (Α) 3 1 4 4 2 4 < 10 (Α) 3 4 4 7 2 7 < 10 (Α) 3 7 4 10 2 10 < 10 (Ψ) 6 10 5 σ ελίδα
Α3 Α Βιβλίο μαθητή σελίδες 118-119, ή φυλλάδιο σελίδα 173 Β Βιβλίο μαθητή σελίδες 121-122, ή φυλλάδιο σελίδες 174-175 Μονάδες 4 Α4 Αλγόριθμος Εμφωλευμένες Διάβασε α Αν α < 0 τότε Εμφάνισε αρνητικό Αλλιώς_αν α <= 100 τότε Εμφάνισε μεταξύ 0 και 100 Αλλιώς_αν α <= 200 τότε Εμφάνισε μεταξύ 100 και 200 Αλλιώς! αν α > 200 τότε Εμφάνισε μεγαλύτερο από 200 Τέλος Εμφωλευμένες 6 σ ελίδα
ΘΕΜΑ Β ΠΡΟΓΡΑΜΜΑ ΘέμαΓ ΜΕΤΑΒΛΗΤΕΣ ΑΡΧΗ ΑΚΕΡΑΙΕΣ: βθμ1, βθμ2, βθμ3, ΜΑΧ, ΜΙΝ ΠΡΑΓΜΑΤΙΚΕΣ: ΜΟ ΧΑΡΑΚΤΗΡΕΣ: ΟΝ ΓΡΑΨΕ Δώστε παρακαλώ, όνομα υποψηφίου ΔΙΑΒΑΣΕ ΟΝ ΌΣΟ ΟΝ <> ΤΕΛΟΣ ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ Παρακαλώ, δώστε τους βαθμούς των τριών βαθμολογητών Διάβασε βθμ1, βθμ2, βθμ3 ΜΑΧ βθμ1! θέτουμε αυθαίρετα ως μέγιστη τιμή το βθμ1 ΜΙΝ βθμ2! θέτουμε αυθαίρετα ως ελάχιστη τιμή το βθμ2 Αν βθμ2 > βθμ1 τότε! Αν η υπόθεσή μας είναι λανθασμένη, αλλάζουμε ΜΑΧ, ΜΙΝ ΜΑΧ βθμ2 ΜΙΝ βθμ1 ΜΟ (βθμ1 + βθμ2) / 2! Υπολογίζουμε το μέσο όρο των δύο πρώτων βαθμολογητών Αν βθμ3 = ΜΟ τότε! Αν ο βαθμός του τρίτου βαθμολογητή ισούται με το ΜΟ ΤΒ ΜΟ! τότε ο τελικός βαθμός είναι ο ΜΟ Αλλιώς_αν βθμ3 < ΜΙΝ τότε! ο βαθμός του τρίτου είναι μικρότερος του ΜΟ ΤΒ ΜΙΝ! τότε ο τελικός βαθμός είναι ο ΜΙΝ Αλλιώς!ο βαθμός του τρίτου είναι μεγαλύτερος του ΜΙΝ, δεν ξέρουμε τη σχέση του με το ΜΑΧ διαφμιν βθμ3 ΜΙΝ! υπολογίζουμε πόσο απέχει ο βθμ3 από ΜΙΝ! η μεταβλητή διαφμιν είναι σίγουρα θετικός αριθμός, γιατί βθμ3 > ΜΙΝ διαφμαχ ΜΑΧ βθμ3!υπολογίζουμε πόσο απέχει ο βθμ3 από ΜΑΧ, η μεταβλητή διαφμαχ μπορεί!να είναι θετικός ή αρνητικός αριθμός γιατί δεν γνωρίζουμε τη σχέση του βθμ3 με το ΜΑΧ, οπότε: Αν διαφμαχ < 0 τότε! αν είναι αρνητική η διαφορά, δηλαδή βθμ3 > ΜΑΧ διαφμαχ διαφμαχ * (-1)! πολλαπλασιάζουμε με (-1) για να!γίνει θετικός αριθμός Αν διαφμιν < διαφμαχ τότε! Συγκρίνουμε τις διαφορές, αν είναι μικρότερη η διαφμιν τότε!κοντινότερος στον βθμ3 είναι ο ΜΙΝ, οπότε: ΤΒ (βθμ3 + διαφμιν) / 2 Αλλιώς! αν είναι μικρότερη η διαφμαχ τότε κοντινότερος στον βθμ3 είναι ο ΜΑΧ, οπότε: ΤΒ (βθμ3 + διαφμαχ) / 2 ΓΡΑΨΕ ΟΝΟΜΑ ΥΠΟΨΗΦΙΟΥ, ΟΝ, ΤΕΛΙΚΟΣ ΒΑΘΜΌΣ, ΤΒ ΓΡΑΨΕ Δώστε παρακαλώ, όνομα επόμενου υποψηφίου ΔΙΑΒΑΣΕ ΟΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Τέλος_ΠΡΟΓΡΑΜΜΑΤΟΣ Μονάδες 30 7 σ ελίδα
Β τρόπος: ΑΡΧΗ ΓΡΑΨΕ Δώστε παρακαλώ, όνομα υποψηφίου ΔΙΑΒΑΣΕ ΟΝ ΌΣΟ ΟΝ <> ΤΕΛΟΣ ΕΠΑΝΑΛΑΒΕ ΓΡΑΨΕ Παρακαλώ, δώστε τους βαθμούς των τριών βαθμολογητών Διάβασε βθμ1, βθμ2, βθμ3 ΜΑΧ βθμ1! θέτουμε αυθαίρετα ως μέγιστη τιμή το βθμ1 ΜΙΝ βθμ2! θέτουμε αυθαίρετα ως ελάχιστη τιμή το βθμ2 Αν βθμ2 > βθμ1 τότε! Αν η υπόθεσή μας είναι λανθασμένη, αλλάζουμε ΜΑΧ, ΜΙΝ ΜΑΧ βθμ2 ΜΙΝ βθμ1 ΜΟ (βθμ1 + βθμ2) / 2! Υπολογίζουμε το μέσο όρο των δύο πρώτων βαθμολογητών Αν βθμ3 = ΜΟ τότε! Αν ο βαθμός του τρίτου βαθμολογητή ισούται με το ΜΟ ΤΒ ΜΟ! τότε ο τελικός βαθμός είναι ο ΜΟ Αλλιώς_αν βθμ3 < ΜΙΝ τότε! ο βαθμός του τρίτου είναι μικρότερος του ΜΟ ΤΒ ΜΙΝ! τότε ο τελικός βαθμός είναι ο ΜΙΝ Αλλιώς! ο βαθμός του τρίτου είναι σίγουρα μεγαλύτερος του ΜΙΝ, δεν!ξέρουμε τη σχέση του με το ΜΑΧ διαφμιν Α_Τ(βθμ3 ΜΙΝ)! υπολογίζουμε πόσο απέχει ο βθμ3 από ΜΙΝ! η μεταβλητή διαφμιν είναι σίγουρα θετικός αριθμός διαφμαχ Α_Τ(ΜΑΧ βθμ3)! υπολογίζουμε πόσο απέχει ο βθμ3 από ΜΑΧ! η μεταβλητή διαφμαχ είναι σίγουρα θετικός αριθμός Αν διαφμιν < διαφμαχ τότε! Συγκρίνουμε τις διαφορές, αν είναι!μικρότερη η διαφμιν τότε κοντινότερος στον βθμ3 είναι ο ΜΙΝ, οπότε: ΤΒ (βθμ3 + διαφμιν) / 2 Αλλιώς! αν είναι μικρότερη η διαφμαχ τότε κοντινότερος στον βθμ3 είναι ο ΜΑΧ, οπότε: ΤΒ (βθμ3 + διαφμαχ) / 2 ΤΕΛΟΣ_ΑΝ ΓΡΑΨΕ ΟΝΟΜΑ ΥΠΟΨΗΦΙΟΥ, ΟΝ, ΤΕΛΙΚΟΣ ΒΑΘΜΌΣ, ΤΒ ΓΡΑΨΕ Παρακαλώ, όνομα υποψηφίου ΔΙΑΒΑΣΕ ΟΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ 8 σ ελίδα
ΘΕΜΑ Γ (Μονάδες 20) ΠΡΟΓΡΑΜΜΑ ΘέμαΓ ΣΤΑΘΕΡΕΣ κόστος_δίκλινου = 60 κόστος_τρίκλινου = 75 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: δν, μαθ, υπόλ, τρίκλινα, δίκλινα ΑΡΧΗ ΓΡΑΨΕ Παρακαλώ δώστε αριθμό διανυκτερεύσεων ΔΙΑΒΑΣΕ δν ΓΡΑΨΕ Παρακαλώ δώστε αριθμό μαθητών ΔΙΑΒΑΣΕ μαθ δίκλινα 1!το δίκλινο των καθηγητών τρίκλινα μαθdiv3!υπολογίζουμε πόσα τρίκλινα αντιστοιχούν στους μαθητές υπόλ μαθmod3! υπολογίζουμε πόσοι μαθητές περισσεύουν ΑΝ υπόλ = 0 ΤΟΤΕ!δεν περισσεύει κανείς, έχουμε μόνο τριάδες τρίκλινα τρίκλινα ΑΛΛΙΩΣ_ΑΝ υπόλ = 2 ΤΟΤΕ!περισσεύουν δύο μαθητές δίκλινα δίκλινα + 1!άρα, προσθέτουμε ένα δίκλινο σε αυτό των καθηγητών ΑΛΛΙΩΣ!ΑΝ υπόλ = 1, περισσεύει ένας μαθητής μόνος του, άρα τρίκλινα τρίκλινα 1!χαλάμε το ένα τρίκλινο και δίκλινα δίκλινα + 2!προσθέτουμε δύο δίκλινα (ένας που!περίσσεψε + τρεις του τρίκλινου που χαλάσαμε) σε αυτό των καθηγητών ΤΕΛΟΣ_ΑΝ κόστος (δίκλινα * κόστος_δίκλινου + τρίκλινα * κόστος_τρίκλινου) * δν ΑΝ δν = 4 ΤΟΤΕ ΓΡΑΨΕ Ποσό πληρωμής:, κόστος, ΑΛΛΙΩΣ! αν δν = 6 τότε εκπτ κόστος * 10 / 100 ΓΡΑΨΕ Αρχικό ποσό πληρωμής:, κόστος, ΓΡΑΨΕ Ποσό έκπτωσης:, εκπτ, ΓΡΑΨΕ Τελικό ποσό πληρωμής:, κόστος εκπτ, ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Μονάδες 30 Καλή επιτυχία!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Παπαγιαννούλας Νίκος, Φυσικός Παν Αθηνών, ΜΔΕ Παν Αθηνών, MSc ΕΜΠ 9 σ ελίδα