Δομή επανάληψης Όσο
Η δομή της επανάληψης, η οποία λέγεται και βρόχος, επιτρέπει την εκτέλεση ενός συνόλου εντολών πoλλές φορές.
► Χρησιμοποιείται όταν δεν είναι γνωστό εξαρχής το πλήθος των επαναλήψεων που θα πραγματοποιηθούν αλλά και ούτε μπορεί να υπολογιστεί πριν από την εκτέλεση του αλγορίθμου.
► Είναι η σημαντικότερη από όλες τις εντολές επανάληψης, γιατί με αυτήν, μπορούν να εκφραστούν όλες οι επαναλήψεις που χρειάζονται σε έναν αλγόριθμο.
Ο «ατέρμων βρόχος» είναι ένας βρόχος που δεν τερματίζει ποτέ. Ο αριθμός των επαναλήψεων που θα πραγματοποιήσει η εντολή «Όσο...επαναλαβε» εξαρτάται από τη λογική συνθήκη που ελέγχει.
Όσο η συνθήκη είναι αληθής, οι εντολές ανάμεσα στο «Όσο ... επανάλαβε» και «Τέλος_επανάληψης» επαναλαμβάνονται.
Η εντολή «Όσο...επαναλαβε» μπορεί να μην εκτελεστεί καμία φορά εάν η συνθήκη της επανάληψης είναι εξαρχής ψευδής.
Άσκηση 1η
Δίνεται ο παρακάτω αλγόριθμος:
- Τι θα εμφανίσει αν δοθεί ο αριθμός 10;
- Τι θα εμφανίσει αν δοθεί ο αριθμός 100;
- Ποια τιμή έχει το i μετά το τέλος της επανάληψης;
- Τι θα εμφανίσει αν δοθεί ο αριθμός 0; Ποια τιμή θα έχει η συνθήκη i ≤ number;
- Αν αντικαταστήσουμε την εντολή 7 με i ← i + 3 τι θα εμφανίσει ο αλγόριθμος αν δώσουμε τον αριθμό 18;
- Αν διαγράψουμε την εντολή 7 τι θα εμφανίσει ο αλγόριθμος αν δώσουμε τον αριθμό 18;
- Αν διαγράψουμε την εντολή 4 τι θα εμφανίσει ο αλγόριθμος αν δώσουμε τον αριθμό 18;
Άσκηση 2η
Πόσες φορές θα εκτελεστούν οι εντολές που υπάρχουν μέσα στην επανάληψη;
Άσκηση 3η
Δίνεται ο παρακάτω αλγόριθμος:
Τι θα εμφανίσει αν δώσετε τις τιμές: 4, 9, 16, 25, 100, -100;
Άσκηση 4η
Δίνεται ο παρακάτω αλγόριθμος ο οποίος διαβάζει το όνομα ενός μαθητή, τους βαθμούς του σε τρία μαθήματα και υπολογίζει και τυπώνει το μέσο όρο του. Ο αλγόριθμος να σταματάει, όταν για όνομα μαθητή δοθεί το κενό εμφανίζοντας το πλήθος των μαθητών για τους οποίους υπολογίστηκε ο μέσος όρος και τον μέσο όρο όλων των μαθητών. Συμπληρώστε τα κενά. Τι θα γίνει αν από την αρχή δώσει ο χρήστης ως όνομα το κενό;
Άσκηση 5η
Δίνεται ο παρακάτω αλγόριθμος:
- Τι θα εμφανίσει αν δοθεί ως Α η τιμή 10;
- Τι θα εμφανίσει αν δοθεί ως Α η τιμή 15;
- Τι θα εμφανίσει αν δοθεί ως Α η τιμή 20;