Σε έναν αγώνα
Φόρμουλα 1 συμμετέχουν 11 ομάδες με δύο διαφορετικά μονοθέσια η καθεμία. Να
γραφεί αλγόριθμος ο οποίος :
α. Να διαβάζει σε πίνακα Ομ[11]
τα ονόματα των ομάδων.
β. Να διαβάζει σε πίνακα
Θέση[11,2] την θέση που κατέλαβε το πρώτο και δεύτερο μονοθέσιο κάθε ομάδας
στην συνολική κατάταξη.
γ. Να εμφανίζει τα ονόματα των
ομάδων και δίπλα ένα από τα παρακάτω μηνύματα, ανάλογα με την καλύτερη θέση που
κατέλαβε ένα ή και τα δύο μονοθέσια της ομάδας. «Στο βάθρο των νικητών» αν
είναι στις τρεις πρώτες θέσεις, «Στην βαθμολογούμενη οκτάδα» αν είναι στις
πρώτες οκτώ θέσεις, «Εκτός βαθμών» αν είναι κάτω από την όγδοη θέση.
Θεωρούμε ότι η
καλύτερη περίπτωση υπερισχύει των υπολοίπων καθώς μόνο ένα μήνυμα μπορεί να
εμφανιστεί δίπλα από κάθε ομάδα.
Αλγόριθμος Φόρμουλα_1
Για i από 1 μέχρι 11
Διάβασε Ομ[i]
Για j από 1 μέχρι 2
Διάβασε Θέση[i, j]
Τέλος_επανάληψης
Τέλος_επανάληψης
Για i από 1 μέχρι 11
Εμφάνισε Ομ[i]
Αν Θέση[i, 1] ≥ 3 ή Θέση[i, 2] ≥ 3 τότε
Εμφάνισε 'Στο βάθρο των νικητών'
αλλιώς_αν Θέση[i, 1] ≥ 8 ή Θέση[i, 2] ≥ 8 τότε
Εμφάνισε 'Στην βαθμολογούμενη οκτάδα'
αλλιώς
Εμφάνισε 'Εκτός βάθρου'
Τέλος_αν
Τέλος_επανάληψης
Τέλος Φόρμουλα_1
ΑΣΚΗΣΗ (παραλλαγή, αρκετά δύσκολη)
Σε έναν αγώνα Φόρμουλα 1 συμμετέχουν 11 ομάδες με
δύο διαφορετικά μονοθέσια η καθεμία. Να γραφεί αλγόριθμος ο οποίος :
α.
Να διαβάζει σε πίνακα Ομ[11] τα ονόματα των ομάδων.
β.
Να διαβάζει σε πίνακα Χρ[11,2] τον χρόνο που έκανε το κάθε μονοθέσιο. Θεωρούμε
ότι όλα τερμάτισαν και μάλιστα σε διαφορετικούς χρόνους μεταξύ τους.
γ. Να υπολογίζει και να
καταχωρεί σε πίνακα Θέση[11,2] την θέση που κατέλαβε το πρώτο και δεύτερο
μονοθέσιο κάθε ομάδας στην συνολική κατάταξη.
δ.
Να εμφανίζει τα ονόματα των ομάδων και δίπλα ένα από τα παρακάτω μηνύματα,
ανάλογα με την καλύτερη θέση που κατέλαβε ένα ή και τα δύο μονοθέσια της
ομάδας. «Στο βάθρο των νικητών» αν είναι στις τρεις πρώτες θέσεις, «Στην
βαθμολογούμενη οκτάδα» αν είναι στις πρώτες οκτώ θέσεις, «Εκτός βαθμών» αν είναι
κάτω από την όγδοη θέση.
Θεωρούμε ότι η
καλύτερη περίπτωση υπερισχύει των υπολοίπων καθώς μόνο ένα μήνυμα μπορεί να
εμφανιστεί δίπλα από κάθε ομάδα.
Αλγόριθμος Φόρμουλα_1
Για i από 1 μέχρι 11
Διάβασε Ομ[i]
Για j από 1 μέχρι 2
Διάβασε Χρ[i, j]
Τέλος_επανάληψης
Τέλος_επανάληψης
κ ← 22
!Βάζω τη σειρά κατάταξης καθενός στον πίνακα Θέση, ξεκινώντας από τον μεγαλύτερο χρόνο.
max ← Χρ[1, 1]
i_max ← 1
j_max ← 1
Όσο κ ≥ 1 επανάλαβε
Για i από 1 μέχρι 11
Για j από 1 μέχρι 2
Αν Χρ[i, j] > max τότε
max ← Χρ[i, j]
i_max ← i
j_max ← j
Τέλος_αν
Τέλος_επανάληψης
Τέλος_επανάληψης
Θέση[i_max, j_max] ← κ
Χρ[i_max, j_max] ← 0
!Μηδενίζω τον χρόνο του για να μην ξαναμετρηθεί, αφού το μηδέν είναι εκτός εύρους τιμών
κ ← κ - 1
Τέλος_επανάληψης
Για i από 1 μέχρι 11
Εμφάνισε Ομ[i]
Αν Θέση[i, 1] ≥ 3 ή Θέση[i, 2] ≥ 3 τότε
Εμφάνισε 'Στο βάθρο των νικητών'
αλλιώς_αν Θέση[i, 1] ≥ 8 ή Θέση[i, 2] ≥ 8 τότε
Εμφάνισε 'Στην βαθμολογούμενη οκτάδα'
αλλιώς
Εμφάνισε 'Εκτός βαθμών'
Τέλος_αν
Τέλος_επανάληψης
Τέλος Φόρμουλα_1
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου