Είναι φορές που δεν γνωρίζουμε από πριν πόσες φορές είναι αναγκαίο να εκτελεστούν οι εντολές που βρίσκονται μέσα σε ένα βρόχο (επανάληψη).
Παράδειγμα: Έστω ότι θέλουμε να δίνουμε βαθμούς μαθητών και το πρόγραμμα να εμφανίζει αν ο μαθητής Προάγεται ή Απορρίπτεται.
Ωστόσο δεν ξέρουμε πόσοι είναι οι μαθητές, ώστε να χρησιμοποιήσουμε το For!
Για το λόγο αυτό χρησιμοποιούμε την εντολή While (όσο) η οποία εκτελεί τις εντολές μέσα στο βρόχο (επανάληψη) όσο ισχύει μια συνθήκη.
Όταν η συνθήκη πάψει να ισχύει, οι εντολές σταματούν να εκτελούνται.
Στις περιπτώσεις αυτές, χρησιμοποιούμε για τερματισμό μία τιμή που είναι αδύνατον να είναι στα δεδομένα που ζητάμε. Είναι η συνθήκη τερματισμού.
Στην περίπτωση των βαθμών, μπορεί να μπει ως συνθήκη τερματισμού ο αριθμός -999, που είναι αδύνατο να είναι βαθμός.
Μόλις ο χρήστης δώσει το -999, δεν εκτελείται η επανάληψη, οπότε δεν βγαίνει μήνυμα αν Προάγεται ή απορρίπτεται.
Το πρόγραμμα φαίνεται παρακάτω:
Προσοχή! Εξυπακούεται ότι πριν το While, η μεταβλητή που καταχωρεί τους βαθμούς πρέπει να έχει τιμή. Για τον λόγο αυτό, μπαίνει το πρώτο Input πριν το While.
Επίσης, όταν τελειώνουν οι εντολές της επανάληψης, πρέπει να δοθεί η επόμενη τιμή βαθμού, γι αυτό στο τέλος του βρόχου μπαίνει το Input.
Σερ περίπτωση που διαβάζει χαρακτήρες (π.χ. ονόματα ή διευθύνσεις) μπορεί να χρησιμοποιηθεί ως συνθήκη τερματισμού η λέξη "ΤΕΛΟΣ"
Ασκήσεις:
1. Να γραφεί πρόγραμμα που να διαβάζει συνεχώς αριθμό απουσιών και να εμφανίζει αν ο μαθητής
απορρίπτεται λόγω απουσιών ή προάγεται. Να τελειώνει όταν ο χρήστης δώσει για αριθμό απουσιών το -999.
2. Να γραφεί πρόγραμμα που να διαβάζει ηλικίες που δίνει ο χρήστης και να εμφανίζει το πλήθος των ατόμων που είναι ανήλικα. Να τελειώνει η επανάληψη όταν δοθεί ως ηλικία το -999. (Προσοχή! Το πλήθος θα εμφανιστεί μία φορά στο τέλος, όχι κάθε φορά που δίνει ηλικία ο χρήστης).
3. Να γραφεί πρόγραμμα που να διαβάζει αν ο κάθε μαθητής επέλεξε "ΓΑΛΛΙΚΑ" ή "ΓΕΡΜΑΝΙΚΑ" και να μετρά το πλήθος των μαθητών που επέλεξαν "ΓΑΛΛΙΚΑ". Το πρόγραμμα θα τελειώνει όταν ο χρήστης δώσει το "ΤΕΛΟΣ" ως επιλογή.
4. Να γραφεί πρόγραμμα που να διαβάζει αν ο μαθητής είναι "ΑΓΟΡΙ" ή "ΚΟΡΙΤΣΙ" και να εμφανίζει στο τέλος το πλήθος των αγοριών και το πλήθος των κοριτσιών. Συνθήκη τερματισμού το "ΤΕΛΟΣ"
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου
Σημείωση: Μόνο ένα μέλος αυτού του ιστολογίου μπορεί να αναρτήσει σχόλιο.