ΜΑΘΗΜΑ / ΤΑΞΗ : ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ/Γ' ΕΠΑ.Λ. ΗΜΕΡΟΜΗΝΙΑ: 17-1-2016 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: Ι.ΜΙΧΑΛΕΑΚΟΣ-Χ.ΠΑΠΠΑ-Α.ΚΑΤΡΑΚΗ ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν, γράφοντας δίπλα στο γράμμα που αντιστοιχεί σε κάθε πρόταση τη λέξη Σωστό, αν η πρόταση είναι σωστή, ή τη λέξη Λάθος, αν η πρόταση είναι λανθασμένη. α. Σε ένα πρόγραμμα γραμμένο σε Pascal τα ονόματα των μεταβλητών μπορεί να περιέχουν και κενά. β. Ο αλφαριθμητικός τύπος (String) ανήκεις στους απλούς τύπους της Pascal. γ. Στην εντολή αντικατάστασης της Pascal η έκφραση του δεξιού μέρους μπορεί να είναι και μια σταθερά ή άλλη μεταβλητή. δ. Με τις εντολές επιλογής και αποφάσεων επιτυγχάνεται η εκτέλεση ορισμένων εντολών υπό συνθήκες. ε. Η λίστα ετικετών της εντολής case είναι μια λίστα διατεταγμένων τιμών που μπορεί να είναι και διαφορετικού τύπου με τον επιλογέα της εντολής case. Σελίδα 1 από 6 (Μονάδες 10) A2. Να γράψετε για κάθε περίπτωση τον αριθμό της πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή. 1. Το εύρος του διαστήματος των ακεραίων αριθμών της Pascal είναι : α. από MaxInt έως MaxInt-1 β. από MaxInt +1 έως MaxInt-1 γ. από MaxInt-1 έως MaxInt δ. από MaxInt -1 έως MaxInt (μονάδες 1) 2. Η λογική πρόσθεση υλοποιείται στη Pascal με τον τελεστή: α. and β. or γ. xor δ. not (μονάδες 1) 3. Η εντολή της Pascal : read(x, y) α. διαβάζει ένα δεδομένο β. διαβάζει δύο δεδομένα γ. διαβάζει τρία δεδομένα δ. εμφανίζει το x και το y. (μονάδες 1)
4. Η εκτέλεση της εντολής writeln χωρίς παραμέτρους έχει ως αποτέλεσμα: α. να τερματίζει η εκτέλεση του προγράμματος β. να εμφανίζονται τα δεδομένα της προηγούμενης γραμμής γ. παραλείπεται μια γραμμή δεδομένων δ. να περνάει ο έλεγχος στην αρχή της επόμενης γραμμής. (μονάδες 1) 5. Έστω ότι η μεταβλητή x είναι λογικού τύπου (Boolean). Η εντολή write της εντολής if (x) or (not(x)) then write(x); α. εκτελείται πάντα β. εκτελείται, μόνο όταν το x είναι true γ. δεν εκτελείται ποτέ δ. εκτελείται, μόνο όταν το x είναι false. (μονάδες 1) (Μονάδες 5) A3. Να γράψετε τους αριθμούς της Στήλης Α και δίπλα τα γράμματα της Στήλης Β που δίνουν τις σωστές αντιστοιχίσεις Στήλη Α Στήλη Β 1. writeln( ΕΠΑΛ ) α. Εντολή επιλογής 2. if x mod 2 =0 β. Εντολή αντικατάστασης then x:=2 * x; 3. x:=x +1; γ. Λογική έκφραση 4. read(x, y); δ. Εντολή εξόδου aver:=(x + y) / 2; writeln(aver); 5. x xor y ε. Διαδοχική εκτέλεση εντολών (Μονάδες 5) Α4. Να μεταφέρετε στο γραπτό σας και να συμπληρώσετε τον παρακάτω πίνακα αλήθειας των λογικών πράξεων and, or, xor για δύο λογικές προτάσεις Α και Β Α Β Α and B A or B A xor B true true true false false true false false (Μονάδες 10) Σελίδα 2 από 6
Α5. α. Δίνονται δύο τμήματα προγράμματος Α και Β. Να γράψετε ξανά το τμήμα Β συμπληρώνοντας κατάλληλα τα κενά, ώστε να εκτελεί την ίδια λειτουργία με το τμήμα Α. Τμήμα Α. Τμήμα Β. if x=10 case of then y:=x * 2; 10 : else :y:=x div 2; if x=20 :y:=x mod 2; then y:= x div 2; end; else y:= x mod 2; (Μονάδες 4) β. Δίνεται το παρακάτω τμήμα προγράμματος γραμμένο σε γλώσσα Pascal: if x>0 then y:=true; else y:=false; writeln( Το ότι ο, x, είναι θετικός είναι:, y); Να ξαναγράψετε το παραπάνω τμήμα με μια μόνο εντολή αντικατάστασης (μονάδες 4) και μια εντολή εξόδου (μονάδες 2), ώστε να επιτυγχάνεται το ίδιο αποτέλεσμα με το τμήμα προγράμματος που δίνεται. (Μονάδες 6) ΘΕΜΑ Β Δίνεται το παρακάτω τμήμα προγράμματος γραμμένο σε γλώσσα προγραμματισμού Pascal: readln(x); if x mod 2 = 0 then begin y:= x div 2; if y < = 10 then y:= y + 2 * x; end; else y:= x * x; writeln(y); Β1. Τι εμφανίζει όταν εκτελεστεί το παραπάνω τμήμα όταν στην μεταβλητή x δοθούν ως είσοδο οι παρακάτω τιμές 1. x=5 (μονάδες 4) 2. x=8 (μονάδες 4) Σελίδα 3 από 6
3. x=38 (μονάδες 4) (Μονάδες 12) Β2. Να ξαναγράψετε το παραπάνω τμήμα με αποκλειστική χρήση μη εμφωλευμένων εντολών απλής επιλογής (if then ). ΘΕΜΑ Γ (Μονάδες 8) Σε ΚΤΕΟ της χώρας το 2016 προσέρχονται οχήματα για έλεγχο. Τα οχήματα είναι τριών κατηγοριών φορτηγό, επιβατηγό, δίκυκλο και πληρώνουν 60, 40 και 20 αντίστοιχα. Ένα όχημα χαρακτηρίζεται ως προς την προσέλευση του «ΕΜΠΡΟΘΕΣΜΟ» ή «ΕΚΠΡΟΘΕΣΜΟ». Τα οχήματα που προσέρχονται εκπρόθεσμα επιβαρύνονται με πρόστιμο 15,80. Να αναπτύξετε πρόγραμμα Pascal το οποίο: Γ1. Περιέχει τμήμα δηλώσεων μεταβλητών. Γ2. Για ένα τυχαίο όχημα που προσέρχεται στο ΚΤΕΟ για έλεγχο: (Μονάδες 2) α. Διαβάζει το ονοματεπώνυμο του ιδιοκτήτη, έναν από τους παρακάτω χαρακτήρες ( Φ ή Ε ή Δ ) για κατηγορία του οχήματος και που αφορούν φορτηγό, επιβατηγό, δίκυκλο αντίστοιχα. Επίσης διαβάζει το τύπο προσέλευσης του οχήματος. (Μονάδες 4) β. Υπολογίζει με βάση την κατηγορία του και την εμπρόθεσμη ή εκπρόθεσμη προσέλευση του, το ποσό πληρωμής. (Μονάδες 10) Γ3. Εμφανίζει τα αποτελέσματα του προγράμματος ως εξής: ΟΝΟΜΑΤΕΠΩΝΥΜΟ ΙΔΙΟΚΤΗΤΗ: ΚΑΤΗΓΟΡΙΑ ΟΧΗΜΑΤΟΣ: ΠΟΣΟ ΠΛΗΡΩΜΗΣ: ΥΠΑΡΞΗ ΠΡΟΣΤΙΜΟΥ: Όπου σε κάθε κενό διάστημα θα εμφανίζεται η τιμή της αντίστοιχης μεταβλητής αποτέλεσμα. Υποδείξεις για το θέμα Γ: Σελίδα 4 από 6 (Μονάδες 4) 1. Σαν αποτέλεσμα στην ύπαρξη προστίμου να εμφανίζεται η λέξη «ΝΑΙ» ή λέξη «ΟΧΙ» ανάλογα. 2. Για κάθε είσοδο δεδομένων να υπάρχει κατάλληλο μήνυμα. 3. Να θεωρήσετε όλα τα δεδομένα εισόδου έγκυρα.
ΘΕΜΑ Δ Ο λογαριασμός του νερού είναι τριμηνιαίος και υπολογίζεται με βάση την κατανάλωση του νερού. Η αξία του νερού υπολογίζεται από τον παρακάτω πίνακα: Κατανάλωση σε κυβικά μέτρα Χρέωση ανά κυβικό σε ευρώ 0-15 0.34 16-60 0.52 61-81 1,51 82-105 2.11 > 105 2.64 Στο ποσό που προκύπτει από την αξία του νερού, το πάγιο 1.47, την αποχέτευση 40% επί της αξίας του νερού, τις άλλες επιβαρύνσεις 1% επί της αξίας του νερού, υπολογίζεται ο ΦΠΑ με συντελεστή 13%. Το τελικό ποσό πληρωμής προκύπτει από την άθροιση της αξίας του νερού, το πάγιο, την αποχέτευση, τις άλλες επιβαρύνσεις και το ΦΠΑ. Να γραφεί πρόγραμμα σε γλώσσα Pascal το οποίο : Δ1. περιέχει τμήμα δηλώσεων μεταβλητών. Δ2. Διαβάζει το ονοματεπώνυμο του καταναλωτή. Δ3. Διαβάζει την τριμηνιαία κατανάλωση του νερού σε κυβικά μέτρα. (Μονάδες 2) Δ4. Υπολογίζει: 1. Την αξία του νερού που καταναλώθηκε σύμφωνα με την παραπάνω τιμολογιακή πολιτική. (Μονάδες 5) 2. Να υπολογίζει το ΦΠΑ. 3. Να υπολογίζει το τελικό ποσό πληρωμής. (Μονάδες 3) (Μονάδες 2) Δ5. Εμφανίζει σε ξεχωριστές γραμμές: 1. Το ονοματεπώνυμο του καταναλωτή Σελίδα 5 από 6
2. Την αξία του νερού 3. Την αποχέτευση, τις άλλες επιβαρύνσεις, και το ΦΠΑ 4. Το τελικό ποσό πληρωμής. (Μονάδες 3) Υποδείξεις για το ΘΕΜΑ Δ (α) Θεωρούμε ότι όλα τα δεδομένα που δίνονται είναι έγκυρα. (β) Δεν χρειάζεται να υπάρχουν τα κατάλληλα μηνύματα στις εντολές εισόδου και εξόδου. (γ) Ο υπολογισμός της αξίας του νερού στο ερώτημα Δ4.1 να γίνεται κλιμακωτά. ΚΑΛΗ ΕΠΙΤΥΧΙΑ! Σελίδα 6 από 6