ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 08 / 02 / 2015 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: Ι. ΜΙΧΑΛΕΑΚΟΣ Γ.ΝΙΤΟΔΑΣ ΘΕΜΑ Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη λέξη Σωστό, αν είναι σωστή, ή τη λέξη Λάθος, αν είναι λανθασμένη. 1. Ο δομημένος προγραμματισμός προϋποθέτει την ανάπτυξη του αλγορίθμου, έτσι ώστε να αποτελείται από ανεξάρτητα τμήματα με βάση ένα προκαθορισμένο σχέδιο. 2. Με τον όρο εκσφαλμάτωση (debugging) εννοούμε τον έλεγχο του αλγορίθμου για την ορθότητα των αποτελεσμάτων του. 3. Οι εντολές σε γλώσσα μηχανής αποτελούνται από μια ακολουθία 0 και 1 σταθερού ή μεταβλητού μήκους. 4. Οι γλώσσες υψηλού επιπέδου δεν είναι στενά συνδεδεμένες με την αρχιτεκτονική της μηχανής. 5. Ένα διάγραμμα HIPO αποτελείται από δύο βασικά τμήματα. Α2. Δίνονται οι παρακάτω εντολές εκχώρησης σε Pascal και τις οποίες έχουμε αριθμήσει: 1. x:=5; 2. y:=5.7; 3. z:= Ζ ; 4. w:= ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ; 5. κ:=true; Να γράψετε τους αριθμούς καθεμίας από τις παραπάνω προτάσεις και δίπλα το τύπο δεδομένων τους. (Μονάδες 5) Α3. Ποια είναι τα πλεονεκτήματα του Δομημένου προγραμματισμού; Α4. Να γράψετε στο τετράδιό σας τους αριθμούς της Στήλης Α και δίπλα τα γράμματα της Στήλης Β που τους αντιστοιχούν. Σελίδα 1 από 7
Στήλη Α Στήλη Β 1. readln α. Ακέραιος τύπος 2. assemblers (συναρμολογητές) β. Μεταγλωττιστής 3. mod γ. Εισαγωγή δεδομένων στην Pascal. 4. FORTRAN δ. Συμβολικές γλώσσες 5. αντικείμενο πρόγραμμα ε. Γλώσσα υψηλού επιπέδου. (Μονάδες 5) A5. Να γράψετε για καθεμία από τις παρακάτω λογικές εκφράσεις, τον αριθμό τους και δίπλα την τιμή τους (true ή false ), αν Α=4, Β=2, C=10: 1. (A > 5 AND 5 > 6) OR (A > B AND 6 > B) 2. (A > 5 OR 5 > 6) AND (A > 3 OR B > 8) 3. NOT(5 > B OR (B > 3 AND 3 > A)) 4. NOT 5 > B OR B > 3 AND 3 > A 5. NOT (20 DIV C = 0) OR NOT (23 MOD A = 5) ΘΕΜΑ Β Β1. Να μεταφέρετε στο γραπτό σας τον παρακάτω πίνακα και να συμπληρώσετε τα κενά που λείπουν. Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 Read(a,b ) 22 35 a=. b=.. 2 Readln(x, y, z) 33 2 x=.. y=.. z= Σελίδα 2 από 7
Readln(c,d) Read(e) 7 14 78 9 39 c=.. d= e= B2. Δίνονται δύο τμήματα προγράμματος Α και Β. Να ξαναγράψετε στο γραπτό σας μόνο το Τμήμα Β συμπληρώνοντας κατάλληλα τα κενά, ώστε να εκτελεί την ίδια λειτουργία με το Τμήμα Α. Τμήμα Α. Τμήμα Β. if x=10 then y:=x * 2; else if x=20 then y:= x div 2; else y:= x mod 2; case of 10 : : y:=x div 2; y:=x mod 2 ; Β2. Δίνεται ο παρακάτω αλγόριθμος σε μορφή λογικού διαγράμματος: readln(a) true a>20 a<=30 true false false writeln(a*a) writeln( a*a ) Σελίδα 3 από 7
Να γράψετε στο γραπτό σας το ισοδύναμο πρόγραμμα σε Pascal λαμβάνοντας υπόψη ότι η μεταβλητή a είμαι ακεραίου τύπου. Β3. Δίνεται το παρακάτω πρόγραμμα σε Pascal: program telikes_times; var x,y,z: real; x:=50; y:=x; x:=x +x; z:=y + x; if z + x > 200 then y:=4 * y; x:=2; z:=5 else if z + x < 100 then x:=4 * x; y:=2; z:=4 else z:=x + 2 * y; x:=1; y:=z + x. Σελίδα 4 από 7 (Μονάδες 5 )
Να γράψετε στο γραπτό σας τις διαδοχικές τιμές των μεταβλητών x, y, z όπως αυτές προκύπτουν από την εκτέλεση του παραπάνω προγράμματος. (Μονάδες 7) ΘΕΜΑ Γ Η φορολογία των πινακίδων για την αγορά καινούργιου αυτοκινήτου υπολογίζεται με κριτήριο τον κυβισμό του σύμφωνα με τον παρακάτω πίνακα: Κυβισμός Φόρος (σε ευρώ) 0-1400 300 1401-1800 500 1801-2500 800 Άνω των 2500 1200 Να γράψετε πρόγραμμα σε γλώσσα προγραμματισμού Pascal το οποίο για ένα τυχαίο αυτοκίνητο: Γ1. Περιέχει τμήμα δηλώσεων Γ2. Να διαβάζει: 1. Τον κυβισμό του αυτοκινήτου. (μονάδες 2) 2. Την καθαρή αξία του αυτοκινήτου χωρίς τις πινακίδες. (Μονάδες 2) Γ3. Να υπολογίζει:.γ4. (Μονάδες 2) 1. Το ποσοστό επί τοις εκατό (%) που αντιστοιχεί η φορολογία στην καθαρή αξία του αυτοκινήτου (μονάδες 5) 2. Το συνολικό κόστος του αυτοκινήτου, σαν το άθροισμα της καθαρής αξίας και του φόρου των πινακίδων..(μονάδες 5) Να εμφανίζει:. 1. Το ποσοστό επί τοις εκατό (%) που αντιστοιχεί η φορολογία στην καθαρή αξία του αυτοκινήτου (μονάδες 2) 2. Το συνολικό κόστος του αυτοκινήτου συμπεριλαμβανομένου και του κόστους των Σελίδα 5 από 7
πινακίδων.(μονάδες 2) Υποδείξεις για το ΘΕΜΑ Γ: (α) (β) (γ) (δ) (ε) Δεν χρειάζεται να γίνει έλεγχος ορθότητας τιμών. Τα κυβικά του αυτοκινήτου είναι θετικός ακέραιος αριθμός. Η καθαρή αξία του αυτοκινήτου είναι θετικός πραγματικός αριθμός. Να υπάρχουν κατάλληλα μηνύματα στις εντολές εισόδου και εξόδου. Ο υπολογισμός του φόρου να μην γίνεται κλιμακωτά. ΘΕΜΑ Δ Το καθένα από τα πρακτορεία του ΟΠΑΠ έχει χαρακτηριστεί με ένα κωδικό Code1 ή Code2 και καταβάλλει ετησίως ένα χρηματικό ποσό σε αυτόν. Το ύψος του ποσού που θα καταβάλλει υπολογίζεται κλιμακωτά ως ποσοστό επί των ετήσιων εσόδων από τα παιχνίδια του ΟΠΑΠ και ανάλογα με τον κωδικό του πρακτορείου σύμφωνα με τον παρακάτω πίνακα: Ετήσια έσοδα Ποσοστό επί των ετήσιων εσόδων ανάλογα με τον κωδικό του πρακτορείου Code1 Code2 Έως και 100000 7% 5% Πάνω από 100000 έως και 200000 15% 10% Πάνω από 200000 25% 22% Να γράψετε πρόγραμμα σε γλώσσα προγραμματισμού Pascal το οποίο: Δ1. Περιέχει τμήμα δηλώσεων. (Μονάδες 2) Δ2. Να διαβάζει το ονοματεπώνυμο του ιδιοκτήτη του πρακτορείου ΟΠΑΠ, τον κωδικό του πρακτορείου (Code1 ή Code2), και τα ετήσια έσοδα από τα παιχνίδια του ΟΠΑΠ. Σελίδα 6 από 7
Δ3. Υπολογίζει το χρηματικό ποσό που θα καταβάλλει ο ιδιοκτήτης του πρακτορείου στον ΟΠΑΠ. Δ4. Εμφανίζει το ονοματεπώνυμο του ιδιοκτήτη του πρακτορείου και το χρηματικό ποσό που θα καταβάλλει στον ΟΠΑΠ. Υποδείξεις για το θέμα Δ α. Δεν χρειάζεται να γίνει έλεγχος ορθότητας τιμών. β. Τα ετήσια έσοδα είναι θετικός πραγματικός αριθμός. γ. Να υπάρχουν κατάλληλα μηνύματα στις εντολές εισόδου και εξόδου. δ. Ένα πχ. καταβολής ποσού για ιδιοκτήτη με κωδικό πρακτορείου Code1: αν υποθέσουμε ότι είχε ετήσια έσοδα 120000 (2 η κλίμακα), τότε θα πληρώσει στον ΟΠΑΠ 7000 (το 7% των 100000) για τα 100000 της πρώτης κλίμακας συν 3000 (το 15% των 20000) για τα υπόλοιπα 20000 που ανήκουν στην δεύτερη κλίμακα δηλ. θα καταβάλλει το ποσό των 10000 στον ΟΠΑΠ. ΣΑΣ ΕΥΧΟΜΑΣΤΕ ΕΠΙΤΥΧΙΑ! Σελίδα 7 από 7