Μάθημα : Προγραμματισμός στην Python
Ενότητα 4 - Εντολές Επανάληψης For και While
- Την έννοια των Loops (Επαναλήψεων): Πώς λειτουργεί η επανάληψη στον προγραμματισμό και πώς μπορούμε να τη φανταστούμε σαν οδηγίες προς ένα ρομπότ-βοηθό στο σπίτι μας.
- Την εντολή
for: Πώς επαναλαμβάνουμε έναν κώδικα για έναν προκαθορισμένο αριθμό φορών και πώς ρυθμίζουμε τη μέτρηση χρησιμοποιώντας το σημείο έναρξης (start), το όριο (stop) και το βήμα (step) της συνάρτησηςrange(). - Την εντολή
while: Πώς φτιάχνουμε επαναλήψεις που συνεχίζονται «όσο» μια συνθήκη παραμένει αληθής, ιδανικές για περιπτώσεις όπου δεν γνωρίζουμε από πριν πόσες φορές θα χρειαστεί να τρέξει ο κώδικας. - Την παγίδα του Infinite Loop: Τι είναι η ατέρμονη επανάληψη, γιατί κάνει τα προγράμματα να «κολλάνε» και πώς μπορούμε να την αποφύγουμε αλλάζοντας σωστά τις μεταβλητές μας.
Η έννοια των επαναλήψεων (loops)
Οι εντολές επανάληψης αποτελούν βασικό εργαλείο στον προγραμματισμό, καθώς μας επιτρέπουν να εκτελούμε ένα σύνολο εντολών πολλές φορές χωρίς να χρειάζεται να τις γράφουμε ξανά. Με τη χρήση των επαναλήψεων, τα προγράμματα γίνονται πιο αποτελεσματικά, πιο σύντομα και πιο ευέλικτα, ενώ παράλληλα αναπτύσσουμε δεξιότητες αυτοματοποίησης και αλγοριθμικής σκέψης.
Τι είναι οι εντολές For και While
- Εντολή For: Αυτή η εντολή μάς βοηθά να επαναλάβουμε ένα συγκεκριμένο μπλοκ κώδικα για έναν συγκεκριμένο αριθμό φορών. Είναι σαν να λες στο ρομπότ: «Καθάρισε το πάτωμα ακριβώς 5 φορές».
- Εντολή While: Αυτή η εντολή μάς βοηθά να επαναλάβουμε έναν κώδικα μέχρι να ικανοποιηθεί μια συγκεκριμένη συνθήκη (εδώ δεν ξέρουμε από πριν τον ακριβή αριθμό των επαναλήψεων). Είναι σαν να λες στο ρομπότ: «Συνέχισε να μαζεύεις τα σκουπίδια στο πάτωμα ΜΕΧΡΙ να μην μεινει κανένα» (θα σταματήσει μόνο όταν η συνθήκη «υπάρχουν σκουπίδια στο πάτωμα» γίνει ψευδής).
Η εντολή For στην Python
Η εντολή for συντάσσεται ως εξής:
for variable in range(start, stop, step):
# κώδικας που θα επαναλαμβάνεται
- Variable: Είναι μια μεταβλητή (ένα όνομα) που λειτουργεί ως σύμβολο κράτησης θέσης. Η τιμή της θα αλλάζει αυτόματα κάθε φορά που επαναλαμβάνεται ο κώδικας.
- Start: Ο αριθμός από όπου θέλουμε να ξεκινήσει η μέτρηση.
- Stop: Ο αριθμός όπου θέλουμε να σταματήσει η επανάληψη. Προσοχή: Η Python σταματάει πάντα έναν αριθμό πριν το Stop (δηλαδή στο
stop - 1). - Step: Η τιμή με την οποία αλλάζει η μεταβλητή (το βήμα της μέτρησης) κάθε φορά που επαναλαμβάνεται ο κώδικας.
Ακολουθεί ένα παράδειγμα για το πώς μπορούμε να χρησιμοποιήσουμε την εντολή for στην Python:
for number in range(1, 6, 1):
print(number)
number θα λάβει διαδοχικά τις τιμές 1, 2, 3, 4, 5 και η εντολή print() θα εκτελεστεί για καθεμία από αυτές. Μόλις η Python φτάσει στο 6 (το Stop), σταματάει και βγαίνει από την επανάληψη.for i in range(5):. Η Python θα παράγει αυτόματα τους αριθμούς 0, 1, 2, 3, 4.
Η εντολή While στην Python
Η εντολή while συντάσσεται ως εξής:
while condition:
# κώδικας που θα επαναλαμβάνεται
- Condition: Αυτή είναι μια λογική συνθήκη (μια σύγκριση) που πρέπει να είναι αληθής (
True) για να συνεχιστεί η επανάληψη. Μόλις η συνθήκη γίνει ψευδής (False), η επανάληψη σταματάει αμέσως.
Ακολουθεί ένα παράδειγμα για το πώς μπορούμε να χρησιμοποιήσουμε την εντολή while στην Python:
count = 1
while count <= 5:
print(count)
count = count + 1
- Ξεκινάμε με τη μεταβλητή
count = 1. - Η
whileελέγχει αν το1 <= 5. Επειδή είναι αληθές, μπαίνει μέσα, εκτυπώνει το 1 και η εντολήcount = count + 1αυξάνει την τιμή της μεταβλητής κατά 1 (άρα το count γίνεται 2). - Η διαδικασία αυτή επαναλαμβάνεται. Όταν το
countγίνει 6, η συνθήκη6 <= 5γίνεται ψευδής (False), οπότε η επανάληψη σταματάει.
count = count + 1), η συνθήκη θα παραμένει πάντα αληθής. Αυτό ονομάζεται Ατέρμονη Επανάληψη (Infinite Loop) και κάνει το πρόγραμμα να κολλάει εκτελώντας την ίδια εντολή για πάντα!Πρακτική Δραστηριότητα στο Εργαστήριο
- 1.1. Γράψτε ένα πρόγραμμα που εκτυπώνει τους ζυγούς αριθμούς από το 0 έως το 10 χρησιμοποιώντας την εντολή
for(Σκέψου: τι βήμα/step πρέπει να βάλεις;). - 1.2. Γράψτε ένα πρόγραμμα που ζητάει από τον χρήστη έναν αριθμό (π.χ. το 5) και εκτυπώνει την προπαίδειά του από το 1 έως το 10 χρησιμοποιώντας την εντολή
for.
- 2.1. Γράψτε ένα πρόγραμμα που μετράει αντίστροφα από το 10 έως το 1 χρησιμοποιώντας την εντολή
while. - 2.2. Γράψτε ένα πρόγραμμα που ζητάει συνεχώς από τον χρήστη να εισαγάγει έναν αριθμό και σταματάει να τον ρωτάει μόνο όταν ο αριθμός που θα δώσει είναι μεγαλύτερος από 10.