Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΘΕΜΑ Α Α1. Να χαρακτηρίσετε σωστή (Σ) ή λανθασμένη (Λ) καθεμία από τις παρακάτω προτάσεις: 1. Ένα επιλύσιμο πρόβλημα είναι και δομημένο. 2. Ένας από τους τρόπους αναπαράστασης ενός αλγορίθμου είναι και η κωδικοποίηση 3. Το όνομα μιας μεταβλητής δεν πρέπει να περιλαμβάνει κανέναν από τους ειδικούς χαρακτήρες παρά μόνο την κάτω παύλα (_). 4. Η χρήση της σειριακής αναζήτησης δικαιολογείται μόνο σε περιπτώσεις που ο πίνακας είναι ταξινομημένος. 5. Η μεταβλητή που χρησιμοποιούμε σε μια ουρά, δείχνει την κορυφή της (Μονάδες 10) Α2. Να αναφέρετε ονομαστικά τις βασικές λειτουργίες που εκτελεί ένας υπολογιστής (Μονάδες 3) Α3. Να αναφέρετε τους κανόνες που πρέπει να ισχύουν κατά τη χρήση εμφωλευμένων δομών επανάληψης (Μονάδες 6) Α4. Ο παρακάτω αλγόριθμος γράφτηκε για να υπολογίζει το γινόμενο δυο θετικών και ακεραίων αριθμών με τη μέθοδο του πολλαπλασιασμού αλά ρώσικα. Στον αλγόριθμο αυτό υπάρχουν λάθη. Να ξαναγράψετε στο τετράδιο σας τον αλγόριθμο κάνοντας τις απαραίτητες διορθώσεις έτσι ώστε να υπολογίζει σωστά το γινόμενο των δυο αριθμών με τη μέθοδο του πολλαπλασιασμού αλά ρωσικά (Μονάδες 6) Τέλος Διάβασε Μ1, Μ2 Σ 0 Όσο Μ2 < 0 επανάλαβε Αν Μ2/2 = 1 τότε Σ Σ + Μ1 Μ2 2 * Μ2 Μ1 Μ1 div 2 Εμφάνισε Το γινόμενο των δυο αριθμών είναι, Σ Α5. Δίνεται το παρακάτω τμήμα αλγορίθμου Χ 5 _επανάληψης X X + 3 Γράψε Χ Μέχρις_ότου Χ>=17
Να μετατραπεί σε ισοδύναμο τμήμα αλγορίθμου με χρήση της δομής Για από μέχρι με_βήμα (Μονάδες7) Α6. Δίνονται οι παρακάτω προτάσεις που περιέχουν κενά 1) Η εύρεση των ριζών της δευτεροβάθμιας εξίσωσης είναι πρόβλημα 1. 2) Το.2.πρόγραμμα είναι γραμμένο σε γλώσσα υψηλού επιπέδου 3)..3. +. 4 = Προγράμματα 4) Η. 5.είναι μια δομή δεδομένων με δυο άκρα, που υλοποιείται με τη βοήθεια πινάκων, 5) Το πρόγραμμα που παράγει ο μεταγλωττιστής λέγεται.6. πρόγραμμα. 6) Το πεδίο που προσδιορίζει μοναδικά (ξεχωρίζει) μια εγγραφή σε σχέση με τις άλλες ονομάζεται 7.. κλειδί. 7) Η αμέσως επόμενη διεύθυνση (αριθμός εντολής) του κυρίως προγράμματος σε μια 8 χρόνου εκτέλεσης ονομάζεται διεύθυνση επιστροφής Επίσης δίνονται οι παρακάτω λέξεις: α) Αλγόριθμοι β) Ουρά γ) Πρωτεύον δ) Υπολογιστικό ε) Πηγαίο στ) Δομές Δεδομένων ζ) Στοίβα η) Αντικείμενο Να γράψετε στο τετράδιο σας τους αριθµούς 1,2,3,4,5,6,7,8 και δίπλα το γράµµα α, β, γ, δ, ε, στ, ζ, η που αντιστοιχεί σωστά. (Μονάδες 8) ΘΕΜΑ Β Β1. Δίνεται το παρακάτω πρόγραμμα σε ΓΛΩΣΣΑ. Να γράψετε στο τετράδιο σας ποιες είναι οι τιμές που θα εμφανιστούν κατά την εκτέλεση του προγράμματος ΠΡΟΓΡΑΜΜΑ ΘΕΜΑΒ2 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α, Β ΑΡΧΗ Α 2 Β 750 ΟΣΟ (Β >= Α) ΕΠΑΝΑΛΑΒΕ Α Α + 2 ΚΑΛΕΣΕ Υπολογισμοί (Α, Β) ΓΡΑΨΕ Α, Β ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ Α, Β ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ Υπολογισμοί (Β, Α) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α, Β ΑΡΧΗ ΑΑdivΒ Β2*Β 3 ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ (Μονάδες 8) Β2. Δίνεται τo παρακάτω τμήμα αλγορίθμου σε μορφή διαγράμματος ροής: ΑΡΧΗ Διάβασε Χ Υ 0 X X+2 Υ Y + 1 X >10 OXI OXI NAI Υ 0 OXI X >20 NAI X X - 2 Υ Y - 1 X < -5 OXI NAI ΤΕΛΟΣ Να κατασκευάσετε ισοδύναμο τμήμα αλγορίθμου σε ψευδογλώσσα. (Μονάδες 12) ΘΕΜΑ Γ Ένας καθηγητής έδωσε σε 20 μαθητές της ίδιας τάξης διαφόρων σχολείων ένα τεστ 100 ερωτήσεων τύπου Σωστό/Λάθος. Για στατιστικούς λόγους τα σχολεία αξιολογούνται ανάλογα με τις απαντήσεις των παιδιών και κατατάσσονται σε δύο κατηγορίες, «ΚΑΛΗ» όταν το ποσοστό των σωστών απαντήσεων των μαθητών ενός σχολείου σε σχέση με το μέσο όρο του σχολείου τους είναι πάνω από 60% και «ΜΕΤΡΙΑ» όταν είναι κάτω από 60%. Να αναπτύξετε πρόγραμμα το οποίο αφού διαβάσει το όνομα του σχολείου:
Γ1. Θα καταχωρεί τα ονόματα των μαθητών του σχολείου σε ένα πίνακα ΟΝΟΜΑ, τις σωστές απαντήσεις (λύσεις) σε έναν πίνακα Α και τις αντίστοιχες απαντήσεις όλων των μαθητών του κάθε σχολείου σε έναν πίνακα Β. (Δεν απαιτείται έλεγχος εγκυρότητας δεδομένων εισόδου) (Μονάδες 3) Γ2. Θα εμφανίζει στο κυρίως πρόγραμμα το πλήθος των σωστών απαντήσεων κάθε μαθητή. Για τον υπολογισμό του πλήθους θα καλεί κατάλληλο υποπρόγραμμα το οποίο περιγράφεται στο ερώτημα Γ6. (Μονάδες 2) Γ3. Θα υπολογίζει και θα εμφανίζει στο κυρίως πρόγραμμα το ποσοστό των μαθητών που είχαν πλήθος σωστών απαντήσεων πάνω από το μέσο όρο της τάξης (Μονάδες 4) Γ4. Η επαναληπτική διαδικασία θα τερματίζει όταν δοθεί ως όνομα σχολείου το «ΤΕΛΟΣ» ή όταν 4 διαδοχικά σχολεία παρουσιάσουν «ΜΕΤΡΙΑ» απόδοση (Μονάδες 4) Γ5. Στο τέλος το πρόγραμμα να εμφανίζει το πλήθος των σχολείων που ανήκουν στη κάθε κατηγορία αξιολόγησης. (Μονάδες 2) Γ6. Να αναπτύξετε υποπρόγραμμα το οποίο θα δέχεται σαν είσοδο τον πίνακα των σωστών απαντήσεων, τον πίνακα των απαντήσεων των μαθητών και τον αριθμό του μαθητή και θα επιστρέφει στο κυρίως πρόγραμμα το πλήθος των σωστών απαντήσεων του συγκεκριμένου μαθητή. (Μονάδες 5) ΘΕΜΑ Δ Ένα σχολείο έχει 150 μαθητές οι οποίοι εξετάζονται σε 6 μαθήματα για την επικείμενη εισαγωγή τους στην τριτοβάθμια εκπαίδευση. Σε ένα πίνακα Β[150,6] εισάγονται οι βαθμολογίες κάθε μαθητή ανά μάθημα. Σε ένα μονοδιάστατο πίνακα ΟΝ[150] εισάγονται τα ονόματα των μαθητών και σε ένα μονοδιάστατο πίνακα Μ[6] εισάγονται τα ονόματα των μαθημάτων (Φυσική, Μαθηματικά κτλ). Να γίνει αλγόριθμος σύμφωνα με τον οποίο: Δ1. Θα δέχεται τα ονόματα των 150 μαθητών και των 6 μαθημάτων και θα τα καταχωρεί στους αντίστοιχους πίνακες. (Μονάδες 2) Δ2. Θα δέχεται τις βαθμολογίες των 150 μαθητών και στα 6 μαθήματα που εξετάστηκαν διασφαλίζοντας ότι κυμαίνονται από 1 μέχρι και 20 και θα τις καταχωρεί στον αντίστοιχο πίνακα. (Μονάδες 2) Δ3. Θα υπολογίζει και θα εμφανίζει σε ποιο μάθημα έπεσαν οι περισσότεροι μαθητές κάτω από τη βάση. (θεωρούμε ότι είναι μοναδικό) (Μονάδες 4) Δ4. Θα διαβάζει το όνομα ενός μαθητή από το πληκτρολόγιο και να το αναζητά στον πίνακα των ονομάτων. Στην περίπτωση που εντοπιστεί να εμφανίζει σε ποιο μάθημα (ή μαθήματα) έβγαλε το μεγαλύτερο βαθμό. Σε αντίθετη περίπτωση να εμφανίζει κατάλληλα διαμορφωμένο μήνυμα. (Μονάδες 6) Δ5. Θα ταξινομεί τις βαθμολογίες κάθε μαθητή σε φθίνουσα σειρά και θα εμφανίζει το όνομα, τις βαθμολογίες και τα αντίστοιχα μαθήματα του κάθε μαθητή
(Μονάδες 6) ΘΕΜΑ Α Α1. Α2. Α3. Α4. Α5. Α6. 1. Λάθος 2. Σωστό 3. Σωστό 4. Λάθος 5. Λάθος Πρόσθεση Σύγκριση Μεταφορά δεδομένων ΑΠΑΝΤΗΣΕΙΣ Ο εσωτερικός βρόχος πρέπει να βρίσκεται ολόκληρος μέσα στον εξωτερικό. Ο βρόχος που ξεκινάει τελευταίος, πρέπει να ολοκληρώνεται πρώτος. Η είσοδος σε κάθε βρόχο υποχρεωτικά γίνεται από την αρχή του. Δεν μπορεί να χρησιμοποιηθεί η ίδια μεταβλητή ως μετρητής δύο ή περισσοτέρων βρόχων που ο ένας βρίσκεται στο εσωτερικό του άλλου. Διάβασε Μ1, Μ2 Σ 0 Όσο Μ2 >0 επανάλαβε Αν Μ2mod2 = 1 τότε Σ Σ + Μ1 Μ1 2 * Μ1 Μ2 Μ2 div 2 Εμφάνισε Το γινόμενο των αριθμών είναι, Σ Τέλος Για Χ από 8 μέχρι 19 με_βήμα 3 Γράψε Χ 1 δ, 2 ε, 3 α, 4 στ, 5 β, 6 η, 7 γ, 8 ζ ΘΕΜΑ Β Β1. Θα εμφανιστούν οι τιμές 5 175 11 25
23 1 23 1 Β2. Διάβασε Χ Υ 0 _επανάληψης Χ Χ + 2 Υ Υ + 1 Μέχρις_ότου Χ > 10 Χ Χ - 8 Αν Χ> 20 τότε _επανάληψης Χ Χ 2 Υ Υ - 1 Μέχρις_ότου Χ < -5 Τέλος ΘΕΜΑ Γ Πρόγραμμα Θέμα3 Μεταβλητές Ακέραιες: Ν, Ι, J, Χ, Π[20], Σ, Κ, Ν1, Ν2 Πραγματικές: ΠΟΣ, Μ0 Χαρακτήρες: ΟΝΟΜΑ[20], Α[100], Β[20,100], ΌΝ Ν0 Ν10 Ν20 Διάβασε Ον Όσο Ον<> ΤΕΛΟΣ ΚΑΙ Ν<4 επανάλαβε Για Ι από 1 μέχρι 20 Διάβασε ΌΝΟΜΑ[Ι] Για Ι από 1 μέχρι 100 Διάβασε Α[Ι] Για Ι από 1 μέχρι 20 Για J από 1 μέχρι 100 Διάβασε Β[Ι, J] Για Ι από 1 μέχρι 80 ΧΥπολογισμός(Α, Β, Ι) Π[Ι]Χ Γράψε Π[Ι] Σ0 Για Ι από 1 μέχρι 20
Σ Σ + Π[Ι] ΜΟ Σ/20 Κ0 Για Ι από 1 μέχρι 20 Αν Π[Ι]>ΜΟ τότε Κ Κ + 1 ΠΟΣ Κ/20*100 Γράψε ΠΟΣ Αν ΠΟΣ<60 τότε Ν2 Ν2 + 1 Ν Ν + 1 Αλλιώς Ν0 Ν1 Ν1 + 1 Διάβασε Ον Γράψε Ν1, Ν2 Τέλος_προγράμματος Συνάρτηση Υπολογισμός(Α, Β, Ι): Ακέραια Μεταβλητές Ακέραιες: Ι, J, Χ Χαρακτήρες: Α[100], Β[20,100] Για J από 1 μέχρι 100 Αν Β[Ι,J]= A[J] τότε Χ Χ + 1 Υπολογισμός Χ Τέλος_συνάρτησης ΘΕΜΑ Δ Αλγόριθμος Θέμα4 Για Ι από 1 μέχρι 150 Διάβασε ΟΝ[Ι] Για Ι από 1 μέχρι 6 Διάβασε Μ[Ι] Για Ι από 1 μέχρι 150 Για J από 1 μέχρι 6 _επανάληψης Διάβασε Β[Ι, J] Μέχρις_ότου Β[Ι, J]>=1 και Β[Ι, J]<=20
Για J από 1 μέχρι 6 Πλήθος[J] 0 Για I από 1 μέχρι 150 Αν Β[I, J] < 10 τότε Πλήθος[J] Πλήθος[J] + 1 maxπλήθος[1] Θέση_max 1 Για J από 2 μέχρι 6 Αν max< Πλήθος[J] τότε max Ηλικία [J] Θέση_max J Εμφάνισε Μ[Θέση_max] Διάβασε X θέση 0 I1 βρέθηκε ψευδής Όσο βρέθηκε = ψευδής και I<=150 επανάλαβε Αν ΟΝ[Ι] = X τότε βρέθηκε αληθής θέσηι Αλλιώς II+1 Αν βρέθηκε = αληθής τότε max Β[θέση,1] Για J από 2 μέχρι 6 Αν max< Β[θέση, J] τότε max Β[θέση, J] Για J από 1 μέχρι 6 Αν max=β[θέση, J] τότε Εμφάνισε Μ[J] Αλλιώς Εμφάνισε το ζητούμενο όνομα δε βρέθηκε Για Κ από 1 μέχρι 150 Για Λ από 1 μέχρι 6 Μ1[Λ] Μ[Λ] Για I από 2 μέχρι 6 Για J από 6 μέχρι I με_βήμα -1 Αν Β[Κ,J] > Β[Κ,J-1] τότε
temp Β[Κ,J] Β[Κ,J] Β[Κ,J-1] Β[Κ,J-1] temp temp2 Μ1[J] Μ1[J] Μ1[J-1] Μ1[J-1] temp2 Εμφάνισε Μαθητής:, ΟΝ[Κ] Για Λ από 1 μέχρι 6 Εμφάνισε Στο μάθημα: Μ1[Λ], η βαθμολογία είναι: Β[Κ, Λ] Τέλος_Επανάληψης Τέλος Θέμα4 Επιμέλεια θεμάτων: Σούρας Παναγιώτης