Μία οικολογική οργάνωση διαθέτει στοιχεία για το ποσοστό δασών για 50 διαφορετικές χώρες. Χρειάζεται να πάρει απόφαση για να διοργανώσει μία εκδήλωση διαμαρτυρίας στις 10 χώρες που έχουν το χαμηλότερο ποσοστό δασών. Να δοθεί αλγόριθμος που θα ταξινομεί τα ποσοστά δασών των χωρών με χρήση της μεθόδου της ευθείας ανταλλαγής και θα εκτυπώνει τις 10 χώρες στις οποίες θα διοργανωθούν οι εκδηλώσεις.
ΛΥΣΗ:
Αποτελεί απλή παραλλαγή της μεθόδου ταξινόμησης ευθείας ανταλλαγής, που περιγράφεται στην παράγραφο 3.7. Η διαφορά έγκειται στο ότι στον εξωτερικό βρόχο δεν πρέπει να γίνουν n-1 αλλά 10 επαναλήψεις, ώστε να απομονωθούν στην κορυφή του πίνακα οι 10 μικρότερες ζητούμενες τιμές.
Αλγόριθμος ΔΤ6_ΚΕΦ3 Για i από 1 μέχρι 50 Διάβασε όνομα[i] Διάβασε δάσος[i] Τέλος_επανάληψης Για i από 2 μέχρι 11 Για j από 50 μέχρι i με_βήμα -1 Αν δάσος[j-1] > δάσος[j] τότε αντιμετάθεσε δάσος[j-1], δάσος[j] αντιμετάθεσε όνομα[j-1], όνομα[j] Τέλος_αν Τέλος_επανάληψης Τέλος_επανάληψης Για i από 1 μέχρι 10 Γράψε όνομα[i] Τέλος_επανάληψης Τέλος ΔΤ6_ΚΕΦ3
Πρόγραμμα ΔΤ6_ΚΕΦ3 Μεταβλητές Ακέραιες: i, j Πραγματικές: δάσος[50], temp_δάσος Χαρακτήρες: όνομα[50], temp_όνομα Αρχή Για i από 1 μέχρι 50 Διάβασε όνομα[i] Διάβασε δάσος[i] Τέλος_επανάληψης Για i από 2 μέχρι 11 Για j από 50 μέχρι i με βήμα -1 Αν δάσος[j-1] > δάσος[j] τότε temp_δάσος <-- δάσος[j-1] δάσος[j-1] <--δάσος[j] δάσος[j] <-- temp_δάσος temp_όνομα <-- όνομα[j-1] όνομα[j-1] <--όνομα[j] όνομα[j] <-- temp_όνομα Τέλος_αν Τέλος_επανάληψης Τέλος_επανάληψης Για i από 1 μέχρι 10 Γράψε όνομα[i] Τέλος_επανάληψης Τέλος_προγράμματος
Πρόσφατα σχόλια