1. ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 11ο
ΚΕΦΑΛΑΙΟ – ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ
Δ ι α φ ο ρ έ ς : w h i l e , r e p e a t
Στη while ο έλεγχος για την επανάληψη γίνεται στην αρχή του κύκλου των εντολών και
αυτές με τη σειρά τους επαναλαμβάνονται για όσο η συνθήκη ελέγχου είναι true. H
εντολή / ες που περιέχονται στη while μ π ο ρ ε ί ν α μ η ν ε κ τ ε λ ε σ τ ο ύ ν
ο ύ τ ε μ ί α φ ο ρ ά . Στην περίπτωση που μετά το do αντί για μία, έχουμε ομάδα
εντολών, αυτές τοποθετούνται μεταξύ των λέξεων begin – end.
Στη repeat ο έλεγχος για την επανάληψη γίνεται στο τέλος του κύκλου των εντολών και
αυτές με τη σειρά τους επαναλαμβάνονται για όσο η συνθήκη ελέγχου είναι false. Το
χαρακτηριστικό της επανάληψης repeat είναι ότι η εντολή / ες που περιέχονται,
ε κ τ ε λ ο ύ ν τ α ι τ ο υ λ ά χ ι σ τ ο ν μ ι α φ ο ρ ά ( α κ ό μ α κ ι α ν η
λ ο γ ι κ ή έ κ φ ρ α σ η ε ί χ ε α π ό τ η ν α ρ χ ή τ ι μ ή t r u e ) . Στην εντολή
repeat δεν απαιτείται begin – end, γιατί οι εντολές μπαίνουν απλά ανάμεσα στο repeat
– until.
Δ ι α φ ο ρ έ ς : w h i l e , r e p e a t , f o r
Οι εντολές while και repeat χρησιμοποιούνται για μη προκαθορισμένο αριθμό
επαναλήψεων (δηλαδή δε γνωρίζουμε εκ των προτέρων τον αριθμό των
επαναλήψεων). Σε περίπτωση που ο αριθμός των επαναλήψεων είναι
προκαθορισμένος, είναι πιο βολικό να χρησιμοποιείται η for.
Ενώ μέσα στο σώμα της επανάληψης while & repeat θα πρέπει να υπάρχουν και
εντολές που θα τροποποιούν τη συνθήκη (έτσι ώστε κάποια στιγμή η μεταβλητή
ελέγχου να τερματίσει την επανάληψη), στον κύκλο της επανάληψης for, η
μ ε τ α β λ η τ ή ε λ έ γ χ ο υ δ ε θ α π ρ έ π ε ι ν α α λ λ ά ζ ε ι τ ι μ έ ς (δηλαδή
δεν μπορούμε να διαβάσουμε ή να εκχωρήσουμε τιμή στη μεταβλητή επανάληψης,
διότι τότε αλλοιώνονται τα βήματα της επανάληψης).
Η ε ν τ ο λ ή ή ο ι ε ν τ ο λ έ ς π ο υ π ε ρ ι λ α μ β ά ν ο ν τ α ι σ τ η ν w h i l e
– α ν ά λ ο γ α μ ε τ η σ υ ν θ ή κ η – μ π ο ρ ε ί ν α μ η ν ε κ τ ε λ ε σ τ ο ύ ν
ο ύ τ ε μ ί α φ ο ρ ά ε ν ώ η ε ν τ ο λ ή / ε ν τ ο λ έ ς π ο υ
π ε ρ ι λ α μ β ά ν ο ν τ α ι σ τ η ν r e p e a t θ α ε κ τ ε λ ε σ τ ο ύ ν
τ ο υ λ ά χ ι σ τ ο ν μ ί α φ ο ρ ά
ΜΑΝΤΖΑΚΙΔΟΥ ΒΑΪΑ 1
2. ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 11ο
ΚΕΦΑΛΑΙΟ – ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ
Π ό τ ε χ ρ η σ ι μ ο π ο ι ο ύ μ ε κ α θ ε μ ι ά α π ό τ ι ς π α ρ α κ ά τ ω δ ο μ έ ς
ε π α ν ά λ η ψ η ς : w h i l e , r e p e a t , f o r
Χρησιμοποιούμε τη while όταν δε γνωρίζουμε τον αριθμό των επαναλήψεων και η
επανάληψη δεν είναι απαραίτητο να εκτελεστεί ούτε μία φορά.
Χρησιμοποιούμε τη repeat όταν δε γνωρίζουμε τον αριθμό των επαναλήψεων και η
επανάληψη πρέπει να εκτελεστεί τουλάχιστον μία φορά.
Χρησιμοποιούμε τη for όταν γνωρίζουμε τον αριθμό των επαναλήψεων.
ΜΑΝΤΖΑΚΙΔΟΥ ΒΑΪΑ 2
3. ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 11ο
ΚΕΦΑΛΑΙΟ – ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ
ΜΑΝΤΖΑΚΙΔΟΥ ΒΑΪΑ
Χρήση δομής επανάληψης
For ή While ή Repeat While ή Repeat
… για πλήθος επαναλήψεων
Γνωστό - Συγκεκριμένο Άγνωστο - μέχρι να πραγματοποιηθεί
(να γίνει είτε αληθής είτε ψευδής) μία
συγκεκριμένη συνθήκη
Όπως π.χ. : 20, 100….κ.τ.λ. Όπως π.χ. :
Μέχρι να δώσω μηδέν
Μέχρι να δώσω κενό
Μέχρι το άθροισμα ξεπεράσει
κάποια δεδομένη τιμή
Για όσο δίνω θετικές τιμές …..
Α ό ρ ι σ τ ο Ν : το οποίο πρώτα θα
πρέπει να το ζητάμε
Π.χ.: Writeln('Δώσε το πλήθος των
μαθητών : ');
Readln(N);
3
4. ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 11ο
ΚΕΦΑΛΑΙΟ – ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ
1. Να ζητάτε ένα χαρακτήρα και να τον τυπώνετε 15 φορές σε οριζόντια διάταξη.
Πχ αν δοθεί *, τότε να τυπωθεί ***************
2. Να τυπώνετε τους αριθμούς 1-10, σε οριζόντια διάταξη
1 2 3 …….. 10
3. Να τυπώνετε τους αριθμούς 20-10, σε κάθετη διάταξη
20
19
………
10
4. Να γράψετε πρόγραμμα το οποίο βρίσκει τον μεγαλύτερο από Ν αριθμούς
5. Να γράψετε πρόγραμμα το οποίο βρίσκει πόσοι από Ν αριθμούς είναι θετικοί,
πόσοι αρνητικοί και πόσοι μηδέν
6. Να γράψετε πρόγραμμα το οποίο για Ν μαθητές, θα ζητάει το όνομα, το
βαθμό και την τάξη του μαθητή. Στη συνέχεια θα υπολογίζει για κάθε τάξη,
το σύνολο των μαθητών και το μέσο όρο βαθμολογίας κάθε τάξης.
7. Να γράψετε πρόγραμμα το οποίο, για Ν υπαλλήλους έχουμε τα εξής στοιχεία
: ονοματεπώνυμο, γραμματικές γνώσεις (1=Δημοτικό, 2=Γυμνάσιο,
3=Πτυχιούχος) και ηλικία - ζητάμε να βρεθεί η μικρότερη ηλικία από κάθε
κατηγορία γραμματικών γνώσεων.
8. Να γράψετε πρόγραμμα στο οποίο δίνονται τα παρακάτω στοιχεία για Ν
ανθρώπους : όνομα και κωδικός φύλου (1=γυναίκα, 2=άνδρας) - ζητάμε να
βρεθούν πόσες είναι οι γυναίκες και πόσοι οι άνδρες
ΜΑΝΤΖΑΚΙΔΟΥ ΒΑΪΑ 4
5. ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 11ο
ΚΕΦΑΛΑΙΟ – ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ
9. Γίνεται μια έρευνα για τις ώρες που παρακολουθεί τηλεόραση το κοινό και τα
αποτελέσματα καταχωρούνται στις εξής τρεις κατηγορίες :
a. υψηλή (περισσότερες από 20 ώρες την εβδομάδα)
b. μεσαία (από 8 έως 20 ώρες)
c. χαμηλή (λιγότερες από 8 ώρες)
ζητείται να διαβαστούν οι ώρες για 30 άτομα και να τυπωθεί το πλήθος της
κάθε κατηγορίας
10. Να ζητάτε την τιμή και ποσότητα 4 προϊόντων. Για το κάθε προϊόν:
a. Αν η ποσότητα είναι >20, τότε να δίνεται 10% έκπτωση
b. Στη τιμή μετά την έκπτωση να υπολογίσετε 15% ΦΠΑ.
c. Να υπολογίσετε την τελική τιμή του προϊόντος
d. Να τυπώνονται η έκπτωση, το ΦΠΑ και η τελική τιμή.
11. Να ζητάτε δύο αριθμούς, Χ1 και Χ2. Να τυπώνετε όλα τα πολλαπλάσια του 3
μεταξύ των αριθμών Χ1 και Χ2, συμπεριλαμβανομένων.
12. Να δέχεται από το χρήστη αριθμούς και να τυπώνει
a. το μέσο όρο των αρνητικών,
b. το μέσο όρο των θετικών αριθμών,
c. το πλήθος των ζυγών αριθμών
0
Το πρόγραμμα να τερματίζεται όταν δοθεί ο αριθμός 0.
ΜΑΝΤΖΑΚΙΔΟΥ ΒΑΪΑ 5
6. ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 11ο
ΚΕΦΑΛΑΙΟ – ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ
13. Να ζητάτε το όνομα και ύψος (>100cm) απροσδιόριστου αριθμού
καλαθοσφαιριστών. Να τυπώνετε τα στοιχεία του ψηλότερου παίχτη. Το
πρόγραμμα να τερματίζεται όταν δοθεί ύψος <=0.
14. Να ζητάτε τις βαθμολογίες για 50 μαθητές στο μάθημα της Πληροφορικής:
Προφορικός Βαθμός (1-20). Στην περίπτωση που εισαχθεί αριθμός εκτός των
ορίων 1-20, τότε το πρόγραμμα πρέπει να ζητά άλλο αριθμό από το χρήστη.
Βαθμός Εξέτασης (1-20). Στην περίπτωση που εισαχθεί αριθμός εκτός των
ορίων 1-20, τότε το πρόγραμμα πρέπει να ζητά άλλο αριθμό από το χρήστη.
Για τον κάθε μαθητή να υπολογίσετε και να τυπώσετε το μέσο όρο του μαθητή.
Στο τέλος να τυπώσετε:
A. το μέσο όρο των βαθμών των εξετάσεων όλων των μαθητών
B. το χαμηλότερο και ψηλότερο βαθμό εξετάσεων από όλους τους βαθμούς
C. το πλήθος των στάσιμων μαθητών (μέσος όρος μαθητή < 10)
15. Να γράψετε πρόγραμμα που να διαβάζει 20 ακεραίους και στο τέλος να
εμφανίζει το μικρότερο από αυτούς.
16. Να γράψετε πρόγραμμα που να διαβάζει 100 ακεραίους και στο τέλος
να εμφανίζει το μεγαλύτερο από αυτούς καθώς και το πλήθος εμφανίσεων
αυτού του αριθμού.
17. Να γράψετε πρόγραμμα που να διαβάζει έναν ακέραιο αριθμό κ ο οποίος
θα πρέπει να ελέγχεται ώστε να είναι 0<κ≤20. Στη συνέχεια να διαβάζει κ
αριθμούς και στο τέλος να εμφανίζει το μικρότερο και τον μεγαλύτερο
από αυτούς, καθώς και το άθροισμα και το γινόμενό τους.
ΜΑΝΤΖΑΚΙΔΟΥ ΒΑΪΑ 6
7. ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 11ο
ΚΕΦΑΛΑΙΟ – ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ
13. Να ζητάτε το όνομα και ύψος (>100cm) απροσδιόριστου αριθμού
καλαθοσφαιριστών. Να τυπώνετε τα στοιχεία του ψηλότερου παίχτη. Το
πρόγραμμα να τερματίζεται όταν δοθεί ύψος <=0.
14. Να ζητάτε τις βαθμολογίες για 50 μαθητές στο μάθημα της Πληροφορικής:
Προφορικός Βαθμός (1-20). Στην περίπτωση που εισαχθεί αριθμός εκτός των
ορίων 1-20, τότε το πρόγραμμα πρέπει να ζητά άλλο αριθμό από το χρήστη.
Βαθμός Εξέτασης (1-20). Στην περίπτωση που εισαχθεί αριθμός εκτός των
ορίων 1-20, τότε το πρόγραμμα πρέπει να ζητά άλλο αριθμό από το χρήστη.
Για τον κάθε μαθητή να υπολογίσετε και να τυπώσετε το μέσο όρο του μαθητή.
Στο τέλος να τυπώσετε:
A. το μέσο όρο των βαθμών των εξετάσεων όλων των μαθητών
B. το χαμηλότερο και ψηλότερο βαθμό εξετάσεων από όλους τους βαθμούς
C. το πλήθος των στάσιμων μαθητών (μέσος όρος μαθητή < 10)
15. Να γράψετε πρόγραμμα που να διαβάζει 20 ακεραίους και στο τέλος να
εμφανίζει το μικρότερο από αυτούς.
16. Να γράψετε πρόγραμμα που να διαβάζει 100 ακεραίους και στο τέλος
να εμφανίζει το μεγαλύτερο από αυτούς καθώς και το πλήθος εμφανίσεων
αυτού του αριθμού.
17. Να γράψετε πρόγραμμα που να διαβάζει έναν ακέραιο αριθμό κ ο οποίος
θα πρέπει να ελέγχεται ώστε να είναι 0<κ≤20. Στη συνέχεια να διαβάζει κ
αριθμούς και στο τέλος να εμφανίζει το μικρότερο και τον μεγαλύτερο
από αυτούς, καθώς και το άθροισμα και το γινόμενό τους.
ΜΑΝΤΖΑΚΙΔΟΥ ΒΑΪΑ 6