Στο πλαίσιο ενός τοπικού σχολικού πρωταθλήματος βόλεϊ συμμετέχουν 5
σχολεία, αριθμημένα από το 1 έως το 5. Κάθε σχολείο παίζει μία φορά με όλα
τα υπόλοιπα. Άρα θα πραγματοποιηθούν συνολικά 10 αγώνες. Νικητής ενός
αγώνα είναι το σχολείο που έχει κερδίσει 3 σετ. Ο νικητής παίρνει 2 βαθμούς
και ο ηττημένος 1 βαθμό.
Κάθε αγώνας προσδιορίζεται από τα σχολεία που παίζουν μεταξύ τους και το
αποτέλεσμα του αγώνα σε σετ. Για παράδειγμα, η σειρά των στοιχείων: 4, 5, 1, 3
σημαίνει ότι το σχολείο 4 έπαιξε με το σχολείο 5 και έχασε τον αγώνα με 1 σετ
υπέρ και 3 κατά. Αυτό αντίστοιχα σημαίνει ότι το σχολείο 5 κέρδισε τον αγώνα με
το σχολείο 4 με 3 σετ υπέρ και 1 σετ κατά.
Τα δεδομένα των αγώνων αποθηκεύονται σε έναν δισδιάστατο πίνακα Α[5,3],
όπου κάθε γραμμή αντιστοιχεί σε ένα σχολείο. Η τελική μορφή του πίνακα Α θα
περιέχει για κάθε σχολείο, στην πρώτη (1η
) στήλη τη βαθμολογία του (το
άθροισμα των βαθμών του), στη δεύτερη (2η
) το άθροισμα των σετ υπέρ και
στην τρίτη (3η
) το άθροισμα των σετ κατά, από όλους τους αγώνες.
Να κατασκευάσετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο:
Γ1. α) Να περιλαμβάνει κατάλληλο τμήμα δηλώσεων. (μονάδες 2)
β) Να διαβάζει τα ονόματα των 5 σχολείων και να τα καταχωρίζει στον
πίνακα ΟΝ [5]. Η σειρά των σχολείων καθορίζει την αρίθμησή τους (1
έως 5). (μονάδες 2)
γ) Να αρχικοποιεί τον πίνακα Α[5,3]. (μονάδες 2)
Μονάδες 6
Γ2. Να διαβάζει για κάθε αγώνα τη σειρά των 4 στοιχείων που τον
προσδιορίζουν και να ενημερώνει τον πίνακα Α και για τα δύο σχολεία
όπως περιγράφεται παραπάνω.
Μονάδες 6
Γ3. Να κατατάσσει τα σχολεία σε φθίνουσα σειρά ανάλογα με τη βαθμολογία
τους και σε περίπτωση ισοβαθμίας να προηγείται το σχολείο με τα
περισσότερα σετ υπέρ.
Μονάδες 6
Γ4. Να εμφανίζει τα ονόματα των σχολείων, τη βαθμολογία τους, το
άθροισμα των σετ υπέρ και το άθροισμα των σετ κατά, με βάση τη σειρά
κατάταξής τους.
Μονάδες 2
Σημείωση: Θεωρείστε ότι δεν υπάρχει περίπτωση δύο σχολεία να έχουν και την
ίδια βαθμολογία και τον ίδιο αριθμό σετ υπέρ.
ΠΡΟΓΡΑΜΜΑ ΒΟΛΕΙ
ΜΕΤΑΒΛΗΤΕΣ
ΑΡΧΗ
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5
ΔΙΑΒΑΣΕ ΟΝ[Ι]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5
ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 3
Α[Ι,J]<-0
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
!Γ2
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 10
ΔΙΑΒΑΣΕ ΣΧ1,ΣΧ2,ΥΠΕΡ1,ΥΠΕΡ2
ΑΝ ΥΠΕΡ1>ΥΠΕΡ2 ΤΟΤΕ
Α[ΣΧ1,1]<-Α[ΣΧ1,1]+2
Α[ΣΧ2,1]<-Α[ΣΧ2,1]+1
ΑΛΛΙΩΣ
Α[ΣΧ1,1]<-Α[ΣΧ1,1]+1
Α[ΣΧ2,1]<-Α[ΣΧ2,1]+2
ΤΕΛΟΣ_ΑΝ
Α[ΣΧ1,2]<-Α[ΣΧ1,2]+ΥΠΕΡ1
Α[ΣΧ2,2]<-Α[ΣΧ2,2]+ΥΠΕΡ2
Α[ΣΧ1,3]<-Α[ΣΧ1,3]+ΥΠΕΡ2
Α[ΣΧ2,3]<-Α[ΣΧ2,3]+ΥΠΕΡ1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
!Γ3
ΓΙΑ Ι ΑΠΟ 2 ΜΕΧΡΙ 5
ΓΙΑ ΑΠΟ 5 ΜΕΧΡΙ I ΜΕ_ΒΗΜΑ –1
ΑΝ (Α[J–1,1]<Α[J,1]) Η (Α[J–1,1]=Α[J,1] ΚΑΙ Α[J–1,2]<Α[J,2]) ΤΟΤΕ
ΓΙΑ Κ ΑΠΟ 1 ΜΕΧΡΙ 3
Κ1<-Α[J–1,Κ]
Α[J–1,Κ]<-Α[J,Κ]
Α[J,Κ]<-Κ1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
Κ2<-ΟΝ[J–1]
ΟΝ[J–1]<-ΟΝ[J]
ΟΝ[J]<-Κ2
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
!Γ4
ΓΙΑ Ι ΑΠΟ 1 ΜΕΧΡΙ 5
ΓΡΑΨΕ ΟΝ[Ι]
ΓΙΑ J ΑΠΟ 1 ΜΕΧΡΙ 3
ΓΡΑΨΕ Α[Ι,J]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