Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20

Σχετικά έγγραφα
Διάλεξη 1. Πράξεις Τελεστές Έλεγχος Ροής

Θέματα Προγραμματισμού Η/Υ

Σημειωματάριο Τετάρτης 18 Οκτ. 2017

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Στόχοι και αντικείμενο ενότητας. Προτάσεις επανάληψης. Έλεγχος ροής προγράμματος. #5.. Εντολές Επανάληψης

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 3 η : Επίλυση Προβληµάτων Χειµερινό Εξάµηνο 2011

Φύλλο Εργασίας 3. Μια γρήγορη επανάληψη από τα προηγούμενα

print( x is positive ) Στο διερμηνευτή Python, προσοχή στη στοίχιση, διότι γίνεται από το χρήστη:

Εισαγωγή στην πληροφορική

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Υπολογισμός - Εντολές Επανάληψης

Πληρουορική Γ Γσμμασίοσ

ΔΙΑΛΕΞΗ ΙΙ ΕΝΑ ΒΗΜΑ ΠΑΡΑΠΑΝΩ ΜΕ SCRATCH ΕΠΙΛΕΓΩΝΤΑΣ & ΕΠΑΝΑΛΑΜΒΑΝΟΝΤΑΣ

Εντολές Επανάληψης. int sum = 0, i=1; sum += i++ ; sum += i++ ; Η πράξη αυτή θα πρέπει να επαναληφθεί Ν φορές!

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό

Πληροφορική 2. Αλγόριθμοι

Πληροφορική ΙΙ Θεματική Ενότητα 7

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ

Δομημένος Προγραμματισμός

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αναζήτηση και Ταξινόμηση Χειμερινό Εξάμηνο 2016

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6)

Δομές ελέγχου & επανάληψης

Προγραμματισμός Η/Υ. Ενότητα 5: Εντολές Επανάληψης

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

Βασικά Στοιχεία Python 3

Εισαγωγή στη Matlab 2 Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

Κεφάλαιο : Επαναλήψεις (o βρόγχος While) (Διάλεξη 9) Δομές Έλεγχου Προγράμματος

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos

for for for for( . */

Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20

Διάλεξη 5η: Εντολές Επανάληψης

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή

Διαδικασιακός Προγραμματισμός

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Δομές ελέγχου ροής προγράμματος

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα

Εισαγωγή στην πληροφορική

Μεθόδων Επίλυσης Προβλημάτων

Οι εντολές ελέγχου της ροής ενός προγράμματος.

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Παράδειγμα. print (random.sample('christos drosos',3)) #3 στοιχεία από το δείγμα print (random.gauss(0,1)) #μέση τιμή 0 και απόκλιση 1

ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Είδη εντολών. Απλές εντολές. Εντολές ελέγχου. Εκτελούν κάποια ενέργεια. Ορίζουν τον τρόπο με τον οποίο εκτελούνται άλλες εντολές

9. Εντολές επανάληψηςκαι η εντολή

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Θέματα Προγραμματισμού Η/Υ

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

HY340, 2009 Α. Σαββίδης Slide 2 / 143. HY340, 2009 Α. Σαββίδης Slide 3 / 143. HY340, 2009 Α. Σαββίδης Slide 4 / 143

Σημειωματάαριο Δευτέρας 16 Οκτ. 2017

7. Επαναλήψεις (Loops) Προγραμματισμός EV3 Ακαδημία Ρομποτικής 58

ικτυακά Πολυμέσα Ι (Β Έτος, 3ο εξ) ιάλεξη #8η: Javascript: Τεχνικές εντοπισμού/διόρθωσης λαθών, τελεστές, δομές ελέγχου, βρόχοι επανάληψης

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου

Μάντεψε τον Αριθμό. Έχω Ένα Μυστικό. Το Βρήκα;

Προγραμματισμός Υπολογιστών Τάξη Γ Αθανασιάδης Χρήστος ΠΕ19 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Υπολογισμός - Εντολές Ελέγχου

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης

Ο πιο κάτω πίνακας περιγράφει σε ποιες περιπτώσεις χρησιμοποιούμε τους τρεις πιο πάνω τρόπους:

ιαδικαστικός Προγραμματισμός

Διάλεξη 04: Παραδείγματα Ανάλυσης

2.1. Εντολές Σχόλια Τύποι Δεδομένων

Γλώσσα Προγραμματισμού C. Προγραμματισμός HY: Γλώσσα Προγραμματισμού C. Γρήγορος Πίνακας Αναφοράς Σύνταξης. Εισήγηση #4. Επαναληπτικές δομές:

alpha Language age (3/5) alpha Language Φροντιστήριο Syntax Directed Translation and

α. Οι συμβολοσειρές είναι μια ακολουθία από χαρακτήρες. Μια συμβολοσειρά μπορεί να αποτελείται από περισσότερες από μία λέξεις.

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων

4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for)

