Γ ΓΕΛ 15 / 04 / 2018 Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΘΕΜΑ Α Α1. 1-ΛΑΘΟΣ 2- ΛΑΘΟΣ 3-ΣΩΣΤΟ 4- ΛΑΘΟΣ 5-ΣΩΣΤΟ Α2. α. Ο χωρισμός του προγράμματος σε μικρότερα αυτοτελή τμήματα επιτρέπει τη γρήγορη διόρθωση ενός συγκεκριμένου τμήματός του χωρίς οι αλλαγές αυτές να επηρεάσουν όλο το υπόλοιπο πρόγραμμα. Επίσης διευκολύνει οποιονδήποτε χρειαστεί να διαβάσει και να κατανοήσει τον τρόπο που λειτουργεί το πρόγραμμα. Όπως έχει πολλές φορές τονιστεί αυτό είναι πολύ σημαντικό χαρακτηριστικό του σωστού προγραμματισμού, αφού ένα μεγάλο πρόγραμμα στον κύκλο της ζωής του χρειάζεται να συντηρηθεί από διαφορετικούς προγραμματιστές. β. Για την αρχική σύνταξη των προγραμμάτων και τη διόρθωσή τους στη συνέχεια χρησιμοποιείται ένα ειδικό πρόγραμμα που ονομάζεται συντάκτης (editor). Ο συντάκτης είναι ουσιαστικά ένας μικρός επεξεργαστής κειμένου, με δυνατότητες όμως που διευκολύνουν τη γρήγορη γραφή των εντολών των προγραμμάτων. Α3. Η μεταβλητή count μετρά το πλήθος των εμφανίσεων του στοιχείου Χ μέσα στον πίνακα Π. Δηλαδή μετά από την εκτέλεση των εντολών αυτών, η τελική τιμή της μεταβλητής count περιέχει πόσες φορές το Χ εντοπίστηκε μέσα στον πίνακα Π. Η μεταβλητή pos εκφράζει τη θέση στην οποία εντοπίζεται το αναζητούμενο στοιχείο Χ κάθε φορά. Μέσω αυτής της μεταβλητής εμφανίζονται όλοι οι δείκτες των θέσεων του πίνακα Π που περιέχουν το στοιχείο Χ. Α4. i 1 ΌΣΟ i <=10 ΕΠΑΝΑΛΑΒΕ ΔΙΑΒΑΣΕ Κ Υ Κ Χ Κ DIV 2 Υ Υ + 0.5 ΓΡΑΨΕ Υ ΌΣΟ Υ <= 15 ΕΠΑΝΑΛΑΒΕ Χ Κ DIV 2 Υ Υ + 0.5 Σελίδα 1 από 5
ΓΡΑΨΕ Υ i i + 1 Α5. 1-ΛΑΘΟΣ 2-ΣΩΣΤΟ 3-ΣΩΣΤΟ 4-ΛΑΘΟΣ ΘΕΜΑ Β Β1. (1) 1 (2) 19 (3) J+1 (4) J+1 (5) J+1 Β2. ΑΝ Α < - 5 ΤΟΤΕ Γ Α_Τ ( Α ) * 2 ΓΡΑΨΕ Γ _ΑΝ Α < 0 ΤΟΤΕ Γ Α * 2 ΓΡΑΨΕ Α, Γ Γ Α * 2 Γ Γ ^ 2 ΘΕΜΑ Γ ΠΡΟΓΡΑΜΜΑ ΒΕΛΑΚΙΑ ΑΚΕΡΑΙΕΣ: Ι,ΒΚ3[20],ΚΥΚ1,ΚΥΚ2,ΠΕΡ1,ΠΕΡ2,ΒΑΘ1[10],ΒΑΘ2[10],ΣΥΝ_ΒΑΘ1, ΣΥΝ_ΒΑΘ2 ΧΑΡΑΚΤΗΡΕΣ: ΟΝ1, ΟΝ2 ΔΙΑΒΑΣΕ ΟΝ1, ΟΝ2 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 20 _ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ ΒΚ3 [ Ι ] ΜΕΧΡΙΣ_ΟΤΟΥ ΒΚ3 [ Ι ] >=1 ΚΑΙ ΒΚ3 [ Ι ] <=20 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10 ΔΙΑΒΑΣΕ ΚΥΚ1, ΠΕΡ1, ΚΥΚ2, ΠΕΡ2 ΑΝ ΚΥΚ1 = 1 ΤΟΤΕ!υπολογισμός βαθμολογίας για τον 1 ο παίκτη ΒΑΘ1 [ Ι ] 50 _ΑΝ ΚΥΚ1 = 2 ΤΟΤΕ ΒΑΘ1 [ Ι ] 25 _ΑΝ ΚΥΚ1 = 3 Ή ΚΥΚ1 = 5 ΤΟΤΕ ΒΑΘ1 [ Ι ] ΒΚ3 [ ΠΕΡ1 ] Σελίδα 2 από 5
_ΑΝ ΚΥΚ1 = 4 ΤΟΤΕ ΒΑΘ1 [ Ι ] 3 * ΒΚ3 [ ΠΕΡ1 ] ΒΑΘ1 [ Ι ] 2 * ΒΚ3 [ ΠΕΡ1 ] ΑΝ ΚΥΚ2 = 1 ΤΟΤΕ!υπολογισμός βαθμολογίας για τον 2 ο παίκτη ΒΑΘ2 [ Ι ] 50 _ΑΝ ΚΥΚ2 = 2 ΤΟΤΕ ΒΑΘ2 [ Ι ] 25 _ΑΝ ΚΥΚ2 = 3 Ή ΚΥΚ2 = 5 ΤΟΤΕ ΒΑΘ2 [ Ι ] ΒΚ3 [ ΠΕΡ2 ] _ΑΝ ΚΥΚ2 = 4 ΤΟΤΕ ΒΑΘ2 [ Ι ] 3 * ΒΚ3 [ ΠΕΡ2 ] ΒΑΘ2 [ Ι ] 2 * ΒΚ3 [ ΠΕΡ2 ] ΣΥΝ_ΒΑΘ1 ΣΥΝΟΛΟ ( ΒΑΘ1 ) ΣΥΝ_ΒΑΘ2 ΣΥΝΟΛΟ ( ΒΑΘ2 ) ΓΡΑΨΕ ΣΥΝ_ΒΑΘ1, ΣΥΝ_ΒΑΘ2 ΑΝ ΣΥΝ_ΒΑΘ1 > ΣΥΝ_ΒΑΘ2 ΤΟΤΕ ΓΡΑΨΕ Νικητής είναι ο, ΟΝ1 ΓΡΑΨΕ Νικητής είναι ο, ΟΝ2 ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΥΝΑΡΤΗΣΗ ΣΥΝΟΛΟ ( Π ) : ΑΚΕΡΑΙΑ ΑΚΕΡΑΙΕΣ: Π [ 10 ], Ι, ΑΘΡ ΑΘΡ 0 ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10 ΑΘΡ ΑΘΡ + Π [ Ι ] ΣΥΝΟΛΟ ΑΘΡ ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ ΘΕΜΑ Δ ΠΡΟΓΡΑΜΜΑ ΑΠΟΘΗΚΗ Σελίδα 3 από 5
ΑΚΕΡΑΙΕΣ: ΚΩΔ_ΤΕΜ[3000,2],Ι,J,ΕΠΙΛΟΓΗ, ΘΕΣΗ,ΕΙΣ_ΤΕΜ,ΕΞΑΓ_ΤΕΜ ΛΟΓΙΚΕΣ: DONE AΡΧΗ ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 3000 ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 2 ΔΙΑΒΑΣΕ ΚΩΔ_ΤΕΜ [ Ι, J ] _ΕΠΑΝΑΛΗΨΗΣ ΚΑΛΕΣΕ ΜΕΝΟΥ ( ΕΠΙΛΟΓΗ ) ΑΝ ΕΠΙΛΟΓΗ = 1 Ή ΕΠΙΛΟΓΗ = 2 ΤΟΤΕ ΔΙΑΒΑΣΕ ΚΩΔ Ι 1 DONE ΨΕΥΔΗΣ ΘΕΣΗ 0! μπορεί και να παραληφθεί ΌΣΟ Ι <= 3000 ΚΑΙ DONE = ΨΕΥΔΗΣ ΕΠΑΝΑΛΑΒΕ ΑΝ ΚΩΔ = ΚΩΔ_ΤΕΜ [ Ι, 1 ] ΤΟΤΕ DONE ΑΛΗΘΗΣ ΘΕΣΗ Ι Ι Ι + 1 ΑΝ DONE = ΑΛΗΘΗΣ ΤΟΤΕ ΑΝ ΕΠΙΛΟΓΗ = 1 ΤΟΤΕ ΔΙΑΒΑΣΕ ΕΙΣ_ΤΕΜ ΚΩΔ_ΤΕΜ [ ΘΕΣΗ, 2 ] ΚΩΔ_ΤΕΜ [ ΘΕΣΗ, 2 ] + ΕΙΣ_ΤΕΜ! η επιλογή είναι σίγουρα 2 ΓΡΑΨΕ ΚΩΔ_ΤΕΜ [ ΘΕΣΗ, 2 ] _ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ ΕΞΑΓ_ΤΕΜ ΜΕΧΡΙΣ_ΟΤΟΥ ΕΞΑΓ_ΤΕΜ <= ΚΩΔ_ΤΕΜ [ ΘΕΣΗ, 2 ] ΚΩΔ_ΤΕΜ [ ΘΕΣΗ, 2 ] ΚΩΔ_ΤΕΜ [ ΘΕΣΗ, 2 ] ΕΞΑΓ_ΤΕΜ ΜΕΧΡΙΣ_ΟΤΟΥ ΕΠΙΛΟΓΗ = 3 ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ΔΙΑΔΙΚΑΣΙΑ ΜΕΝΟΥ ( ΕΠΙΛ ) Σελίδα 4 από 5
ΑΚΕΡΑΙΕΣ: EΠΙΛ ΓΡΑΨΕ 1. ΕΙΣΑΓΩΓΗ ΤΕΜΑΧΙΩΝ ΓΡΑΨΕ 2. ΕΞΑΓΩΓΗ ΤΕΜΑΧΙΩΝ ΓΡΑΨΕ 3. ΤΕΡΜΑΤΙΣΜΟΣ ΓΡΑΨΕ ΔΩΣΤΕ ΤΗΝ ΕΠΙΛΟΓΗ ΣΑΣ: _ΕΠΑΝΑΛΗΨΗΣ ΔΙΑΒΑΣΕ ΕΠΙΛ ΜΕΧΡΙΣ_ΟΤΟΥ ΕΠΙΛ = 1 Ή ΕΠΙΛ = 2 Ή ΕΠΙΛ = 3 ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ Σελίδα 5 από 5