Professional Documents
Culture Documents
ΤΑΞΗ Γ ΓΕΛ
ΜΑΘΗΜΑ ΑΕΠΠ
ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ -
ΣΧΕΔΙΑΣΜΟΣ ΠΙΝΑΚΩΝ
Σε περίπλοκες ασκήσεις που ενέχουν χρήση δισδιάστατων πινάκων στη λύση τους είναι απαραίτητο να γίνεται
σχήμα.
1. Ο δισδιάστατος πίνακας αφού σχεδιαστεί πληρούται (γεμίζεται) με εικονικά στοιχεία, τα οποία σέβονται τις
προϋποθέσεις της εκφώνησης. Ομοίως οι παράλληλοι πίνακες (των οποίων τα δεδομένα σχετίζονται άμεσα με
τον κύριο δισδιάστατο πίνακα) πληρούνται με εικονικά δεδομένα, όχι άσχετα αλλά βασισμένα στα αντίστοιχα
δεδομένα του κύριου πίνακα.
2. Ο δισδιάστατος πίνακας σχεδιάζεται αφήνοντας χώρο στο τετράδιο ώστε να σχεδιαστούν στο μέλλον
επικουρικοί (βοηθητικοί) παράλληλοι πίνακες (π.χ. δεξιά ή κάτω από τον κύριο πίνακα)
Ανατέθηκε σε μαθητές της Γ’ Τάξης Λυκείου να αναπτύξουν πληροφοριακό σύστημα για την υποστήριξη των
μαθητικών αγώνων στίβου της περιφέρειάς τους. Οι μαθητές του σχολείου μας ανέλαβαν το άθλημα «άλμα εις
μήκος» (αγωνίζονται ενιαία αγόρια & κορίτσια) και κλήθηκαν να υλοποιήσουν το σχετικό συστατικό μέρος
(component) του ολοκληρωμένου πληροφοριακού συστήματος βασισμένοι στις επόμενες αλγοριθμικές
προδιαγραφές: Ο αλγόριθμος
a. να διαβάζει όνομα και φύλο για 20 αθλητές με έλεγχο ορθής εισαγωγής φύλου (επιτρεπτές τιμές Α για
αγόρια και Κ για κορίτσια). Να διαβάζει τις επιδόσεις τους σε 6 προσπάθειες για άλμα στο αγώνισμα «άλμα
εις μήκος» με έλεγχο εγκυρότητας επιδόσεων ώστε αυτές να κινούνται μεταξύ 0 και 10 μέτρων. Ο όρος
«αθλητής» αναφέρεται ενιαία σε αγόρια και κορίτσια. Θεωρούμε ότι κάθε αθλητής έχει σε ένα
τουλάχιστο άλμα επίδοση μεγαλύτερη από 0 μέτρα.
(ανάγνωση κατά γραμές ή στήλες)
b. να υπολογίζει το άθροισμα των επιδόσεων ανά αθλητή και το άθροισμα των επιδόσεων ανά προσπάθεια
άλματος,
(άθροισμα κατά γραμμές και κατά στήλες)
e. να εμφανίζει τον αύξοντα αριθμό κάθε προσπάθειας (1 έως και 6) και την μέση επίδοση που πέτυχαν οι
αθλητές σε αυτή
Ανάπτυξη Εφαρμογών σε προγραμματιστικό περιβάλλον | 2 x 2 Π Ι Ν Α Κ Ε Σ | Σ ε λ ί δ α |2
(μέσος όρος κατά στήλες)
ΜΕΣΗ_ΕΠ_
ΑΘΡ_ΑΘΛ
1 2 3 4 5 6
ΑΘΛ
ΟΝ
Φ
1 Α Παναγιώτου
2 Κ Χαρίτου
ΕΠ 3 Α Βασιλειάδης
19 Α Καραϊσκάκης
20 Κ Γεωργιάδη
ΑΘΡ_ΠΡΟΣΠ
ΜΕΣΗ_ΕΠ_ΠΡ
ΟΣΠ
Ανάπτυξη Εφαρμογών σε προγραμματιστικό περιβάλλον | 2 x 2 Π Ι Ν Α Κ Ε Σ | Σ ε λ ί δ α |3
ΠΡΟΓΡΑΜΜΑ ΑΛΜΑ_ΕΙΣ_ΜΗΚΟΣ
ΣΤΑΘΕΡΕΣ ! οι σταθερές θα μπορούσαν να παραλειφθούν.
!Υπάρχουν μόνο για εύκολη αλλαγή διαστάσεων πινάκων προκειμένου να
επιταχυνθεί η εκτέλεση του προγράμματος
d1=20
d2=6
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: i, j, πλ_άνω_7
ΠΡΑΓΜΑΤΙΚΕΣ: ΕΠ[d1,d2], ΑΘΡ_ΑΘΛ[d1], ΑΘΡ_ΠΡΟΣΠ[d2], ΜΕΣΗ_ΕΠ_ΑΘΛ[d1],
ΜΕΣΗ_ΕΠ_ΠΡΟΣΠ[d2], ΣΥΝ_ΑΘΡ, ΣΥΝ_ΜΕΣΗ_ΕΠ
ΧΑΡΑΚΤΗΡΕΣ: ΟΝ[d1], Φ[d1]
ΑΡΧΗ
!ερώτημα (a) ανάγνωση κατά γραμμές
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ d1
ΓΡΑΨΕ 'Πληκτρολογήστε το όνομα του ', i, ' ου αθλητή'
ΔΙΑΒΑΣΕ ΟΝ[i]
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Πληκτρολογήστε το φύλο του ', i, ' ου αθλητή'
ΔΙΑΒΑΣΕ Φ[i]
ΜΕΧΡΙΣ_ΟΤΟΥ Φ[i]='Α' Ή Φ[i]='Κ'
ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ d2
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Πληκτρολογήστε την επίδοση του αθλητή', ΟΝ[i], ' στο ', j, 'ο άλμα'
ΔΙΑΒΑΣΕ ΕΠ[i,j]
ΜΕΧΡΙΣ_ΟΤΟΥ ΕΠ[i,j] >= 0 ΚΑΙ ΕΠ[i,j] <= 10
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
!ΠΡΟΣΟΧΗ: ΜΟΝΟ στην περίπτωση ΤΕΤΡΑΓΩΝΙΚΟΥ ΠΙΝΑΚΑ ισχύει και ο παρακάτω κώδικας
!για ανάγνωση ή γενικότερα σάρωση / επεξεργασία κατά στήλες
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ d1
ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ d2
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ 'Πληκτρολογήστε την επίδοση του αθλητή', ΟΝ[i], ' στο ', j, 'ο άλμα'
ΔΙΑΒΑΣΕ ΕΠ[j,i]
ΜΕΧΡΙΣ_ΟΤΟΥ ΕΠ[j,i] >= 0 ΚΑΙ ΕΠ[j,i] <= 10
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
g. να εμφανίζει πόσα άλματα κάθε αθλητή ήταν άκυρα (άκυρο άλμα σημαίνει επίδοση 0 (μηδέν))
(πλήθος ανά γραμμή)
h. να εμφανίζει πόσα άλματα αθλητών ήταν μικρότερα από 5 μέτρα σε κάθε προσπάθεια,
(πλήθος ανά στήλη)
i. να εμφανίζει το όνομα του αθλητή και τον χαρακτηρισμό ΕΞΑΙΡΕΤΙΚΟΣ αν όλα τα άλματά του ήταν πάνω
από 7.80 ή ένα τουλάχιστο άλμα του ξεπέρασε τα 8.10,
(επεξεργασία κατά γραμμές – είσοδος σε τμήμα κώδικα πάντα ή μία φορά τουλάχιστο)
j. να αποθηκεύει σε πίνακα (ή πίνακες) και να εμφανίζει την ελάχιστη και μέγιστη επίδοση κάθε αθλητή
(εξαιρώντας τα άκυρα άλματα), καθώς και σε ποια προσπάθεια επετεύχθη η επίδοση (μόνο την 1η
εμφάνιση ελαχίστης / μεγίστης επίδοσης, στην περίπτωση που ο αθλητής πέτυχε περισσότερες φορές την
ελάχιστη / μέγιστή του επίδοση)
a. το υποερώτημα j να απαντηθεί με δεδομένο ότι οι επιδόσεις κινούνται μεταξύ 0 και 10 (βάση του έλεγχου εγκυρότητας
που έχει προηγηθεί)
b. το υποερώτημα j να απαντηθεί θεωρώντας ότι δεν υπάρχει άνω και κάτω όριο στις επιδόσεις (υποθέτοτοντας δηλαδή ότι
υπάρχουν απείρως μεγάλα άλματα και απείρως μικρά (αρνητικά) άλματα)
(ελάχιστο & μέγιστο ανά γραμμή)
Ανάπτυξη Εφαρμογών σε προγραμματιστικό περιβάλλον | 2 x 2 Π Ι Ν Α Κ Ε Σ | Σ ε λ ί δ α |6
k. να αναζητά την μέγιστη επίδοση αθλήτριας (κοριτσιού) στο 3ο άλμα (προσπάθεια) και να εμφανίζει το
όνομά της (ή τα ονόματα). Να καλυφθεί και η περίπτωση που δεν υπάρχει αθλήτρια (με σχετικό μήνυμα).
Θεωρήστε ότι υπάρχει έγκυρο άλμα στην 3η προσπάθεια.
(μέγιστο σε συγκεκριμένη στήλη)
l. να αναζητά την ελάχιστη διαφορά μεταξύ επιδόσεων γειτονικών αλμάτων ανά αθλητή και να εμφανίζει την
ελάχιστη αυτή διαφορά και τις γειτονικές προσπάθειες (π.χ. 2η με 3η ) στις οποίες εντοπίστηκε η ελάχιστη
διαφορά. Αν υπάρχουν πολλές εμφανίσεις της ελάχιστης διαφοράς να εμφανίζεται το όνομα αθλητή, η
ελάχιστη διαφορά και το ζεύγος προσπαθειών όπου αυτή διαπιστώθηκε, μόνο για την εσχάτως (τελευταία)
εντοπισμένη ελάχιστη διαφορά ανά αθλητή.
(επεξεργασία & αναζήτηση ανά γραμμή)
n. να στρογγυλοποιεί τις ελάχιστες επιδόσεις των αθλητών αγοριών (όχι των κοριτσιών) σε ακέραιο αριθμό
(π.χ. η επίδοση 3,6 γίνεται 4) και να εμφανίζει την πλέον πολυσύχναστη ελάχιστη επίδοση αγοριών. Να
καλυφθεί και η περίπτωση που δεν υπάρχει αθλητής αγόρι (με σχετικό μήνυμα).
(πίνακας συχνοτήτων)
Ανάπτυξη Εφαρμογών σε προγραμματιστικό περιβάλλον | 2 x 2 Π Ι Ν Α Κ Ε Σ | Σ ε λ ί δ α |7
o. να εντοπίζει και να εμφανίζει άπαξ (μία φορά) τα ονόματα των αθλητών που έχουν δύο τουλάχιστο
επιδόσεις πάνω από τα 8.30 μέτρα.
(επεξεργασία & αναζήτηση ανά γραμμή)
p. να εμφανίζει τα ονόματα των 8 καλύτερων αθλητών, με βάση την βέλτιστη επίδοσή τους, σε φθίνουσα
διάταξη. Σε περίπτωση ίσης βέλτιστης επίδοσης κατατάσσεται πρωτύτερα ο αλφαβητικά πρώτος αθλητής.
(ταξινόμηση με βάση πίνακα στήλη και πολλαπλές αντιμεταθέσεις σε παράλληλους πίνακες)
q. ποια ήταν η επίδοση του 7ου στην κατάταξη στο 4ο του άλμα;
r. να εντοπίζει την 2η καλύτερη επίδοση κάθε αθλητή και να εμφανίζει το όνομα του αθλητή και την
προσπάθεια στην οποία πέτυχε την επίδοση.
(επεξεργασία & αναζήτηση ανά γραμμή)
s. να δημιουργεί πίνακα που να περιέχει μόνο τις διαφορετικές μέσες επιδόσεις των αθλητριών - κοριτσιών
(να απορρίπτει δηλαδή τις μέσες επιδόσεις που εμφανίζονται 2 ή περισσότερες φορές). Θεωρήστε ότι
υπάρχουν αθλήτριες.
(επεξεργασία σε πίνακα στήλη)
t. να υπολογίζει και να εμφανίζει την μέση επίδοση ανά προσπάθεια (εξαιρώντας τα άκυρα άλματα)
λαμβάνοντας υπόψη τα άλματα μόνο των αγοριών αθλητών που δεν πλασαρίστηκαν στην οχτάδα (βλέπε
ερώτημα n) για την 2η και 5η προσπάθεια.
(επεξεργασία ανά στήλες)