Εισαγωγή στον Προγ/μό Υπολογιστών

Θέματα Προγραμματισμού Η/Υ

ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων

Εργαστήριο 2. Εαρινό Εξάμηνο Εντολές για είσοδο ακεραίων αριθμών από την κονσόλα:

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ

Γλώσσα προγραμματισμού python

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ ΥΠΟΛΕΙΠΟΜΕΝΕΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ ΤΡΙΤΗ 11 ΙΟΥΝΙΟΥ 2019 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Η γλώσσα προγραμματισμού C

Τιμές και τύποι, μεταβλητές Ένα πρώτο σημαντικό βήμα για να μάθουμε να προγραμματίζουμε είναι να

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ΚΑΙ Β ) ΤΡΙΤΗ 13 ΙΟΥΝΙΟΥ 2017

Δομημένος Προγραμματισμός

Κεφάλαιο : Επαναλήψεις (oι βρόγχοιfor, do-while) (Διάλεξη 10) Εντολές Επανάληψης που θα καλυφθούν σήμερα

Διαδικαστικός Προγραμματισμός

Δραστηριότητα 2.2 Δομές επανάληψης και επιλογής

Πληροφορική ΙΙ Θεματική Ενότητα 5

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Έλεγχος Ροής Προγράµµατος Χειµερινό Εξάµηνο 2014

ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων

Διδάσκων: Παναγιώτης Ανδρέου

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Transcript:

Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20 Διάλεξη 4 Ανακυκλώσεις Παπαϊωάννου Αθανάσιος Π.Μ.Σ. «Εφαρμοσμένη Πληροφορική» Χειμερινό Εξάμηνο 20 16-20 17

Συναρτήσεις: Παράμετρος key/value Μπορούμε να περάσουμε ένα όρισμα dictionary σε μια συνάρτηση. Παίρνουμε την τιμή κάθε παραμέτρου με το key του. def bar(first, second, third, **options): if options.get("action") == "sum": print "The sum is: %d" % (first + second + third)

Βρόγχοι n = 5 Εξοδος: No n > 0? Ye s n = 5 while n > 0 : print n 5 4 print n n = n 1 print('blastoff!') 3 2 n = n -1 print(n) 1 Blastoff! 0 print 'Blastoff' Loops (Βρόγχοι): έχουν μεταβλητές επανάληψης που αλλάζουν κάθε φορά. Συχνά, αυτές οι μεταβλητές επανάληψης περνούν από μια ακολουθία αριθμών.

Βρόγχος επ άπειρο n = 5 No n > 0? Ye s print 'Lather' n = 5 while n > 0 : print('lather') print('rinse') print('dry off!') print 'Rinse' print 'Dry off!' Ποιό είναι το σφάλμα σε αυτό τον βρόγχο;

Άλλος ένας βρόγχος n = 0 No n > 0? Yes print 'Lather' n = 0 while n > 0 : print('lather') print('rinse') print('dry off!') print 'Rinse' Τί έξοδο δίνει αυτός ο βρόγχος; print 'Dry off!'

Έξοδος από ένα βρόγχο Η εντολή break τερματίζει τον τρέχοντα βρόγχο και μεταβαίνει στην κατάσταση αμέσως μετά το βρόγχο Είναι σαν ένας βρόγχος ελέγχου που μπορεί να συμβεί οπουδήποτε στο σώμα του βρόγχου while True: line = input('> ') if line == 'done' : break print(line) print('done!') > hello there hello there > finished finished > done Done!

Έξοδος από ένα βρόγχο Η εντολή break τερματίζει τον τρέχοντα βρόγχο και μεταβαίνει στην κατάσταση αμέσως μετά το βρόγχο Είναι σαν ένας βρόγχος ελέγχου που μπορεί να συμβεί οπουδήποτε στο σώμα του βρόγχου while True: line = input('> ') if line == 'done' : break print(line) print('done!') > hello there hello there > finished finished > done Done!

