ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Εξετάσεις Προσομοίωσης 06/04/2015 Θέμα Α Α1. Να γράψετε στο τετράδιο σας τον αριθμό κάθε πρότασης και δίπλα τη λέξη ΣΩΣΤΟ, αν είναι σωστή και ΛΑΘΟΣ αν είναι λανθασμένη. 1. Ο συμβολομεταφραστής μεταφράζει τη γλώσσα υψηλού επιπέδου σε γλώσσα μηχανής. 2. Η διαδικασία μπορεί να εκτελεί όλες τις λειτουργίες ενός προγράμματος. 3. Η τιμή μίας σταθεράς δεν μπορεί να μεταβληθεί κατά την εκτέλεση ενός προγράμματος. 4. Η εντολή εκχώρησης χρησιμοποιείται για την απόδοση τιμών σε μεταβλητές κατά τη εκτέλεση του προγράμματος. Μονάδες 8 Α2. 1. Ένα από τα πλεονεκτήματα της γλώσσας υψηλού επιπέδου είναι η μεταφερσιμότητα των προγραμμάτων. Αναλύστε με λίγα λόγια τη σημασία αυτής της πρότασης. 2. Τα λογικά λάθη εμφανίζονται στην εκτέλεση και είναι δύσκολα στη διόρθωση τους. Να αναφέρετε ένα παράδειγμα. 3. Να αναφέρετε τους τύπους δεδομένων που υποστηρίζει η ΓΛΩΣΣΑ. A3. Να υπολογίσετε την τιμή της λογικής έκφρασης, για τις τιμές Χ=2015 και Μ=4. ((X MOD M <> 0) KAI (M^2 > X DIV 1000)) H (6* M = 4*6)
Θέμα Β Β1. Δίνονται τα παρακάτω τμήματα αλγορίθμου. Να τα ξαναγράψετε στο τετράδιο σας, χρησιμοποιώντας μόνο μία δομή επανάληψης Για Από Μέχρι. 1. Για i Από 1 Μέχρι 10 Για j Από 1 Μέχρι 20 Αν j = 20 Τότε Γράψε Α[ i, j ] 2. Για i Από 1 Μέχρι 100 Για j Από 1 Μέχρι 100 Αν i = j Τότε Γράψε Α[ i, j ] Μονάδες 10 Β2. Δίνεται το πρόγραμμα και η συνάρτηση. Να γράψετε στο τετράδιο σας τους αριθμούς που θα εμφανιστούν μετά την εκτέλεση του προγράμματος. Πρόγραμμα Β2 Μεταβλητές Ακέραιες: κ, λ, μ Αρχή λ 5 Για κ Από 1 Μέχρι 3 μ Σ1(κ, λ) Γράψε κ, λ, μ λ λ-1 Γράψε κ Τέλος_Προγράμματος Συνάρτηση Σ1(α, β): Ακέραια Μεταβλητές Ακέραιες : α, β Αρχή Αν α > β - 2 τότε β α -2 Αλλιώς_Αν α < β - 2 Τότε β α+2 Σ1 α+β Τέλος_Συνάρτησης Μονάδες 10
Β3. Δίνεται ο πίνακας Α[8,16] που περιέχει πραγματικούς αριθμούς και ο ακόλουθος αλγόριθμος, ο οποίος δημιουργεί τον πίνακα Β[4,8] ως εξής: Κάθε κελί του πίνακα Β περιέχει το μέσο όρο 4 κελιών (2 γραμμές και 2 στήλες) του πίνακα Α. Πιο συγκεκριμένα, ο μέσος όρος των κελιών Α[1,1], Α[1,2], Α[2,1] και Α[2,2] εκχωρείται στο κελί Β[1,1]. Ο μέσος όρος των κελιών Α[1,3], Α[1,4], Α[2,3] και Α[2,4] εκχωρείται στο κελί Β[1,2], κοκ. Στο σχήμα απεικονίζεται η συσχέτιση μεταξύ των κελιών των δύο πινάκων. A 1 2 3 1 2 3 4 4 15 16 B[1,1] B[1,2] B[1,8] B[2,1] B[2,2] B[2,8] 7 8 B[4,1] B[4,2] B[4,8] Να συμπληρώσετε τα κενά στον παρακάτω αλγόριθμο, ώστε να δημιουργεί τον πίνακα Β, όπως περιγράφετε. Αλγόριθμος Β3 Δεδομένα //Α// κ 1 λ 1 Για i Από 1 Μέχρι 8 Με Βήμα 2 Για j Από 1 Μέχρι 16 Με Βήμα 2 Αθρ Α[ i, j ] + Α[..(1).., j ] + Α[ i,..(2)..] + Α[ i +1, j + 1] Β[..(3)..,..(4)..] Αθρ / 4 λ..(5).. κ..(6).. Τέλος Β3 Μονάδες 12
Θέμα Γ Μία πιτσαρία έχει στον κατάλογο της 15 πίτσες. Η πιτσαρία δέχεται ηλεκτρονικές παραγγελίες, αρκεί το κόστος τους να είναι μεγαλύτερο από 12. Να δημιουργήσετε αλγόριθμο, ο οποίος: 1. Θα διαβάζει το όνομα και την τιμή κάθε πίτσας και θα τα εκχωρεί στους πίνακες Π[15] και Τ[15] αντίστοιχα. Μονάδες 2 2. Να ταξινομεί τους πίνακες Π και Τ σε αύξουσα σειρά ως προς την τιμή. 3. Για έναν πελάτη να διαβάζει τον πίνακα Παρ[15], όπου στο κάθε κελί θα περιέχεται η ποσότητα που επιθυμεί ο πελάτης από την αντίστοιχη πίτσα. Μονάδες 1 4. Να υπολογίζει το συνολικό κόστος της παραγγελίας. 5. Αν το συνολικό κόστος είναι μικρότερο από 12, να βρίσκει την οικονομικότερη πίτσα που αν προσθέτει στην παραγγελία, το κόστος θα ξεπεράσει τα 12. Στη συνέχεια να εμφανίζει το μήνυμα "Το κόστος είναι μικρότερο από το ελάχιστο κόστος παραγγελίας. Θέλετε να προσθέσετε στην παραγγελία σας την : " και το όνομα της πίτσας που βρέθηκε. Αν η απάντηση είναι Ναι, να προστίθεται στην παραγγελία του πελάτη, σε αντίθετη περίπτωση να εμφανίζεται το μήνυμα " Η παραγγελία ακυρώθηκε" Μονάδες 5 6. Αν η παραγγελία πραγματοποιηθεί, να εμφανίζει τα ονόματα και τις ποσότητες από τις πίτσες που τελικά θα παραλάβει ο πελάτης. Μονάδες 5 Δεν απαιτείται έλεγχος εγκυρότητας των δεδομένων.
Θέμα Δ Για την απεικόνιση μίας έγχρωμης φωτογραφίας με 1920 x 1080 ιχνοστοιχεία (pixels) χρησιμοποιούνται 3 πίνακες: R[1920,1080], B[1920,1080], G[1920,1080]. Κάθε κελί του πίνακα R περιέχει έναν ακέραιο αριθμό από 0 έως 255 που αντιστοιχεί σε μία απόχρωση του κόκκινου χρώματος. Ομοίως ο Β για το μπλε χρώμα και ο G για το πράσινο. Αν η φωτογραφία είναι ασπρόμαυρη αποτελείται από έναν μόνο πίνακα, ΑΜ[1920,1080] όπου κάθε στοιχείο του περιέχει την αντίστοιχη απόχρωση του γκρι (0 έως 255). Για τη μετατροπή μίας έγχρωμης φωτογραφίας σε ασπρόμαυρη χρησιμοποιούνται δύο μέθοδοι ανάλογα με τη φωτεινότητα της εικόνας. Αν η εικόνα είναι φωτεινή, κάθε κελί του πίνακα ΑΜ προκύπτει από το μέσο όρο των αντίστοιχων κελιών από τους πίνακες R, B, G (ΑΜ = (R + B + G )/3 ). Σε αντίθετη περίπτωση, προκύπτει από την σχέση ΑΜ = 0,21 R + 0,72 B + 0,07 G Φωτεινή θεωρείται μία φωτογραφία όταν ο μέσος όρος των τιμών και των τριών πινάκων (R, G, B) είναι ίσος ή μεγαλύτερος από 128, και σκοτεινή σε αντίθετη περίπτωση. Να κάνετε πρόγραμμα που: 1. Να περιέχει τμήμα δηλώσεων μεταβλητών. Μονάδες 2 2. Να διαβάζει τους πίνακες R[1920,1080], G[1920,1080], B[1920,1080]. Μονάδες 3 3. Να υπολογίζει τη φωτεινότητα της εικόνας. Για να γίνει αυτό να καλεί για κάθε πίνακα R, B και G το υποπρόγραμμα L, που θα υπολογίζει τη φωτεινότητα του καθενός. Η τελική φωτεινότητα της εικόνας ισούται με το μέσο όρο των τριών φωτεινοτήτων των πινάκων. 4. Με τη βοήθεια του υποπρογράμματος BW nα δημιουργεί τον πίνακα ΑΜ[1920,1080], που θα περιέχει την ασπρόμαυρη εικόνα. 5. Να κατασκευάσετε το υποπρόγραμμα L που θα δέχεται έναν πίνακα [1920,1080] και θα επιστρέφει το μέσο όρο των κελιών του. 6. Να κατασκευάσετε το υποπρόγραμμα BW που θα δέχεται τη φωτεινότητα της εικόνας, και του πίνακες R, B και G και θα δημιουργεί και θα επιστρέφει τον πίνακα ΑΜ (ανάλογα με την τιμή της φωτεινότητας θα επιλέγεται η σωστή μέθοδος). Δεν απαιτείται έλεγχος εγκυρότητας των δεδομένων.