31114 2.2 - εντοπισμός λάθους με πίνακα, μαύρο κουτί;
2.2 Σε κάποιο πρόγραμμα χρειάζεται η εύρεση ποιας ακέραιας μεταβλητής από τις C1, C2, C3 περιέχει τον μεγαλύτερο αριθμό. Σε περίπτωση ισοβαθμίας στις μεγαλύτερες τιμές, το πρόγραμμα θα πρέπει να εμφανίζει την πρώτη από τις παραπάνω μεταβλητές (δηλ. η C1, προηγείται της C2 και η C2 της C3). Κάποιος έλυσε το παραπάνω πρόβλημα με το ακόλουθο σύνολο εντολών:
1 ΑΝ C1 > C2 ΚΑΙ C1 > C3 ΤΟΤΕ
2 ΓΡΑΨΕ 'Η C1 ΕΙΝΑΙ ΜΕΓΑΛΥΤΕΡΗ'
3 ΑΛΛΙΩΣ_ΑΝ C2 > C1 ΚΑΙ C2 > C3 ΤΟΤΕ
4 ΓΡΑΨΕ 'Η C2 ΕΙΝΑΙ ΜΕΓΑΛΥΤΕΡΗ'
5 ΑΛΛΙΩΣ
6 ΓΡΑΨΕ 'Η C3 ΕΙΝΑΙ ΜΕΓΑΛΥΤΕΡΗ'
7 ΤΕΛΟΣ_ΑΝ
1. Να συμπληρώσετε την στήλη ΟΘΟΝΗ στον παρακάτω πίνακα με τις τιμές που θα εμφανίσει το πρόγραμμα και να τις συγκρίνετε με αυτές που θα περιμένατε να εμφανιστούν.
Περίπτωση
|
C1
|
C2
|
C3
|
ΟΘΟΝΗ
|
1
|
6
|
12
|
18
|
|
2
|
8
|
4
|
4
|
|
3
|
8
|
8
|
4
|
|
Μονάδες 5
2. Να χαρακτηρίσετε το είδος του λάθους που εμφανίζει το τμήμα προγράμματος και να γράψετε τμήμα προγράμματος σε ΓΛΩΣΣΑ που το διορθώνει και εμφανίζει σωστά ποια μεταβλητή από τις C1, C2, C3 περιέχει τον μεγαλύτερο ακέραιο.
Μονάδες 5