while True: line = input('> ') if line == 'done' : break print(line) print('done!') No True? Ye s... break... print 'Done' http:/ / en.wikipedia.org/ wiki/ Transporter_(Star_Trek)

Τελειώνοντας μια επανάληψη με συνέχεια Η δήλωση continue τελειώνει την τρέχουσα επανάληψη και επιστρέφει στην κορυφή του βρόγχου, όπου και αρχίζει την επόμενη επανάληψη while True: line = input('> ') if line == '#' : continue if line == 'done' : break print(line) print('done!') > hello there hello there > # don't print this > print this! print this! > done Done!

Τελειώνοντας μια επανάληψη με συνέχεια Η δήλωση continue τελειώνει την τρέχουσα επανάληψη και επιστρέφει στην κορυφή του βρόγχου, όπου και αρχίζει την επόμενη επανάληψη while True: line = input('> ') if line[0] == '#' : continue if line == 'done' : break print(line) print('done!') > hello there hello there > # don't print this > print this! print this! > done Done!

No True? while True: line = input('> )... if line[0] == '#' : continue if line == 'done' : break print(line) print('done!')... Ye s continue print 'Done'

Εντολή pass Μια «κενή» εντολή μπορεί να δοθεί με την εντολή pass. Χρήσιμη όπου απαιτείται εντολή αλλά δεν θέλουμε να δώσουμε, π.χ. n = 0 while n > 0 : pass print('dry off!')

Αόριστοι Βρόγχοι Οι βρόγχοι while ονομάζονται «αόριστοι βρόγχοι" επειδή συνεχίζουν μέχρι μια λογική κατάσταση να γίνει Ψευδής (False). Οι βρόγχοι που έχουμε δει μέχρι τώρα είναι αρκετά εύκολο να εξεταστούν για να δούμε αν θα τερματίσουν ή αν θα είναι «αόριστοι βρόγχοι. Μερικές φορές είναι δυσκολότερο να δούμε εάν θα τερματίσει ο βρόγχος ή όχι.

Definite Loops (Πεπερασμένοι Βρόγχοι) Αρκετά συχνά έχουμε μια λίστα με τα στοιχεία των γραμμών σε ένα αρχείο - ουσιαστικά ένα πεπερασμένο σύνολο από πράγματα. Μπορούμε να γράψουμε ένα βρόγχο για να τρέξει το βρόγχο μια φορά για κάθε ένα από τα στοιχεία σε ένα σύνολο, χρησιμοποιώντας το όρισμα for της Python για την κατασκευή. Οι βρόγχοι αυτοί ονομάζονται definite loops επειδή εκτελούνται με συγκεκριμένο αριθμό επαναλήψεων. Οι definite loops επαναλαμβάνονται μέσω των μελών ενός συνόλου.

Ένα απλό Definite Loop for i in [5, 4, 3, 2, 1] : print i print('blastoff!') 5 4 3 2 1 Blastoff!

Ένας Definite Loop με Συμβολοσειρές friends = ['Joseph', 'Glenn', 'Sally'] for friend in friends : print('happy New Year:', friend) print('done!') Happy New Year: Joseph Happy New Year: Glenn Happy New Year: Sally Done!

Ένα απλό Definite Loop Yes Done? No Move i ahead print i for i in [5, 4, 3, 2, 1] : print(i) print('blastoff!') 5 4 3 2 1 Blastoff! print 'Blast off!' Οι Definite loops (for loops) έχουν σαφείς μεταβλητές επανάληψης που αλλάζουν κάθε φορά μέσω ενός βρόγχου. Αυτές οι μεταβλητές επανάληψης κινούνται μέσω της ακολουθίας ή σετ.

Μια ματιά στο in... Η μεταβλητή επανάληψης "επαναλαμβάνει" μέσω της ακολουθίας (διατεταγμένο σύνολο). Μεταβλητή επανάληψης Ακολουθία πέντε στοιχείων Το block (Σώμα) του κώδικα εκτελείται μια φορά για κάθε τιμή μέσα στην ακολουθία. for i in [5, 4, 3, 2, 1] : print(i) Η μεταβλητή επανάληψης κινείται μέσα από όλες τις τιμές στην ακολουθία.

Ye s Done? No Move i ahead Η μεταβλητή επανάληψης "επαναλαμβάνει" μέσω της ακολουθίας (διατεταγμένο σύνολο). print i Το block (Σώμα) του κώδικα εκτελείται μια φορά για κάθε τιμή μέσα στην ακολουθία. for i in [5, 4, 3, 2, 1] : print(i) Η μεταβλητή επανάληψης κινείται μέσα από όλες τις τιμές στην ακολουθία.

i = 5 print i Ye s Done? No Move i ahead i = 4 print i i = 3 print i print i i = 2 print i for i in [5, 4, 3, 2, 1] : print(i) i = 1 print i

Πεπερασμένοι Βρόγχοι (Definite Loops) Αρκετά συχνά έχουμε μια λίστα με τα στοιχεία των γραμμών σε ένα αρχείο - ουσιαστικά ένα πεπερασμένο σύνολο από πράγματα. Μπορούμε να γράψουμε ένα βρόγχο για να τρέξει το βρόγχο μια φορά για κάθε ένα από τα στοιχεία σε ένα σύνολο, χρησιμοποιώντας το for για την κατασκευή. Αυτoί οι βρόγχοι ονομάζονται «πεπερασμένοι βρόγχοι», επειδή θα εκτελεστούν για ενα ακριβή αριθμό επαναλήψεων. Λέμε ότι «ο πεπερασμένος βρόγχος μετακινείται μέσα από τα μέλη ενός συνόλου».

Ιδιωματισμοί Βρόγχων: Τι κάνουμε με τους Βρόγχους Σημείωση: Ακόμα κι αν αυτά τα παραδείγματα είναι απλά, τα πρότυπα εφαρμόζονται σε όλα τα είδη των βρόγχων

Δημιουργώντας «έξυπνους» βρόγχους Το κόλπο είναι να "γνωρίζετε" κάτι για ολόκληρο το βρόγχο όταν είστε "κολλημένοι" γράφοντας κώδικα που βλέπει μόνο μία είσοδο τη φορά. Ορίστε μερικές μεταβλητές στις αρχικές τιμές Για το αντικείμενο στα δεδομένα: Ψάξτε για κάτι ή κάνετε κάτι για κάθε είσοδο ξεχωριστά, και ενημερώστε την μεταβλητή Κοιτάξτε τις μεταβλητές

Βρόγχος μέσα σε σύνολο print('before') for thing in [9, 41, 12, 3, 74, 15] : print(thing) print('after') $ python basicloop.py Before 9 41 12 3 74 15 After

Ποιός είναι ο μεγαλύτερος αριθμός;

Ποιός είναι ο μεγαλύτερος αριθμός; 3 41 12 9 74 15 l ar gest _so _f ar -1

Έυρεση Μέγιστης τιμής largest_so_far = -1 print('before', largest_so_far) for the_num in [9, 41, 12, 3, 74, 15] : if the_num > largest_so_far : largest_so_far = the_num print(largest_so_far, the_num) print('after', largest_so_far) $ python largest.py Before -1 9 9 41 41 41 12 41 3 74 74 74 15 After 74 Δημιουργούμε μια μεταβλητή που περιέχει τη μεγαλύτερη τιμή που έχουμε δει μέχρι τώρα. Εάν ο τρέχων αριθμός που εξετάζουμε είναι μεγαλύτερος, θα είναι η νέα μέγιστη τιμή που έχουμε δει μέχρι τώρα.

Αρίθμηση σε βρόγχο counter = 0 print('before', counter) for thing in [9, 41, 12, 3, 74, 15] : counter = counter + 1 print(counter, thing) print('after', counter) $ python countloop.py Before 0 1 9 2 41 3 12 4 3 5 74 6 15 After 6 Για να μετρήσουμε πόσες φορές έχουμε εκτελέσει έναν βρόγχο, εισάγουμε μια μεταβλητή - μετρητή που ξεκινά από το 0 και προσθέτουμε ένα σε αυτό κάθε φορά μέσω του βρόγχου.

Άθροισμα σε βρόγχο sum = 0 print('before', sum) for thing in [9, 41, 12, 3, 74, 15] : sum = sum + thing print(sum, thing) print('after', sum) $ python countloop.py Before 0 9 9 50 41 62 12 65 3 139 74 154 15 After 154 Για να προσθέσουμε μια τιμή που συναντάμε σε έναν βρόγχο, έχουμε εισαγάγει ένα μεταβλητό ποσό που ξεκινά από το 0 και προσθέτουμε την αξία με το άθροισμα κάθε φορά μέσω του βρόγχου.

Εύρεση Μέσου Όρου σε βρόγχο count = 0 sum = 0 print('before', count, sum) for value in [9, 41, 12, 3, 74, 15] : count = count + 1 sum = sum + value print(count, sum, value) print('after', count, sum, sum / count) $ python averageloop.py Before 0 0 1 9 9 2 50 41 3 62 12 4 65 3 5 139 74 6 154 15 After 6 154 25 Ο μέσος όρος (average) συνδιάζει τα πρότυπα αρίθμηση (counting) και σύνολο (sum) και διαιρεί όταν ο βρόγχος ολοκληρωθεί.

Φιλτράροντας ένα βρόγχο print('before') for value in [9, 41, 12, 3, 74, 15] : if value > 20: print('large number',value) print('after') $ python search1.py Before Large number 41 Large number 74 After Χρησιμοποιούμε μια δήλωση if στο loop για να εντοπίσουμε ή να φιλτράρουμε τα αποτελέσματα

Αναζήτηση με χρήση μεταβλητής Boolean found = False print('before', found) for value in [9, 41, 12, 3, 74, 15] : if value == 3 : found = True print(found, value) print('after', found) $ python search1.py Before False False 9 False 41 False 12 True 3 True 74 True 15 After True Αν απλά θέλουμε να αναζητήσουμε και να μάθουμε αν βρέθηκε μια τιμή, χρησιμοποιούμε μια μεταβλητή που ξεκινά ως False και μεταβάλλεται σε True μόλις βρούμε αυτό που ψάχνουμε.

Ποιός είναι ο μικρότερος αριθμός;

Ποιός είναι ο μικρότερος αριθμός; 9 41 12 3 74 15 smallest_so_far -1

Ποιός είναι ο μικρότερος αριθμός; 9 41 12 3 74 15 smallest_so_far None

Εύρεση της μικρότερης τιμής smallest = None print('before') for value in [9, 41, 12, 3, 74, 15] : if smallest is None : smallest = value elif value < smallest : smallest = value print(smallest, value) print('after', smallest) $ python smallest.py Before 9 9 9 41 9 12 3 3 3 74 3 15 After 3 Εχουμε ακόμα μια μεταβλητή που είναι η μικρότερη μέχρι στιγμής. Την πρώτη φορά που τρέχει η loop, η τιμή της smallest είναι None, οπότε λαμβάνουμε την value ορισμένη ως μικρότερη.

range() και slice copy : range(5) = 0, 1, 2, 3, 4 range(1,3) = 1, 2 range(0,9,3) = 0, 3, 6 words = ['cat', 'window', 'defenestrate'] for w in words[:]: # Loop over a slice copy of the entire list. if len(w) > 6: words.insert(0, w) words

Πρώτο Παράδειγμα Ταξινόμησης l = [34,5,6,7,2,90,23,87] flag = False # not sorted BubbleSort while not flag : flag = True # sorted for i in range(len(l)-1): if l[i] > l[i+1]: #swap tmp = l[i+1] l[i+1] = l[i] l[i] = tmp flag = False # not sorted

Βρόγχοι με else Η Python υποστηρίζει else σε βρόγχο ανακύκλωσης. Αν η εντολή else χρησιμοποιείται για το βρόγχο for, το else εκτελείται όταν ο βρόγχος εξαντλεί την επισκεψιμότητα της λίστας. Αν η εντολή else χρησιμοποιείται σε while, το else εκτελείται όταν η συνθήκη γίνεται False. for num in range(10,20): #to iterate between 10 to 20 for i in range(2,num): #to iterate on the factors of the number if num%i == 0: #to determine the first factor j=num/i #to calculate the second factor print('%d equals %d * %d' % (num,i,j)) break #to move to the next number, the #first FOR # else part of the loop else: print(num, 'is a prime number')

Οι χειριστές is και is not smallest = None print('before') for value in [3, 41, 12, 9, 74, 15] : if smallest is None : smallest = value elif value < smallest : smallest = value print(smallest, value) print('after', smallest) Η Python έχει τον χειριστή is που μπορεί να χρησιμοποιηθεί σε λογικές εκφράσεις. Σημαίνει είναι το ίδιο με αλλά συγκρίνει αντικείμενα όχι μόνο τιμές. Παρόμοιο σε λειτουργία, αλλά ισχυρότερο απο το == Το is not είναι επίσης λογικός χειριστής.

Περίληψη Βρόγχοι While (indefinite) Βρόγχοι Infinite Χρήση του break Χρήση του continue Βρόγχοι For (definite) Μεταβλητές επανάληψης Ιδιωματισμοί των Loop Μεγαλύτερο ή Μικρότερο