2.2.3.Ασκ3. Να αναπτυχθεί αλγόριθμος ο οποίος θα διαβάζει το μέσο όρο ενός μαθητή κατά την περασμένη σχολική χρονιά και θα εκτυπώνει το αντίστοιχο μήνυμα σύμφωνα με τα ακόλουθα: Αν ο βαθμός είναι μικρότερος από 9,5 ο μαθητής απορρίπτεται στο μάθημα, αν είναι μεγαλύτερος από 9,5 και μικρότερος από 13 τότε ο χαρακτηρισμός του μαθητή είναι "Σχεδόν καλά", αν είναι μεγαλύτερος του 13 έως 16 ο χαρακτηρισμός είναι "Καλά", αν είναι μικρότερος του 18 "Πολύ καλά", ενώ τέλος αν ο μέσος όρος είναι μεγαλύτερος του 18 ο χαρακτηρισμός είναι "Άριστα"
Λύση
Σημειώνεται ότι στα πλαίσια του αλγορίθμου θα πραγματοποιήσουμε έλεγχο και για την περίπτωση ο χρήστης να έχει εισάγει κάποιον αριθμό εκτός των ορίων [0, 20] και σε αυτήν την περίπτωση να εκτυπωθεί αντίστοιχο μήνυμα λάθους. Ο έλεγχος των δεδομένων είναι μια ενέργεια που δεν είναι απαραίτητη σ' έναν αλγόριθμο αλλά σε ένα πρόγραμμα πρέπει απαραιτήτως να ελέγχουμε τα δεδομένα εισόδου.
Για την υλοποίηση του αλγορίθμου και δεδομένου οτι πρέπει να ελεχθούν ουσιάστικά 6 περιπτώσεις η δομή επιλογής δεν αρκεί. Πρέπει να χρησιμοποιήσουμε την δομή πολλαπλής επιλογής. Θα υλοποιήσουμε τον αλγόριθμο και με τις δομές πολλαπλής επιλογής που έχουν παρουσιαστεί
Αλγόριθμος Χαρακτηρισμός_ΜΟ
Διάβασε μέσος_όρος
Αν μέσος_όρος < 9.5 τότε
Εκτύπωσε "Ο μαθητής απορρίπτεται"
Αλλιώς_Αν μέσος_όρος < 13 τότε ! εννοείται σε αυτό το σημείο οτι μέσος_όρος >= 9,5
Εκτύπωσε "Σχεδόν καλά"
Αλλιώς_Αν μέσος_όρος < 16 τότε ! εννοείται σε αυτό το σημείο οτι μέσος_όρος >= 13
Εκτύπωσε "Καλά"
Αλλιώς_Αν μέσος_όρος < 18 τότε ! εννοείται σε αυτό το σημείο οτι μέσος_όρος >= 16
Εκτύπωσε "Πολύ καλά"
Αλλιώς_Αν μέσος_όρος <= 20 τότε ! εννοείται σε αυτό το σημείο οτι μέσος_όρος >= 18
Εκτύπωσε "Άριστα"
Αλλιώς ! μέσος_όρος > 20
Εκτύπωσε "Λάθος καταχώρηση δεδομένων"
Τέλος_Αν
Τέλος Χαρακτηρισμός_ΜΟ
Παναγιώτη συγνώμη που "έκλεψα" :)τα παρδείγματα από τη σελίδα σου, αλλά αυτό έγινε γιατί είσαι πηγή πληροφοριών και μελέτης (όπως ξέρεις, ήδη

)....στο θέμα:
ο έλεγχος των λάθος τιμών γίνεται πριν την δομή της επιλογής με δομή επανάληψης. Βέβαια, σε αυτόν τον αλγόριθμο υλοποιούμε ακόμη μόνο τη δομή της επιλογής.
η ερώτηση μου είναι η εξής:
αν κάποιος δώσει αρνητική τιμή ο αλγόριθμος θα εμφανίσει "Ο μαθητής απορρίπτεται", που είναι λάθος διότι υπήρξε λάθος εισαγωγή τιμής.
Μήπως θα πρέπει σε αυτές τις ασκήσεις και για την πρώτη περίπτωση επιλογής να παίρνουμε περιορισμό και για το κάτω όριο ώστε οι αρνητικές τιμές και οι μεγαλύτερες του 20 να καταλήγουν στο αλλιώς?