e-ΜΑΘΗΜΑΤΑ |
Λύσεις ασκήσεων από θέματα Πανελλαδικών εξετάσεων |
ΠΡΟΓΡΑΜΜΑ ιππικό_τρίαθλο !Ε2006-Θ4 !Στους προκριματικούς αγώνες ιππικού τριάθλου συμμετέχουν 16 !αθλητές. ! Τα αγωνίσματα είναι: ιππική δεξιοτεχνία, υπερπήδηση εμποδίων !και ελεύθερη ιππασία. Ο κάθε αθλητής βαθμολογείται ξεχωριστά !σε κάθε ένα από τα τρία αγωνίσματα. ! !Να σχεδιάσετε αλγόριθμο ο οποίος: !α) καταχωρίζει σε πίνακα τις ονομασίες των τριών αγωνισμάτων, ! όπως αυτές δίνονται παραπάνω. !β) διαβάζει για κάθε αθλητή όνομα, επίθετο, όνομα αλόγου με το ! οποίο αγωνίζεται και τους βαθμούς του σε κάθε αγώνισμα και ! θα καταχωρίζει τα στοιχεία σε πίνακες. !γ) διαβάζει το όνομα και το επίθετο ενός αθλητή και θα ! εμφανίζει το όνομα του αλόγου με το οποίο αγωνίστηκε ! και τη συνολική του βαθμολογία στα τρία αγωνίσματα. ! Αν δεν υπάρχει ο αθλητής, θα εμφανίζει κατάλληλα ! διαμορφωμένο μήνυμα. !δ) εμφανίζει την ονομασία του αγωνίσματος (ή των αγωνισμάτων) ! με το μεγαλύτερο «άνοιγμα βαθμολογίας». ! Ως «άνοιγμα βαθμολογίας» να θεωρήσετε τη διαφορά ανάμεσα ! στην καλύτερη και στη χειρότερη βαθμολογία του αγωνίσματος. ΣΤΑΘΕΡΕΣ Ν = 16 ΜΕΤΑΒΛΗΤΕΣ ΧΑΡΑΚΤΗΡΕΣ: ονομασία_αγωνισμάτος[3] ΧΑΡΑΚΤΗΡΕΣ: όνομα[Ν], επίθετο[Ν], άλογο[Ν], ΟΝ, ΕΠ ΠΡΑΓΜΑΤΙΚΕΣ: βαθμολογία[Ν, 3] ΑΚΕΡΑΙΕΣ: i, j ΛΟΓΙΚΕΣ: done ΠΡΑΓΜΑΤΙΚΕΣ: μεγαλύτερο_άνοιγμα, max[3], min[3] ΑΡΧΗ !α) καταχωρίζει σε πίνακα τις ονομασίες των τριών αγωνισμάτων, ! όπως αυτές δίνονται παραπάνω. ονομασία_αγωνισμάτος[1] <- 'ιππική δεξιοτεχνία' ονομασία_αγωνισμάτος[2] <- 'υπερπήδηση εμποδίων' ονομασία_αγωνισμάτος[3] <- 'ελεύθερη ιππασία' !β) διαβάζει για κάθε αθλητή όνομα, επίθετο, όνομα αλόγου με το ! οποίο αγωνίζεται και τους βαθμούς του σε κάθε αγώνισμα και ! θα καταχωρίζει τα στοιχεία σε πίνακες. ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν ΓΡΑΨΕ 'Δώσε όνομα ', i, 'ου αθλητή : ' ΔΙΑΒΑΣΕ όνομα[i] ΓΡΑΨΕ 'Δώσε επίθετο ', i, 'ου αθλητή : ' ΔΙΑΒΑΣΕ επίθετο[i] ΓΡΑΨΕ 'Δώσε όνομα ', i, 'ου αλόγου : ' ΔΙΑΒΑΣΕ άλογο[i] ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 3 ΓΡΑΨΕ 'Δώσε βαθμολογία στο ', j, 'ο αγώνισμα (', ονομασία_αγωνισμάτος[j], '): ' ΔΙΑΒΑΣΕ βαθμολογία[i, j] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ !γ) διαβάζει το όνομα και το επίθετο ενός αθλητή και θα ! εμφανίζει το όνομα του αλόγου με το οποίο αγωνίστηκε ! και τη συνολική του βαθμολογία στα τρία αγωνίσματα. ! Αν δεν υπάρχει ο αθλητής, θα εμφανίζει κατάλληλα ! διαμορφωμένο μήνυμα. ΓΡΑΨΕ 'Δώσε όνομα αθλητή για αναζήτηση : ' ΔΙΑΒΑΣΕ ΟΝ ΓΡΑΨΕ 'Δώσε επίθετο αθλητή για αναζήτηση : ' ΔΙΑΒΑΣΕ ΕΠ done <- ΨΕΥΔΗΣ i <- 1 ΟΣΟ (done = ΨΕΥΔΗΣ) ΚΑΙ (i <= Ν) ΕΠΑΝΑΛΑΒΕ ΑΝ όνομα[i] = ΟΝ ΚΑΙ επίθετο[i] = ΕΠ ΤΟΤΕ done <- ΑΛΗΘΗΣ ΓΡΑΨΕ 'Όνομα αλόγου : ', άλογο[i] ΓΡΑΨΕ 'Συνολική βαθμολογία :', βαθμολογία[i, 1] + βαθμολογία[i, 2] + βαθμολογία[i, 3] ΑΛΛΙΩΣ i <- i + 1 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΑΝ (done = ΨΕΥΔΗΣ) ΤΟΤΕ ΓΡΑΨΕ 'Δεν υπάρχει ο αθλητής : ', ΕΠ, ' ', ΟΝ ΤΕΛΟΣ_ΑΝ !δ) εμφανίζει την ονομασία του αγωνίσματος (ή των αγωνισμάτων) ! με το μεγαλύτερο «άνοιγμα βαθμολογίας». ! Ως «άνοιγμα βαθμολογίας» να θεωρήσετε τη διαφορά ανάμεσα ! στην καλύτερη και στη χειρότερη βαθμολογία του αγωνίσματος. ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 3 max[j] <- βαθμολογία[1, j] min[j] <- βαθμολογία[1, j] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ Ν ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 3 ΑΝ max[j] < βαθμολογία[i, j] ΤΟΤΕ max[j] <- βαθμολογία[i, j] ΤΕΛΟΣ_ΑΝ ΑΝ min[j] > βαθμολογία[i, j] ΤΟΤΕ min[j] <- βαθμολογία[i, j] ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ μεγαλύτερο_άνοιγμα <- max[1] - min[1] ΓΙΑ j ΑΠΟ 2 ΜΕΧΡΙ 3 ΑΝ μεγαλύτερο_άνοιγμα < (max[j] - min[j]) ΤΟΤΕ μεγαλύτερο_άνοιγμα <- max[j] - min[j] ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 3 ΑΝ max[j] - min[j] = μεγαλύτερο_άνοιγμα ΤΟΤΕ ΓΡΑΨΕ 'Mεγαλύτερο άνοιγμα το άθλημα :', ονομασία_αγωνισμάτος[j] ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
|