ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ον/μο:.. Γ Λυκείου Ύλη:3-6-9 Τεχν. Κατ. 09-03-14 ΘΕΜΑ 1 Ο Α1. Δίνονται οι παρακάτω εντολές από ένα τμήμα προγράμματος: ΔΙΑΒΑΣΕ α, β x α > β Να χαρακτηρίσετε αν κάθε μία από τις παρακάτω προτάσεις είναι σωστή (Σ) ή λανθασμένη (Λ). Αιτιολογήσετε κάθε σας απάντηση 1. Η x είναι λογική μεταβλητή. 2. Τα α, β μπορεί να είναι μεταβλητές τύπου χαρακτήρα. 3. Τα α, β μπορεί να είναι λογικές μεταβλητές. 4. Τα α, x είναι πάντα μεταβλητές διαφορετικού τύπου. 5. Το α πρέπει να έχει τιμή μεγαλύτερη του β. (Μον. 5) Α2.Να χαρακτηρίσετε κάθε μία από τις παρακάτω προτάσεις με Σ αν είναι σωστή ή Λ αν είναι λανθασμένη. 1. Η ιεραρχική σχεδίαση υλοποιείται με τον δομημένο προγραμματισμό. 2. Προσπέλαση σε έναν κόμβο είναι η προσθήκη νέων κόμβων σε μια υπάρχουσα δομή. 3. Στη γλώσσα μηχανής τα μόνα σύμβολα που χρησιμοποιούνται είναι το 0 και το 1. 4. Οι υπολογιστές είναι ένας μηχανισμός επεξεργασίας δεδομένων. 5. Το αντικείμενο πρόγραμμα είναι αποτέλεσμα του αντικειμενοστραφούς προγραμματισμού (Μον. 5) 2
Α3. Να γράψετε στο τετράδιό σας τους αριθμούς της Στήλης Α και δίπλα το γράμμα της Στήλης Β που αντιστοιχεί σωστά. Στήλη Α Στήλη Β 1. Στατική δομή α. LIFO 2. Ουρά β. Πράξη (Λειτουργία) 3. Δυναμική δομή γ. Προσπέλαση 4. Στοίβα δ. FIFO 5. Ταξινόμηση ε. Πίνακας στ. Δεδομένα ζ. Δυναμική παραχώρηση μνήμης Α4.Επιλέξτε τις ή την σωστή απάντηση στις παρακάτω ερωτήσεις. 1)Ποια γλώσσα χρησιμοποιεί βάσεις δεδομένων; A. FORTRAN B. COBOL C. SQL D. C 2)Ποιες γλώσσες δεν είναι διαδικασιακές ή αλγοριθμικές; Α. FORTRAN Β. LISP C. PROLOG D. PASCAL Ε. ALGOL F. C G. PL/1 Η. COMBOL I.BASIC 3)Ποιες γλώσσες είναι γενικής χρήσης; Α. PROLOG Β. PASCAL C. BASIC D. ALGOL Ε. LISP 4)Μια γλώσσα δεν προσδιορίζεται από: A. Λεξιλόγιο B. Έκδοση C. Σημασιολογία D. Γραμματική E. Αλφάβητο (Μον. 5) 3
5)Ποια από τα παρακάτω είναι κατηγορίες λαθών; A. Γραμματικής B. Λογικά C. Σύνδεσης D. Συντακτικά Είμαστε τυχεροί που είμαστε δάσκαλοι 6)Ποιο από τα ακόλουθα δεν ανήκει στις λειτουργίες μιας δομής δεδομένων; A. επιλογή B. εισαγωγή C. διαχωρισμός D. ταξινόμηση 7)Ποια γλώσσα είναι αντικειμενοστραφής; A. FORTRAN B. C++ C. SQL D. C (Μον. 9) Α5. Δίνεται το παρακάτω τμήμα δηλώσεων ενός προγράμματος σε «ΓΛΩΣΣΑ»: ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: Π[10] ΛΟΓΙΚΕΣ: ΒΡΕΘΗΚΕ ΑΚΕΡΑΙΕΣ: i Να μετατρέψετε τις ενέργειες που δίνονται παρακάτω σε εντολές της «ΓΛΩΣΣΑΣ» χρησιμοποιώντας αποκλειστικά και μόνο την εντολή εκχώρησης (χωρίς δομή επιλογής ή επανάληψης). 1. Αύξησε το 3ο στοιχείο του πίνακα κατά 30%. 2. Μείωσε το τελευταίο στοιχείο του πίνακα κατά το ήμισυ. 3. Τριπλασίασε το πρώτο στοιχείο του πίνακα. 4. Εκχώρησε στη μεταβλητή i το ακέραιο μέρος του 2ου στοιχείου του πίνακα. 4
Α6. Τα παρακάτω τμήματα αλγορίθμων εκτελέστηκαν μια φορά το καθένα και έδωσαν όλα την ίδια έξοδο. Να βρείτε ποια τιμή πληκτρολογήθηκε ως είσοδος(n) κατά την εκτέλεση καθενός από αυτά ( η τιμή είναι διαφορετική σε κάθε τμήμα αλγορίθμου). A B Γ Δ Διάβασε Ν Αν Ν=28 Τότε Εμφάνισε 32 Αλλιώς Εμφάνισε 10 Τέλος_Αν Διάβασε Ν Σ 1 Για i Από 1 Μέχρι Ν Σ Σ + 1 Τέλος_Επανάληψ ης Εμφάνισε Σ Διάβασε Ν Σ 1 Για i Από 1 Μέχρι Ν Σ Σ *2*i Τέλος_Επανάληψ ης Εμφάνισε Σ 16 Α7.Να συμπληρωθούν τα κενά έτσι, ώστε το κάθε τμήμα αλγορίθμου, να γεμίζει έναν πίνακα Α με τους αριθμούς Διάβασε Ν Σ 22 Για i Από 1 Μέχρι Ν Σ Σ + i Τέλος_Επανάληψ ης Εμφάνισε Σ 1, 2, 3, 4,...,8. 1. Για ι από 8 μέχρι 1 με_βήμα -1 Α[ ] Τέλος_επανάληψης 2. Χ 1 Όσο Χ <= επανάλαβε Α[ ] Χ Χ + 1 Τέλος_επανάληψης 3. Χ 1 Αρχή_επανάληψης Χ Χ + 1 Α[ ] Μέχρις_ότου > 8 Α8. 1)Να περιγράψετε τη διαδικασία μεταγλώττισης και σύνδεσης ενός προγράμματος. 2)Ποια τα μειονεκτήματα χρήσης πίνακα; 5
ΘΕΜΑ 2 Ο Α.Δίνεται δισδιάστατος πίνακας Β[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 Εμφάνισε Ν, % α) Να σχεδιάσετε την μορφή και τα περιεχόμενα του πίνακα Α όπως θα είναι μετά την εκτέλεση του παραπάνω αλγορίθμου β) Ποια η τιμή της μεταβλητής Ν μετά το τέλος του αλγορίθμου και τι ακριβώς μας υποδεικνύει; (Μον. 5) Β. Δίνεται ο πίνακας Α[5]: 8 4 1 11 17 1 2 3 4 5 6
Επίσης δίνεται το παρακάτω τμήμα αλγόριθμου σε ψευδογλώσσα: πλ 0 i 2 Αρχή Επανάληψης flag ΑΛΗΘΗΣ Για j από 5 μέχρι i με_βήμα -1 Αν Α[j-1] > A[j] τότε x A[j-1] A[j-1] A[j] A[j] x πλ πλ + 1 flag ΨΕΥΔΗΣ Τέλος_Αν Τέλος_Επανάληψης i i + 1 Μέχρις_ότου ( i > 5 ) Ή ( flag = ΑΛΗΘΗΣ ) Β1. Να παρουσιάσετε την τελική μορφή του πίνακα Α μετά την εκτέλεση του παραπάνω τμήματος αλγόριθμου. Β2. Ποια λειτουργία εκτελέστηκε στον πίνακα Α; Β3. Ποιος ο ρόλος των μεταβλητών flag και πλ; Β4. Ποια η τιμή της μεταβλητής πλ, μετά την ολοκλήρωση της δομής Μέχρις_ότου; Β5.Να ξαναγράψετε το παραπάνω τμήμα αλγόριθμου κάνοντας αποκλειστική χρήση τη δομής Όσο.. Τέλος_επανάληψης. (Μον. 5) Γ. Δίνεται το παρακάτω τμήμα αλγορίθμου: Γ1 S0 λ0 κ0 ω0 7
π0 Αρχή_επανάληψης Αρχή _επανάληψης Διάβασε x Μέχρις_ότου x>=0 λλ+1 Αν x mod 2 = 0 τότε ππ+1 SS+x αλλιώς_αν x mod 3 = 0 τότε ΓΓ*x ωω+1 αλλιώς κκ+1 Τέλος_αν Εμφάνισε Θέλετε να εισάγετε άλλο αριθμό; Διάβασε απάντηση Μέχρις_ότου απάντηση= όχι Αν π<>0 τότε ΜS/π Τέλος_αν Εμφάνισε M, Γ, κ, λ, ω Είμαστε τυχεροί που είμαστε δάσκαλοι Αφού κατανοήσετε την λειτουργία του παραπάνω αλγορίθμου απαντήστε στις παρακάτω ερωτήσεις : 1. Αν κατά την ερώτηση «Θέλετε να εισάγετε άλλο αριθμό;» ο χρήστης εισάγει το κείμενο «Δεν θέλω» θα τερματίσει ο εξωτερικός βρόχος; 2. Αν εισαχθεί στη μεταβλητή x ο αριθμός -2 θα γίνει αποδεκτός για επεξεργασία; 3. Εισάγετε 3 αριθμούς που θα αυξήσουν τη μεταβλητή π. 4. Εισάγετε 3 αριθμούς που θα αυξήσουν τη μεταβλητή κ. 5. Τι υπολογίζει η μεταβλητή π; 6. Τι υπολογίζει η μεταβλητή κ; 7. Τι υπολογίζει η μεταβλητή Γ; 8. Τι υπολογίζει η μεταβλητή Μ; 9. Μπορεί να εισαχθεί κάποια τιμή που να αυξήσει τις τιμές και των 3 μεταβλητών λ, π και κ; 10. Ο αριθμός 6 αυξάνει τη μεταβλητή ω; (Μον. 10) 8
ΘΕΜΑ 3 O Ένα πρατήριο υγρών καυσίμων διαθέτει έναν τύπο καυσίμου που αποθηκεύεται σε δεξαμενή χωρητικότητας 10.000 λίτρων. Να αναπτύξετε αλγόριθμο ο οποίος: 1. να διαβάζει την ποσότητα (σε λίτρα) του καυσίμου που υπάρχει αρχικά στη δεξαμενή μέχρι να δοθεί έγκυρη τιμή. Για κάθε όχημα που προσέρχεται στο πρατήριο: 2. να διαβάζει τον τύπο του οχήματος ( Β για βυτιοφόρο όχημα που προμηθεύει το πρατήριο με καύσιμο και E για επιβατηγό όχημα (Μον. 2) που προμηθεύεται καύσιμο από το πρατήριο). (Μον. 2) 3. Αν το όχημα είναι βυτιοφόρο τότε να γεμίζει τη δεξαμενή μέχρι την πλήρωσή της. Αν το όχημα είναι επιβατηγό τότε να διαβάζει την ποσότητα καυσίμου την οποία θέλει να προμηθευτεί και, αν υπάρχει επάρκεια καυσίμου στη δεξαμενή, τότε το επιβατηγό όχημα να εφοδιάζεται με τη ζητούμενη ποσότητα καυσίμου, διαφορετικά το όχημα να μην εξυπηρετείται. (Μον. 8) 4. Η επαναληπτική διαδικασία να τερματίζεται, όταν αδειάσει η δεξαμενή του πρατηρίου ή όταν δεν εξυπηρετηθούν τρία διαδοχικά επιβατηγά οχήματα. 5. Στο τέλος ο αλγόριθμος να εμφανίζει: α.τη μέση ποσότητα καυσίμου ανά επιβατηγό όχημα που εξυπηρετήθηκε β.τη συνολική ποσότητα καυσίμου με την οποία τα βυτιοφόρα ανεφοδίασαν τη δεξαμενή. γ.τη μεγαλύτερη ποσότητα καυσίμου που εξυπηρετήθηκε σε επιβατηγό όχημα. Σημειώσεις: Δεν απαιτείται έλεγχος εγκυρότητας για τον τύπο του οχήματος. Θεωρήστε ότι στο πρατήριο προσέρχεται ένα τουλάχιστον επιβατηγό όχημα για το οποίο η ποσότητα καυσίμου στη δεξαμενή επαρκεί. 9
ΘΕΜΑ 4 ο Σ ένα σχολείο οι μαθητές της Τεχνολογικής κατεύθυνσης της Γ Λυκείου είναι 50 και έχουμε αποθηκεύσει στον πίνακα Ε[50] τα επώνυμα τους ενώ στον πίνακα Β[50,14] έχουμε αποθηκεύσει τους βαθμούς στα 14 μαθήματα τους. Συγκεκριμένα στις πρώτες 10 στήλες έχουμε αποθηκεύσει τους βαθμούς στα 10 μαθήματα γενικής παιδείας και στις 4 τελευταίες στήλες τους βαθμούς στα μαθήματα κατεύθυνσης. Να γραφεί πρόγραμμα το οποίο: a) Να περιέχει τμήμα δήλωσης μεταβλητών (Μον. 1) b) Να διαβάζει τα περιεχόμενα των δυο πινάκων, ελέγχοντας οι βαθμοί να είναι από 0 μέχρι και 20. (Μον. 2) c) Για κάθε μαθητή να εμφανίζει το επώνυμο του, το μέσο όρο του στα μαθήματα γενικής παιδείας και το μέσο όρο του στα μαθήματα κατεύθυνσης. d) Να βρεθεί το ποσοστό των μαθητών που έχουν μέσο όρο στα μαθήματα κατεύθυνσης μεγαλύτερο από το μέσο όρο στα μαθήματα γενικής παιδείας. (Μον. 2) e) Να διαβάζει το επώνυμο ενός μαθητή και να βρίσκει και να εμφανίζει τους βαθμούς του στα 14 μαθήματα (θεωρήστε ότι δεν υπάρχει συνωνυμία). f) Να εμφανίζει τα επώνυμα των μαθητών,τους μέσους όρους των μαθημάτων γενικής παιδείας και τους μέσους όρους των μαθημάτων κατεύθυνσης ταξινομημένα κατά φθίνουσα σειρά ως προς το μέσο όρο των μαθημάτων κατεύθυνσης. (Μον. 7) ΚΑΛΗ ΕΠΙΤΥΧΙΑ 10
ΑΠΑΝΤΗΣΕΙΣ (ΕΝΔΕΙΚΤΙΚΕΣ) ΘΕΜΑ 1 Ο A.1. 1-Σ, 2-Σ, 3-Λ, 4-Σ, 5-Λ Α.2. 1-Σ, 2-Λ, 3-Σ, 4-Σ, 5-Λ Α.3. 1-ε, 2-δ, 3-ζ, 4-α, 5-β Α.4. 1-C 2.- B, C 3- B, C, D 4.- B 5- B, D 6- A 7 -B A5. 1) 3 3 3 * 30 /100 2) 10 10 / 2 3) 1 3 *Π1 4) i A M 2 A.6. A) N=28 B) N=31 Γ) Ν=3 Δ) Ν=4 Α.7. 1) i i 2) x 8 x x A 3) Ax 1 x 1 x>8 A.8. 1) κεφ 6 ενότητα 6.7 2) κεφ 9 ενότητα 9.2 Είμαστε τυχεροί που είμαστε δάσκαλοι ΘΕΜΑ 2 Ο Α. α)α: 1 3 3 2 1 2 2 5-1 4 1 7 β) Ν=80%, υποδεικνύει το ποσοστό των μηδενικών στοιχείων του πίνακα. 11
Β. Β1. Α: 1 4 8 11 17 B2. ταξινόμηση Β.3. flag υποδεικνύει αν ο πίνακας ταξινομήθηκε. πλ μετρά τις αντιμεταθέσεις Β.4. πλ=3 Β.5. 0 i 2 flag ψευδής Όσο i 5 και flag=ψευδής επανάλαβε flag ή j 5 Όσο i 5 και flag ή επανάλαβε flag ή j 5 Όσο j i επανάλαβε A j1 A j τότε Αν x A j 1 A j1 A j A j x 1 flag ή έ j j 1 έ ά i i 1 έ ά Γ. 1. όχι 2. όχι 3. 4, 8,10 4. 5, 7, 11 12
5. πλήθος άρτιων 6. πλήθος αριθμών που δεν είναι πολ/σια του 2 ή του 3. 7. Γινόμενο πολ/σιων του 3 8. Το μέσο όρο των άρτιων 9. όχι 10. όχι ΘΕΜΑ 3 Ο ΑΛΓΟΡΙΘΜΟΣ SHELL δ0 S0 ρ0 0 ή ά Διάβασε δεξ ί ό δεξ>=0 και δεξ<=10000 Οσο δεξ>0 και δ<3 επανάλαβε Διάβασε τύπος Αν τύπος = B τότε (10.000 ) (10.000 ) αλλιώς Διάβασε καύσιμο Αν καύσιμο<=δεξ τότε - καύσιμο SS ύ p p 1 Αν p=1 τότε mαx ύ έ Αν mαx<καύσιμο τότε mx ύ Τελος αλλιώς 1 Είμαστε τυχεροί που είμαστε δάσκαλοι 13
έ έ έ ά ά s/p, mαx, Σ έ SHELL Είμαστε τυχεροί που είμαστε δάσκαλοι ΘΕΜΑ 4 Ο ΠΡΟΓΡΑΜΜΑ Τεχνολογική ΜΕΤΑΒΛΗΤΕΣ i,, j,, Β 50,14, ΑΚΕΡΑΙΕΣ : ΠΡΑΓΜΑΤΙΚΕΣ : 50, 50,,, ποσοστό ΧΑΡΑΚΤΗΡΕΣ : 50, ώ, ΑΡΧΗ ΓΙΑ i π 0 ΑΠΟ 1 ΜΕΧΡΙ 50 ΔΙΑΒΑΣΕ i M i 0 MK i 0 ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 14 ΔΙΑΒΑΣΕ i, j Βi, j 0 και ΤΕΛΟΣ ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 10 i M i B i, j ΤΕΛΟΣ i M i /10 ΓΙΑ j ΑΠΟ 11 ΜΕΧΡΙ 14 MK i MK i B i, j ΤΕΛΟΣ MKi MKi /14 ΓΡΑΨΕ i, i, i AN ΜΚi i ΤΟΤΕ 14 B i, j 20
1 ΤΕΛΟΣ ΤΕΛΟΣ Ποσοστό / 50 100 ΓΡΑΨΕ ποσοστό ΔΙΑΒΑΣΕ επώνυμο i1 0 Όσο i 50 και θ=0 ΕΠΑΝΑΛΑΒΕ ΑΝ επώνυμο= Ei ΤΟΤΕ * i ΑΛΛΙΩΣ i i 1 ΤΕΛΟΣ ΤΕΛΟΣ ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 14 ΓΡΑΨΕ Β,j ΤΕΛΟΣ ΓΙΑ Κ ΑΠΟ 2 ΜΕΧΡΙ 50 ΓΙΑ i ΑΠΟ 50 ΜΕΧΡΙ κ 1 ΑΝ i i 1 i ΤΟΤΕ i i MK i MK i 1 MK i 1 M i M i 1 M i 1 E i E i 1 E i 1 ΤΕΛΟΣ ΤΕΛΟΣ ΤΕΛΟΣ 15 Είμαστε τυχεροί που είμαστε δάσκαλοι
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 50 i, M i, MK i ΤΕΛΟΣ ΤΕΛΟΣ ΓΡΑΨΕ Είμαστε τυχεροί που είμαστε δάσκαλοι 16