ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ον/μο:.. Γ Λυκείου Ύλη:1-2 Τεχν. Κατ. 03-11-13 ΘΕΜΑ 1 ο Α. 1)Ποιες κατηγορίες προβλημάτων γνωρίζετε; 2)Να αναπτύξετε τα κριτήρια που πρέπει να ικανοποιεί ένας αλγόριθμος. 3)Ποια τα στάδια επίλυσης ενός προβλήματος; 4) Ποιες λειτουργιές επιτελεί ο υπολογιστής; (Μον. 8) Β. Δίνονται οι παρακάτω εντολές από ένα τμήμα αλγορίθμου: ΔΙΑΒΑΣΕ α, β x α > β Να χαρακτηρίσετε αν κάθε μία από τις παρακάτω προτάσεις είναι σωστή (Σ) ή λανθασμένη (Λ). Αιτιολογήσετε κάθε σας απάντηση 1. Η x είναι λογική μεταβλητή. 2. Τα α, β μπορεί να είναι μεταβλητές τύπου χαρακτήρα. 3. Τα α, β μπορεί να είναι λογικές μεταβλητές. 4. Τα α, x είναι πάντα μεταβλητές διαφορετικού τύπου. 5. Το α πρέπει να έχει τιμή μεγαλύτερη του β. (Μον. 5) Γ. Τα παρακάτω τμήματα αλγορίθμων εκτελέστηκαν μια φορά το καθένα και έδωσαν όλα την ίδια έξοδο. Να βρείτε ποια τιμή πληκτρολογήθηκε ως είσοδος κατά την εκτέλεση καθενός από αυτά. A B Γ Δ Διάβασε Ν Αν Ν=28 Τότε Εμφάνισε 32 Αλλιώς Εμφάνισε 10 Τέλος_Αν Διάβασε Ν Σ 1 Για i Από 1 Μέχρι Ν Σ Σ + 1 Τέλος_Επανάληψης Εμφάνισε Σ Διάβασε Ν Σ 1 Για i Από 1 Μέχρι Ν Σ Σ *2*i Τέλος_Επανάληψης Εμφάνισε Σ 16 Διάβασε Ν Σ 22 Για i Από 1 Μέχρι Ν Σ Σ + i Τέλος_Επανάληψης Εμφάνισε Σ (Μον. 4) 1
Δ. Δίνεται η παρακάτω ακολουθία εντολών αλγορίθμου: ΑΛΓΟΡΙΘΜΟΣ Θέμα1 ΔΕΔΟΜΕΝΑ // Ν // Σ 0 π 0 ΓΙΑ ι ΑΠΟ -10 ΜΕΧΡΙ Ν ΔΙΑΒΑΣΕ α, β Σ Σ + α+ β π π +1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ Αποτ Σ / π ΑΠΟΤΕΛΕΣΜΑΤΑ // Αποτ // ΤΕΛΟΣ Θέμα1 Είμαστε τυχεροί που είμαστε δάσκαλοι Να χαρακτηρίσετε αν κάθε μία από τις παρακάτω προτάσεις είναι σωστή (Σ) ή λανθασμένη (Λ). 1. Οι εντολές του βρόχου θα εκτελεστούν τουλάχιστον μία φορά σε κάθε περίπτωση. 2. Μπορεί να υλοποιηθεί ισοδύναμος αλγόριθμος με τη χρήση της εντολής επανάληψης ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΜΕΧΡΙΣ_ΟΤΟΥ αντί της ΓΙΑ χωρίς την προσθήκη επιπλέον εντολών. 3. Υπάρχει ένα αλγοριθμικό κριτήριο που δεν πληρείται στις εντολές αυτές. 4. Ο παραπάνω αλγόριθμος υπολογίζει το μέσο όρο των αριθμών που διαβάζει. 5. Η τιμή του Ν δηλώνει το πλήθος των αριθμών που εισάγονται με την εντολή ΔΙΑΒΑΣΕ. ( Μον. 5) Ε. Να γράψετε στο τετράδιό σας τους αριθμούς της στήλης Α και δίπλα το γράμμα της στήλης Β που αντιστοιχεί σωστά. Στη στήλη Β υπάρχουν τρία επιπλέον στοιχεία. 2
Α Β 1. Περιττός αριθμός. Α. x MOD 5 = 0 2. Πολλαπλάσιο του 5. Β. x MOD 2 = 0 3. Το 1ο ψηφίο τετραψήφιου Γ. αριθμού x MOD 2 <> 0 4. Τελευταίο ψηφίο ενός Δ. τετραψήφιου αριθμού. x DIV 1000 E. x MOD 1000 ΣΤ. x MOD 10 Ζ. x DIV 10 ( Μον. 4) ΣΤ. Να ξαναγράψετε κάθε ένα από τα παρακάτω τμήματα αλγορίθμου με χρήση δομής επανάληψης, έτσι ώστε να επιτελεί την ίδια ακριβώς λειτουργία. Μπορείτε να χρησιμοποιήσετε σε κάθε περίπτωση μόνο μια επιπλέον μεταβλητή i ως μετρητή της επανάληψης. Α Β Γ Δ Ε Εμφάνισε 17 Εμφάνισε 18 Εμφάνισε 19 Εμφάνισε 20 Εμφάνισε 21 Εμφάνισε 20 Εμφάνισε 26 Εμφάνισε 32 Εμφάνισε 38 Εμφάνισε 44 Εμφάνισε 50 Εμφάνισε 56 Εμφάνισε 10 Εμφάνισε 13 Εμφάνισε 16 Εμφάνισε 19 Εμφάνισε 22 Εμφάνισε 25 Εμφάνισε 28 Εμφάνισε 31 Εμφάνισε 34 μ 0 Αν α > 0 τότε μ μ + 1 Αν α > 0 τότε μ μ + 1 Αν α > 0 τότε μ μ + 1 Αν α > 0 τότε μ μ + 1 Εμφάνισε μ Σ 0 Αν α > 0 τότε Σ Σ + α Διάβασε β Αν β > 0 τότε Σ Σ + β Διάβασε γ Αν γ > 0 τότε Σ Σ + γ Διάβασε δ Αν δ > 0 τότε Σ Σ + δ Εμφάνισε Σ ( Μον. 14) 3
ΘΕΜΑ 2 Ο 1) Γράψτε το παρακάτω διάγραμμα ροής σε μορφή ψευδοκώδικα. 2) Δίνεται ο παρακάτω αλγόριθμος. Να γράψετε τις τιμές που τυπώνει όταν η μεταβλητή Α πάρει τις τιμές: α)36 β)28 Αλγόριθμος Αριθμοί Διάβασε Α Εκτύπωσε Α Σ 1 Κ 2 Αρχή_επανάληψης Αν ΑmodΚ=0 τότε Β ΑdivΚ Αν Κ<>Β τότε Σ Σ+Κ+Β Εκτύπωσε Β,Κ Αλλιώς (Μον. 5) 4
Σ Σ+Κ Εκτύπωσε Κ Τέλος_αν Τέλος_αν Κ Κ+1 Μέχρις_οτου Κ>Τ_Ρ(Α) Αν Α=Σ τότε Εκτύπωσε Σ Τελος_αν Τέλος Αριθμοί Όπου Τ_Ρ() είναι η συνάρτηση που υπολογίζει την τετραγωνική ρίζα ενός αριθμού. (Μον. 10) 5)Δίνεται το παρακάτω τμήμα αλγορίθμου. Να δημιουργήσετε το αντίστοιχο διάγραμμα ροής : Χ 0 Α 5 Β 10 Αρχή_επανάληψης C (A + B) div 2 Αν C > A τότε Αν C < Β τότε Α C B A Αλλιώς Α Χ B C Τέλος_αν Αλλιώς Αν C < Β τότε Β C A X Αλλιώς B Χ A C Τέλος_αν Τέλος_αν Εμφάνισε Α, Β, C, X X X +2 Μέχρις_ότου Χ>4 (Μον. 5) 5
ΘΕΜΑ 3 ο Σε ένα παιχνίδι με τράπουλα συμμετέχουν δυο αντίπαλες ομάδες και στο τέλος κάθε γύρου καταμετρώνται οι πόντοι κάθε ομάδας. Οι συνολικοί πόντοι και των δυο ομάδων σε κάθε γύρο πρέπει να είναι 11 ή 21 ή 31 ή 41, κ.ο.κ. Να γραφεί αλγόριθμος ο οποίος: i. Θα διαβάζει τα ονόματα των δυο ομάδων. ii. Σε κάθε γύρο του παιχνιδιού θα διαβάζει τους πόντους κάθε ομάδας. iii. Για κάθε γύρο θα εμφανίζει το όνομα της ομάδας με τους περισσότερους πόντους. iv. Το παιχνίδι ολοκληρώνεται όταν κάποια ομάδα μαζέψει συνολικά 111 πόντους. Ο αλγόριθμος θα εμφανίζει «Τέλος παιχνιδιού» και το όνομα της νικήτριας ομάδας. Νικήτρια είναι η ομάδα με τους περισσότερους συνολικούς πόντους. v. Επίσης θα εμφανίζει πόσους γύρους κέρδισε η κάθε ομάδα. Σημείωση: στην είσοδο των πόντων κάθε ομάδας θα πρέπει να ελέγχουμε τα δεδομένα μας να είναι θετικά και το άθροισμα τους να είναι της μορφής 11 ή 21 ή 31 ή 41 ή 51 κ.ο.κ. ( Μον. 20) ΘΕΜΑ 4 ο Ένα Πανεπιστήμιο αποτελείται από πολλά τμήματα με κωδικούς 1,2,3,4 κ.ο.κ. Κάθε τμήμα δέχεται μέχρι και 120 φοιτητές. Να γραφεί αλγόριθμος ο οποίος για κάθε τμήμα: i. Θα διαβάζει την ονομασία τμήματος και τον αριθμό φοιτητών που τελικά εισήχθησαν στο τμήμα, μέχρι η ονομασία να είναι ο χαρακτήρας του κενού. Ο αριθμός φοιτητών δεν πρέπει να ξεπερνά το μέγιστο δυνατό αριθμό. Τα τμήματα εισάγονται με βάση τον αριθμητικό κωδικό τους δηλαδή πρώτο το τμήμα με τον κωδικό 1 κ.λπ. 6
ii. Να εμφανίζει τον τίτλο του τμήματος, τον κωδικό και να υπολογίζει και να εμφανίζει το ποσοστό κάλυψης των προσφερόμενων θέσεων. iii. Να εμφανίζει την ονομασία και τον κωδικό του τμήματος με τους λιγότερους φοιτητές.( θεωρήστε ότι είναι ένα). iv. Να εμφανίζει τον συνολικό αριθμό εισαχθέντων στο Πανεπιστήμιο. (Μον. 20) ΚΑΛΗ ΕΠΙΤΥΧΙΑ 7
ΑΠΑΝΤΗΣΕΙΣ (Ενδεικτικές) ΘΕΜΑ 1 ο Α) 1-3 : κεφ 1 ο, 2 : κεφ 2 ο Β ) 1 Σ, 2 Σ, 3 Λ, 4 Λ, 5 Λ Γ) Ν=28, Ν=31, Ν=3, Ν=4 Δ) 1 Λ, 2 Λ, 3 Σ, 4 Λ, 5 Λ Ε) 1 Γ, 2 Α, 3 Δ, 4 ΣΤ ΣΤ) Α) Για i από 17 μέχρι 21 εμφάνισε i Β) Για i από 20 μέχρι 56 με βήμα 6 εμφάνισε i Γ) Για i από -10 μέχρι -34 με βήμα -3 εμφάνισε i Δ) 0 Για i από 1 μέχρι 4 Αν α>0 τότε 1 Τέλος _ αν εμφάνισε μ Ε) 0 Για i από 1 μέχρι 4 Αν α>0 τότε Τέλος - αν Τέλος - Επανάληψης Εμφάνισε Σ Είμαστε τυχεροί που είμαστε δάσκαλοι 8
ΘΕΜΑ 2 ο 1) L 1 Όσο L 8 επανάλαβε L j 1 Όσο j =N επανάλαβε Αν j mod 2=0 τότε εμφάνισε j Τέλος - αν j j 1 L L 1 εμφάνισε L 2) α) Α Σ Κ Β Εκτύπωσε 36 - - - 36 36 1 2-36 21 3 18 18,2 36 36 4 12 12,3 36 49 5 9 9,4 36 55 6 6 6 36 55 7 6 β) Α Σ Κ Β Εκτύπωσε 28 - - - 28 28 1 2-28 17 3 14 14,2 28 28 4 7 7,4 28 28 5 7 28 28 6 7 28 9
10
ΘΕΜΑ 3 ο Αλγόριθμος Μπιρίμπα Διάβασε ον1, ον2 61 0 62 0 ν1 0 ν2 0 Όσο 61<111 και 62<111 επανάλαβε Αρχή - επανάληψης Διάβασε π1, π2 Μέχρις - ότου π1>0 και π2>0 και (π1+π2-1)mod10=0 Αν π1>π2 τότε Εμφάνισε ον1 1 1 1 αλλιώς Εμφάνισε ον2 2 2 1 αλλιώς Εμφάνισε ον2 ν2 2 1 Τέλος - αν 61 61 1 62 62 2 Αν 61>62 τότε Εμφάνισε ον1, ν1 αλλιώς Εμφάνισε ον2, ν2 Τέλος - αν Τέλος Μπιρίμπα ΘΕΜΑ 4 ο Αλγόριθμος Παιδεία 0 0 Διάβασε ον2 όσο ον2 <> επανάλαβε Είμαστε τυχεροί που είμαστε δάσκαλοι 11
Αρχή - επανάληψης ρ4 Μέχρις - ότου αρ4>=0 και αρ4<=120 Εμφάνισε ον2 4 /120 * 100 Εμφάνισε πκ 1 Αν κ=1 τότε min 4 2 κωδ Τέλος _ αν Αν αρ4<min τότε min αρ4 2 κωδ Τέλος - αν 4 Διάβασε ον2 Τέλος - Επανάληψης Εμφάνισε Σ Εμφάνισε κωδ, λ Τέλος παιδεία Είμαστε τυχεροί που είμαστε δάσκαλοι 12