Θέµα 1 ο Α. Να γράψετε στο τετράδιο σας τον αριθµό καθεµίας από τις παρακάτω προτάσεις 1-6 και δίπλα τη λέξη Σωστό, αν είναι σωστή, ή τη λέξη Λάθος, αν είναι λανθασµένη. 1. υναµικές είναι οι δοµές δεδοµένων που αποθηκεύονται σε συνεχόµενες θέσεις µνήµης.(λ) 2. Η υλοποίηση της ουράς χρησιµοποιεί µια µόνο µεταβλητή η οποία λειτουργεί σαν δείκτης για τον έλεγχο κατά την εισαγωγή/εξαγωγή στοιχείων, όπως και η περίπτωση της στοίβας.(λ) 3. Οι διαστάσεις ενός πίνακα µπορούν να µεταβληθούν κατά την διάρκεια εκτέλεσης ενός αλγορίθµου.(λ) 4. Με τον όρο οδηγούµενο από το γεγονός εννοούµε τη δυνατότητα να ενεργοποιούνται λειτουργίες του προγράµµατος µε την εκτέλεση ενός γεγονότος, για παράδειγµα την επιλογή µίας εντολής από ένα µενού ή το κλικ του ποντικιού.(σ) 5. Η αντικειµενοστραφείς σχεδίαση ενός προγράµµατος εκλαµβάνει ως πρωτεύοντα δοµικά στοιχεία ενός προγράµµατος τα δεδοµένα, από τα οποία δηµιουργούνται µε κατάλληλη µορφοποίηση τα αντικείµενα (objects).(σ) 6. Τα λογικά λάθη του προγράµµατος εµφανίζονται κατά την µεταγλώττιση ενώ τα συντακτικά λάθη στο στάδιο της εκτέλεσης.(λ) (Μονάδες 12) Β. Το παρακάτω τµήµα αλγορίθµου, να µετατραπεί στις ισοδύναµες µορφές επανάληψης Όσο...Επανάλαβε και Αρχή_Επανάληψης...Μέχρις_Ότου Για i απο 1 µέχρι 5 µε_βήµα 2 Γράψε i Τέλος_Επανάληψης i 1 Όσο i <= 5 Επανέλαβε Γράψε i i i+2 Τέλος_Επανάληψης i 1 Αρχή_Επανάληψης Γράψε i i i+2 Μέχρις_Ότου i >5 (Μονάδες 12)
Γ. Σε ποιες δύο µεγάλες κατηγορίες διακρίνονται οι δοµές δεδοµένων και τι γνωρίζεται για αυτές. Οι πίνακες τι είδους δοµές δεδοµένων είναι. Απάντηση Σελ. 56 σχ. βιβλίου (Μονάδες 10). ίνεται το παρακάτω πρόγραµµα (όχι ολοκληρωµένο) Πρόγραµµα subprogram Μεταβλητές Ακέραιες:alfa,beta Πραγµατικές:temp Χαρακτήρες: name Αρχή... Τέλος_Προγράµµατος ιαδικασία procedure(a,b) Μεταβλητές Ακέραιες:Α Πραγµατικές:Β Αρχή... Τέλος_ ιαδικασίας Συνάρτηση function(a,b): Πραγµατική Μεταβλητές Ακέραιες: Α,Β Αρχή... Τελος_Συνάρτησης Ποίες από τις παρακάτω εντολές µπορούν να χρησιµοποιηθούν στο κυρίως πρόγραµµα και ποίες όχι και γιατί 1.alfa function(alfa,beta) 2.temp function(alfa,beta) 3.beta procedure(alfa,temp) 4.Γράψε function(alfa,beta) 5.Κάλεσε procedure(beta,temp) 6.Κάλεσε procedure(alfa,temp,beta) 1. Όχι, γιατί η function είναι πραγµατική και δεν µπορεί να εκχωρηθεί στην alfa που είναι ακέραια. 2.Ναι γιατί η function και η temp είναι του ίδιου τύπου. 3.Όχι γιατί οι διαδικασίες καλούνται µε την εντολή Κάλεσε. 4.Ναι, γιατί alfa και beta είναι του ίδιου τύπου µε τα Α,Β αντίστοιχα. 5.Ναι, γιατί καλείται σωστά και beta,temp είναι ίδιου τύπου µε Α,Β αντίστοιχα. 6.Όχι, γιατί είναι περισσότερες οι πραγµατικές απο τις τυπικές παραµέτρους. (Μονάδες 6)
Θέµα 2 ο ίνεται το παρακάτω πρόγραµµα. Ποία τα περιεχόµενα του πίνακα και ποιο είναι το αποτέλεσµα που θα εµφανιστεί ΠΡΟΓΡΑΜΜΑ Θέµα_2 ΑΚΕΡΑΙΕΣ: i,α,β,n ΧΑΡΑΚΤΗΡΕΣ: π[8] ΠΡΑΓΜΑΤΙΚΕΣ:αριθµός α 2 β 16 n β DIV α ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ n π[i] function(i) αριθµός Μετατροπή(π,n) ΓΡΑΨΕ αριθµός ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Ένα Ένα Ένα Το αποτέλεσµα που θα πάρουµε είναι το 7. ΣΥΝΑΡΤΗΣΗ function(x):χαρακτηρασ ΑΚΕΡΑΙΕΣ: x ΑΝ x > 5 ΤΟΤΕ function 'ένα' ΑΛΛΙΩΣ function 'µηδέν' ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ ΣΥΝΑΡΤΗΣΗ Μετατροπή(Πίνακας,c):ΠΡΑΓΜΑΤΙΚΗ ΑΚΕΡΑΙΕΣ: i,c ΧΑΡΑΚΤΗΡΕΣ: Πίνακας[8] ΠΡΑΓΜΑΤΙΚΕΣ: S S 0 ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ c ΑΝ Πίνακας[i]='ένα' ΤΟΤΕ S S+2^(c-i) Μετατροπή S ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ (Μονάδες 20)
Θέµα 3 ο Να φτιάξατε πρόγραµµα το οποίο θα διαβάζει τα ονόµατα 10 αθλητών και θα τα καταχωρεί σε ένα µονοδιάστατο πίνακα. Στη συνέχεια θα διαβάζει την βαθµολογία 5 κριτών (οι βαθµοί είναι ακέραιοι ) για καθένα από τους 10 αθλητές και θα την καταχωρεί σε ένα δισδιάστατο πίνακα. Να υπολογίσετε τον µέσο όρο του κάθε αθλητή και να τον αποθηκεύσετε σε ένα µονοδιάστατο πίνακα. Το πρόγραµµα σαν αποτέλεσµα θα εµφανίζει µια λίστα µε τα ονόµατα των αθλητών και τους αντίστοιχους µέσους όρους, ταξινοµηµένα κατά αύξουσα σειρά µε βάση τον πίνακα µε τους µέσους όρους. ΠΡΟΓΡΑΜΜΑ Αθλητές ΑΚΕΡΑΙΕΣ: i,j,κ ΧΑΡΑΚΤΗΡΕΣ: Όνοµα[10],τεµπ ΠΡΑΓΜΑΤΙΚΕΣ: S,Β[10,5],ΜΟ[10],temp ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ ' ώσε το όνοµα του ',i,' αθλητή' ΙΑΒΑΣΕ Όνοµα[i] S 0 ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 5 ΓΡΑΨΕ ' ώσε την βαθµολογία του ',j,' κριτή' ΙΑΒΑΣΕ Β[i,j] S S+Β[i,j] ΜΟ[i] S/5 ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ 10 ΓΙΑ j ΑΠΟ 10 ΜΕΧΡΙ i ΜΕ_ΒΗΜΑ -1 ΑΝ ΜΟ[j-1] < ΜΟ[j] ΤΟΤΕ temp ΜΟ[j-1] ΜΟ[j-1] ΜΟ[j] ΜΟ[j] temp τεµπ Όνοµα[j-1] Όνοµα[j-1] Όνοµα[j] Όνοµα[j] τεµπ ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10 ΓΡΑΨΕ Όνοµα[i],': ',ΜΟ[i] ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ (Μονάδες 20)
Θέµα 4 ο Να φτιάξετε πρόγραµµα το οποίο θα εµφανίζει στην οθόνη του υπολογιστή δύο επιλογές: 1)'Για καταχώρηση νέου µαθητή πατήστε 1' 2)'Για αναζήτηση µαθητή πατήστε 2' Η πρώτη επιλογή θα καλεί ένα υποπρόγραµµα το οποίο θα µας ζητάει κάθε φορά να εισάγουµε το όνοµα ενός µαθητή σε ένα µονοδιάστατο πίνακα µε 500 θέσεις, στην συνέχεια τους βαθµούς του σε πέντε µαθήµατα να τους εισάγουµε σε ένα δισδιάστατο πίνακα και ακόµα να υπολογίζεται και να καταχωρείται σε ένα µονοδιάστατο πίνακα ο µέσος όρος των πέντε αυτών µαθηµάτων. Η δεύτερη επιλογή θα καλεί ένα υποπρόγραµµα το οποίο θα ζητάει να διαβάσει το όνοµα ενός µαθητή και θα εµφανίζει τον µέσο όρο του. Αν δεν υπάρχει το όνοµα του µαθητή, τότε να εµφανίζει ανάλογο µήνυµα. Το πρόγραµµα να τελειώνει όταν στο σηµείο που µας ζητάει να κάνουµε µια από τις δύο επιλογές, πληκτρολογούµε 'Τέλος'. Κάθε φορά που θα επιλέγεται να γίνει µια καινούρια καταχώρηση θα πρέπει να προσεχθεί έτσι ώστε να µην γίνει πάνω από είδη υπάρχουσα εγγραφή. (Μονάδες 20) ΠΡΟΓΡΑΜΜΑ Καταχώρηση_Αναζήτηση ΑΚΕΡΑΙΕΣ: πλήθος,βαθµοί[500,5] ΧΑΡΑΚΤΗΡΕΣ: Α,Όνοµα[500] ΠΡΑΓΜΑΤΙΚΕΣ: Μέσος_Όρος[500] πλήθος 0 _ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ 'Για καταχώρηση νέου µαθητή πατήστε 1' ΓΡΑΨΕ 'Για αναζήτηση µαθητή πατήστε 2' ΙΑΒΑΣΕ Α ΑΝ Α='1' ΤΟΤΕ πλήθος πλήθος+1 ΚΑΛΕΣΕ καταχώρηση(όνοµα,βαθµοί,μέσος_όρος,πλήθος) ΑΛΛΙΩΣ_ΑΝ Α='2' ΤΟΤΕ ΚΑΛΕΣΕ αναζήτηση(όνοµα,μέσος_όρος,πλήθος) ΜΕΧΡΙΣ_ΟΤΟΥ Α='Τέλος' ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ!--------------------------------------------------- ΙΑ ΙΚΑΣΙΑ καταχώρηση(ο,β,μο,πλήθος) ΧΑΡΑΚΤΗΡΕΣ: Ο[500] ΑΚΕΡΑΙΕΣ: πλήθος,s,i,β[500,5] ΠΡΑΓΜΑΤΙΚΕΣ: ΜΟ[500] ΓΡΑΨΕ ' ώσε το όνοµα του µαθητή' ΙΑΒΑΣΕ Ο[πλήθος] S 0 ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 5 ΓΡΑΨΕ ' ώσε το βαθµό του ',i,' µαθήµατος' ΙΑΒΑΣΕ Β[πλήθος,i] S S+Β[πλήθος,i] ΜΟ[πλήθος] S/5 ΤΕΛΟΣ_ ΙΑ ΙΚΑΣΙΑΣ!-------------------------------------------------- ΙΑ ΙΚΑΣΙΑ αναζήτηση(ο,μο,πλήθος) ΧΑΡΑΚΤΗΡΕΣ: Ο[500],όνοµα
ΑΚΕΡΑΙΕΣ: i,πλήθος ΠΡΑΓΜΑΤΙΚΕΣ: ΜΟ[500] ΛΟΓΙΚΕΣ: b ΓΡΑΨΕ' ώσε το όνοµα του µαθητή' ΙΑΒΑΣΕ όνοµα ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ πλήθος ΑΝ Ο[i]=όνοµα ΤΟΤΕ ΓΡΑΨΕ 'Ο µέσος όρος του ',όνοµα,' είναι: ',ΜΟ[i] i πλήθος b ΑΛΗΘΗΣ ΑΛΛΙΩΣ b ΨΕΥ ΗΣ ΑΝ b=οχι ΑΛΗΘΗΣ ΤΟΤΕ ΓΡΑΨΕ ' εν βρέθηκε το παραπάνω όνοµα' ΤΕΛΟΣ_ ΙΑ ΙΚΑΣΙΑΣ