Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΘΕΜΑ Α Α1. Να χαρακτηρίσετε καθεμιά από τις προτάσεις που ακολουθούν γράφοντας στο τετράδιό σας, δίπλα από τον αριθμό κάθε πρότασης, το γράμμα Σ, αν αυτή είναι Σωστή, ή το γράμμα Λ, αν αυτή είναι Λανθασμένη. 1. Κατά την εκτέλεση του προγράμματος η εντολή ΙΑΒΑΣΕ διακόπτει την εκτέλεσή του και περιμένει την εισαγωγή τιμών από το πληκτρολόγιο. 2. Η στοίβα χρησιμοποιεί δύο δείκτες. 3. Ένα επιλύσιμο πρόβλημα μπορεί να είναι αδόμητο. 4. Ο τελεστής MOD χρησιμοποιείται για τον υπολογισμό του πηλίκου μίας διαίρεσης ακεραίων αριθμών. 5. Η σύγκριση λογικών δεδομένων έχει έννοια μόνο στην περίπτωση του ίσου (=) και του διάφορου (<>). A.2 Να αναφέρετε ονομαστικά τις κατηγορίες προβλημάτων με κριτήριο το είδος επίλυσης. Μονάδες 3 A.3 Τι είναι διαδικασία και τι είναι συνάρτηση; Μονάδες 6 Α.4 Ποιοί είναι οι λόγοι για τους οποίους αναθέτουμε την επίλυση προβλημάτων σε έναν υπολογιστή; Μονάδες 4 A.5 Να αναφέρετε ονομαστικά τις σκοπιές από τις οποίες μελετά η πληροφορική τα δεδομένα Μονάδες 4 A.6 ίνεται η παρακάτω εντολή: Για Α από Β μέχρι Γ με_βήμα Εμφάνισε "ΚΑΛΗΣΠΕΡΑ" Να γράψετε στο τετράδιό σας πόσες φορές εκτελείται η εντολή Εμφάνισε για καθένα από τους παρακάτω συνδυασμούς των τιμών των μεταβλητών Β, Γ και : 1. Β = 2 Γ = 5 = 1 2. Β =-1 Γ = 1 = 0,5 3. Β =-7 Γ =-6 =-5 4. Β = 5 Γ = 5 = 1 Μονάδες 8
A.7 Δίνονται οι παρακάτω προτάσεις: 1. Η 1 είναι γλώσσα αντικειμενοστραφούς προγραμματισμού 2. Σε εμπορικές εφαρμογές χρησιμοποιείται η γλώσσα 2 3. Η γλώσσα 3 χρησιμοποιείται κυρίως στο διαδίκτυο 4. Η γλώσσα 4 χρησιμοποιείται σε εφαρμογές τεχνητής νοημοσύνης 5. Η γλώσσα 5 χρησιμοποιεί διαδικασιακό προγραμματισμό και οι παρακάτω λέξεις: α. Java β. Cobol γ. Prolog. 1. Να γράψετε στο τετράδιό σας τους αριθμούς (1 5) των κενών διαστημάτων των προτάσεων και δίπλα το γράμμα της λέξης (α, β, γ) που αντιστοιχεί σωστά. ΣΗΜΕΙΩΣΗ: Κάποιες από τις λέξεις χρησιμοποιούνται περισσότερες φορές από μία. Μονάδες 5 ΘΕΜΑ Β Β1. Να μετατραπεί σε αλγόριθμο το παρακάτω διάγραμμα ροής. Μονάδες 8 Αρχή Χ 10 Y 2 * X Γράψε Y X X - 2 ΟΧΙ Χ < 1 NAI Γράψε Y ΤΕΛΟΣ Β2. Α. Δίνεται το παρακάτω πρόγραμμα σε ΓΛΩΣΣΑ. Τι θα εμφανιστεί στην οθόνη κατά την εκτέλεση του με είσοδο 10, 20, 5; Μονάδες 4 Β. Να γραφεί ισοδύναμο πρόγραμμα με χρήση διαδικασίας αντί για συνάρτηση. Μονάδες 8 ΠΡΟΓΡΑΜΜΑ ΘέμαΒ
ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α, Β, Γ, Μ1, Μ2 ΑΡΧΗ ΔΙΑΒΑΣΕ Α, Β, Γ Μ1 F(Α, Β) Μ2 F(M1, Γ) ΓΡΑΨΕ Μ1, Μ2 ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ!------------------------------------------------- ΣΥΝΑΡΤΗΣΗ F(X, Υ): ΑΚΕΡΑΙΑ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: X, Y ΑΡΧΗ ΑΝ Χ>Υ ΤΟΤΕ F X + Υ ΑΛΛΙΩΣ F Y Χ ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ ΘΕΜΑ Γ Ένα DVD-Club παρέχει στους πελάτες της 3 εναλλακτικούς τρόπους πληρωμής των DVD που έχουν ενοικιάσει μηνιαίως σύμφωνα με το παρακάτω πίνακα Τρόπος πληρωμής Κόστος εγγραφής Κόστος ανά DVD 1 5 1,50 2 10 1,20 3 20 0,80 Να αναπτυχθεί πρόγραμμα που: Α. 1.Θα διαβάζει επαναληπτικά στο κυρίως πρόγραμμα το όνομα των συνδρομητών, τον τρόπο πληρωμής που έχει επιλέξει ο πελάτης καθώς και το πλήθος των DVD που έχει νοικιάσει ο πελάτης (δεν απαιτείται έλεγχος εγκυρότητας δεδομένων). Το πρόγραμμα θα τερματίζει όταν διαβαστεί ως όνομα πελάτη το "Τέλος" ή όταν οι συνολικές εισπράξεις του DVD-Club ξεπεράσουν τα 1000. Μονάδες 4 2. Θα εμφανίζει στο κυρίως πρόγραμμα το όνομα και το ποσό του μηνιαίου λογαριασμού κάθε πελάτη. Ο υπολογισμός του ποσού θα γίνεται από κατάλληλη συνάρτηση που θα κατασκευάσετε στο ερώτημα Β. Μονάδες 4 3. Θα υπολογίζει και θα εμφανίζει στο κυρίως πρόγραμμα το όνομα του πελάτη με το μεγαλύτερο λογαριασμό. (υποθέτουμε ότι είναι μοναδικός) Μονάδες 4 Β. Να υλοποιήσετε συνάρτηση η οποία θα δέχεται σαν είσοδο τον τρόπο πληρωμής που έχει επιλέξει ο πελάτης και το πλήθος των DVD που νοίκιασε ο πελάτης και θα επιστρέφει στο κυρίως πρόγραμμα το ποσό του λογαριασμού του. Μονάδες 8
ΘΕΜΑ Δ Μια φαρμακευτική εταιρία που απασχολεί 30 πωλητές στην Ελλάδα αποφάσισε να εξαγοράσει μια μικρότερη εταιρεία η οποία απασχολεί 20 πωλητές. Μετά την εξαγορά στην εταιρεία θα συνεχίζουν να εργάζονται οι 25 πωλητές που πραγματοποίησαν τις μεγαλύτερες ετήσιες πωλήσεις τη προηγούμενη χρονιά και από τις δύο εταιρείες. 1. Θα διαβάζει τα ονόματα των υπαλλήλων κάθε εταιρίας, και θα τα καταχωρεί σε πίνακες. 2. Θα διαβάζει τις μηνιαίες πωλήσεις που πραγματοποίησε κάθε υπάλληλος, κάθε εταιρίας, στη διάρκεια του έτους θα τις καταχωρεί σε κατάλληλους πίνακες διασφαλίζοντας ότι είναι θετικός αριθμός Μονάδες 4 3. Θα εμφανίζει τα ονόματα των πωλητών που θα εργαστούν στην εταιρεία μετά την εξαγορά. Μονάδες 6 4. θα εμφανίζει μια λίστα με τα ονόματα όσων εργαζομένων θα απολυθούν. 5. Θα διαβάζει ένα όνομα από το πληκτρολόγιο, να αναζητά το όνομα στην λίστα με τα ονόματα και εάν εντοπίσει το όνομα, να εμφανίζει ένα μήνυμα που να μας πληροφορεί εάν ο συγκεκριμένος πωλητής θα συνεχίζει να εργάζεται στην εταιρία ή όχι. Σε αντίθετη περίπτωση, να εμφανίζεται κατάλληλα διαμορφωμένο μήνυμα Μονάδες 6
ΘΕΜΑ Α Α1. 1.Σ 2. Λ 3. Σ 4. Λ 5. Σ Α2. ΑΠΑΝΤΗΣΕΙΣ Απόφασης, Υπολογιστικά και Βελτιστοποίησης. Α3. Διαδικασία είναι ένας τύπος υποπρογράμματος που μπορεί να εκτελεί όλες τις λειτουργίες ενός προγράμματος, δηλαδή να διαβάζει δεδομένα, να πραγματοποιεί υπολογισμούς, να τυπώνει μεταβλητές και μηνύματα κ.λ.π.. Συνάρτηση είναι ένας τύπος υποπρογράμματος που δέχεται ένα σύνολο τιμών, τις επεξεργάζεται, υπολογίζει και επιστρέφει μόνο μία τιμή με το όνομά της (όπως οι μαθηματικές συναρτήσεις). Α4. πολυπλοκότητα των υπολογισμών, επαναληπτικότητα των διαδικασιών, ταχύτητα εκτέλεσης των πράξεων, μεγάλο πλήθος δεδομένων. Α5. Υλικό Γλώσσες Προγραμματισμού Δομές Δεδομένων Ανάλυση Δεδομένων Α6. 1 4 2 5 3 0 4 1 Α7. 1. Α 2. Β 3. Α 4. Γ 5. Β
ΘΕΜΑ Β Β1. Αρχή Χ 10 Αρχή_επανάληψης Υ 2*Χ Γράψε Χ Χ Χ 2 Μέχρις_ότου Χ<1 Γράψε Υ Τέλος Β2. A. Θα εμφανιστεί 10 15 B. ΠΡΟΓΡΑΜΜΑ ΘέμαΒ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: Α, Β, Γ, Μ1, Μ2 ΑΡΧΗ ΔΙΑΒΑΣΕ Α, Β, Γ Κάλεσε Διαδ(Α, Β, Μ1) Κάλεσε Διαδ(Μ1, Γ, Μ2) ΓΡΑΨΕ Μ1, Μ2 ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ!------------------------------------------------- ΔΙΑΔΙΑΚΑΣΙΑ Διαδ(X, Υ, F) ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: X, Y, F ΑΡΧΗ ΑΝ Χ>Υ ΤΟΤΕ F X + Υ ΑΛΛΙΩΣ F Y Χ ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΘΕΜΑ Γ Πρόγραμμα Θέμα3 Μεταβλητές Ακέραιες: Τρόπος, Πλήθος Πραγματικές:Ποσό, Εισπράξεις, max Χαρακτήρες: Όν_Πελάτη, Ον_max Αρχή Εισπράξεις 0 max 0 Όν_max Αρχη_επανάληψης
Γράψε Δώσε όνομα πελάτη, επιθυμητό τρόπο πληρωμής και πλήθος DVD Διάβασε Όν_Πελάτη, Τρόπος, Πλήθος Ποσό Συνάρτ(Τρόπος, Πλήθος) Γράψε Ο πελάτης, Όν_Πελάτη, έχει λογαριασμό, Ποσό Εισπράξεις Εισπράξεις + Ποσό Αν Ποσό> max τότε max Ποσό Όν_max Όν_Πελάτη Μέχρις_ότου Όν_Πελάτη= «Τέλος» Ή Εισπράξεις=1000 Γράψε Το όνομα του πελάτη με το μεγαλύτερο λογαριασμό είναι, Όν_max Τέλος_προγράμματος!======================== Συνάρτηση Συνάρτ(Τρόπος, Πλήθος): Πραγματική Μεταβλητές Ακέραιες: Τρόπος, Πλήθος Πραγματικές: Λογ Αρχή Αν Τρόπος=1 τότε Λογ 5 + 1.5*Πλήθος _αν Τρόπος = 2 τότε Λογ 10 + 1.20*Πλήθος Λογ 20 + 0.80*Πλήθος Συνάρτ Λογ Τέλος_συνάρτησης ΘΕΜΑ Δ Αλγόριθμος Άσκηση4 Για Ι από 1 μέχρι 30 Διάβασε Όν1[Ι] Για Ι από 1 μέχρι 20 Διάβασε Όν2[Ι] Για Ι από 1 μέχρι 30 Για J από 1 μέχρι 12 Αρχή_επανάληψης Διάβασε Π1[I, J] Μέχρις_ότου Π1[I,J]>0 Για Ι από 1 μέχρι 20 Για J από 1 μέχρι 12 Αρχή_επανάληψης
Διάβασε Π2[I, J] Μέχρις_ότου Π2[I,J]>0 Για Ι από 1 μέχρι 30 Σ1[Ι] 0 Για J από 1 μέχρι 12 Σ1[Ι] Σ1[Ι] + Π1[I,J] Για Ι από 1 μέχρι 20 Σ2[Ι] 0 Για J από 1 μέχρι 12 Σ2[Ι] Σ2[Ι] + Π1[I,J] Για Ι από 1 μέχρι 50 Αν Ι<= 30 τότε Σ3[I] Σ1[Ι] Ον3[I] Ον1[Ι] Σ3[Ι] Σ2[Ι 30] Ον3[Ι] Ον2[Ι 30] Για I από 2 μέχρι 50 Για J από 50 μέχρι I με_βήμα -1 Αν Σ3[J] > Σ3[J-1] τότε temp Σ3[J] Σ3[J] Σ3[J-1] Σ3[J-1] temp temp2 Ον3[J] Ον3[J] Ον3[J-1] Ον3[J-1] temp2 Για Ι από 1 μέχρι 25 Γράψε Θα συνεχίσουν να εργάζονται οι υπάλληλοι Ον3[Ι] Για Ι από 26 μέχρι 50 Γράψε Θα απολυθούν οι υπάλληλοι, Ον3[Ι] Διάβασε X I 1 βρέθηκε ψευδής Όσο βρέθηκε = ψευδής και I<=50 επανάλαβε
Αν Όν3[Ι] = X τότε βρέθηκε αληθής θέση Ι I I+1 Αν βρέθηκε = αληθής τότε Αν θέση<=25 τότε Εμφάνισε Ο, Όν3[θέση], θα συνεχίζει να εργάζεται στην εταιρεία Εμφάνισε Ο, Όν3[θέση], θα απολυθεί από την εταιρεία Εμφάνισε το ζητούμενο όνομα δε βρέθηκε Τέλος Άσκηση4 ΕΠΙΜΕΛΕΙΑ: ΣΟΥΡΑΣ ΠΑΝΑΓΙΩΤΗΣ