e-ΜΑΘΗΜΑΤΑ |
Λύσεις ασκήσεων Τράπεζας Θεμάτων |
ΠΡΟΓΡΑΜΜΑ Ταξινόμηση_Μαθητών_ΤΘ_26156
!ΘΕΜΑ 4
!Σε δύο πίνακες καταχωρούνται τα ονόματα και τους μέσους όρους 100 μαθητών
!της Γ Λυκείου. Να γραφτεί πρόγραμμα σε γλώσσα προγραμματισμού «ΓΛΩΣΣΑ» το οποίο:
!4.1 Να διαβάζει από το πληκτρολόγιο τα ονόματα και τους μέσους όρους
!των 100 μαθητών και να τα καταχωρεί αντίστοιχα στους πίνακες ΜΑΘΗΤΗΣ[100] και ΜΟ[100].
!Μονάδες 5
!4.2 Να ταξινομεί τους πίνακες ως προς το Μέσο Όρο τους κατά φθίνουσα σειρά.
! Μονάδες 7
!4.3 Να υπολογίζει και να τυπώνει το όνομα και το μέσο όρο του καλύτερου μαθητή.
!Στη περίπτωση που υπάρχει ισοβαθμία να τυπώνονται όλα τα ονόματα των ισοβαθμούντων.
!Θεωρήστε ότι υπάρχει τουλάχιστον ένας μαθητής με διαφορετικό μέσο όρο.
!Μονάδες 12
ΣΤΑΘΕΡΕΣ
Ν = 100
ΜΕΤΑΒΛΗΤΕΣ
ΧΑΡΑΚΤΗΡΕΣ: ΜΑΘΗΤΗΣ[Ν], tempO
ΠΡΑΓΜΑΤΙΚΕΣ: ΜΟ[Ν], temp
ΑΚΕΡΑΙΕΣ: i, j
ΑΡΧΗ
! 4.1 Εισαγωγή δεδομένων
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
ΓΡΑΨΕ 'Δώσε το όνομα του μαθητή ', i, ':'
ΔΙΑΒΑΣΕ ΜΑΘΗΤΗΣ[i]
ΓΡΑΨΕ 'Δώσε το μέσο όρο του μαθητή ', ΜΑΘΗΤΗΣ[i], ':'
ΔΙΑΒΑΣΕ ΜΟ[i]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
! 4.2 Ταξινόμηση κατά φθίνουσα σειρά βάσει του μέσου όρου
ΓΙΑ i ΑΠΟ 2 ΜΕΧΡΙ Ν
ΓΙΑ j ΑΠΟ Ν ΜΕΧΡΙ i ΜΕ ΒΗΜΑ -1
ΑΝ ΜΟ[j - 1] < ΜΟ[j] ΤΟΤΕ
! Ανταλλαγή στους μέσους όρους
temp <- ΜΟ[j]
ΜΟ[j] <- ΜΟ[j - 1]
ΜΟ[j - 1] <- temp
! Ανταλλαγή στα ονόματα
tempO <- ΜΑΘΗΤΗΣ[j]
ΜΑΘΗΤΗΣ[j] <- ΜΑΘΗΤΗΣ[j - 1]
ΜΑΘΗΤΗΣ[j - 1] <- tempO
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
! Εκτύπωση ταξινομημένων πινάκων
ΓΡΑΨΕ 'ΜΑΘΗΤΗΣ ΜΕΣΟΣ ΟΡΟΣ'
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
ΓΡΑΨΕ ΜΑΘΗΤΗΣ[i], ' ', ΜΟ[i]
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
! 4.3 Υπολογισμός καλύτερου μαθητή και εκτύπωση
ΓΡΑΨΕ 'Ο καλύτερος μέσος όρος είναι: ', ΜΟ[1]
i <- 1
ΟΣΟ i <= Ν ΚΑΙ ΜΟ[i] = ΜΟ[1] ΕΠΑΝΑΛΑΒΕ
ΓΡΑΨΕ ΜΑΘΗΤΗΣ[i]
i <- i + 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