Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄"— Μεταγράφημα παρουσίασης:

1 Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄ 4.3.1 Δομή Επανάληψης

2 Στην πράξη πολύ λίγοι αλγόριθμοι χρησιμοποιούν μόνο τις δομές ακολουθίας και επιλογής Συνήθως στα ρεαλιστικά προβλήματα χρειάζεται μία σειρά ενεργειών να επαναληφθεί πολλές φορές

3 Δομή Επανάληψης Χρήση: μία ακολουθία εντολών πρέπει να εφαρμοσθεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι κοινό. Παράδειγμα: τόκοι καταθέσεων ταμιευτηρίου Ο υπολογισμός των τόκων πρέπει να γίνει για όλους τους λογαριασμούς της τράπεζας, άρα η πράξη τόκος = ποσό * επιτόκιο πρέπει να εκτελεσθεί για όλους τους τραπεζικούς λογαριασμούς

4 Δύο τύποι επαναλήψεων Προκαθορισμένοι: το πλήθος των επαναλήψεων είναι δεδομένο πριν αρχίσουν οι επαναλήψεις (for) Μη προκαθορισμένοι ή απροσδιόριστοι: το πλήθος των επαναλήψεων καθορίζεται κατά τη διάρκεια της εκτέλεσης των εντολών του σώματος της επανάληψης (while)

5 Βρόχος (loop) Είναι μια ακολουθία εντολών οι οποίες δηλώνονται μία φορά, αλλά μπορούν να εκτελεστούν πολλές φορές για έναν καθορισμένο αριθμό επαναλήψεων (for) ή για όσο ισχύει μία συνθήκη (while βρόχος)

6 Οι βρόχοι for εκτελούνται για συγκεκριμένο πλήθος φορών
Για τη δημιουργία της χρησιμοποιείται η συνάρτηση range() for onoma_metavlitis in range (αρχή, μέχρι, βήμα): Εντολή 1 Εντολή 2 ….. Εντολή ν

7 Εμφάνιση της λέξης ΚΑΛΗΜΕΡΑ 5 φορές
for i in range (5): print ‘ ΚΑΛΗΜΕΡΑ ’ Εμφάνιση της λέξης ΚΑΛΗΜΕΡΑ 5 φορές

8 H ακολουθία range Ενσωματωμένη συνάρτηση της Python
Δομή μορφής: (αρχή, μέχρι, βήμα), όπου: Αρχή , μέχρι , βήμα ακέραιοι αριθμοί Οι ενδείξεις της «αρχής» και του «βήματος» δεν είναι υποχρεωτικές H ένδειξη «μέχρι» πρέπει πάντα να αναφέρεται range(4)  (0,1,2,3) range(1,10)  (1,2,3,4,5,6,7,8,9) range(5,50,10)  (5,15,25,35,45)

9 for i in range (5): print i
0 , 1 , 2 , 3 , 4 for i in range (2,5): print i 2 , 3 , 4 for i in range (2,10,2): print i 2 , 4 , 6 , 8 10 , 8 , 6 , 4, for i in range (10,2,-2): print i

10 for variable in sequence:
Εντολές Η εντολή for κάνει επανάληψη διατρέχοντας τα στοιχεία μιας ακολουθίας, για παράδειγμα μιας συμβολοσειράς ή μιας λίστας με τη σειρά με την οποία αυτά εμφανίζονται στην ακολουθία for c in “hello”: print(c)

11 Να γραφεί αλγόριθμος ο οποίος θα διαβάζει την ακτίνα ενός κύκλου και θα υπολογίζει και θα εμφανίζει το εμβαδόν του Αλγόριθμος παράδειγμα Εμφάνισε “Δώσε ακτίνα κύκλου” Διάβασε R E  3.14 * R ^ 2 Εμφάνισε “Εμβαδόν = ”, Ε Τέλος παράδειγμα

12 Να γραφεί αλγόριθμος ο οποίος για 50 κύκλους θα διαβάζει την ακτίνα του κύκλου και θα υπολογίζει και θα εμφανίζει το εμβαδόν τους Αλγόριθμος παράδειγμα Για i από 1 μέχρι 50 Εμφάνισε “Δώσε ακτίνα ”, i , “ου κύκλου” Διάβασε R E  3.14 * R ^ 2 Εμφάνισε “Εμβαδόν = ”, Ε Τέλος_επανάληψης Τέλος παράδειγμα

13 R = input ( “ Δώσε ακτίνα κύκλου ” )
Να γραφεί πρόγραμμα σε Python το οποίο για 5 κύκλους θα διαβάζει την ακτίνα του κύκλου και θα υπολογίζει και θα εμφανίζει το εμβαδόν τους for i in range (5): R = input ( “ Δώσε ακτίνα κύκλου ” ) E = 3.14 * R ** 2 print “ Εμβαδόν = ” , Ε

14 print ' Δώσε ακτίνα ‘ , i , ' κύκλου ' R = input() E = 3.14 * R ** 2
Να γραφεί πρόγραμμα σε Python το οποίο για 5 κύκλους θα διαβάζει την ακτίνα του κύκλου και θα υπολογίζει και θα εμφανίζει το εμβαδόν τους for i in range (1,6): print ' Δώσε ακτίνα ‘ , i , ' κύκλου ' R = input() E = 3.14 * R ** 2 print ‘Εμβαδόν = ’, Ε

15 print ' Δώσε ακτίνα ‘ , i+1 , ' κύκλου ' R = input() E = 3.14 * R ** 2
Να γραφεί πρόγραμμα σε Python το οποίο για 5 κύκλους θα διαβάζει την ακτίνα του κύκλου και θα υπολογίζει και θα εμφανίζει το εμβαδόν τους for i in range (5): print ' Δώσε ακτίνα ‘ , i+1 , ' κύκλου ' R = input() E = 3.14 * R ** 2 print ‘Εμβαδόν = ’, Ε

16 Να γραφεί αλγόριθμος ο οποίος θα διαβάζει 100 αριθμούς και θα υπολογίζει και θα εμφανίζει το άθροισμά τους Αλγόριθμος Άθροισμα_Αριθμών Σ0 Για i από 1 μέχρι 100 Εμφάνισε “Δώσε αριθμό” Διάβασε Α Σ  Σ + Α Τέλος_επανάληψης Εμφάνισε “Άθροισμα αριθμών = ”, Σ Τέλος Άθροισμα_Αριθμών

17 Να γραφεί πρόγραμμα σε Python το οποίο θα διαβάζει 7 αριθμούς και θα υπολογίζει και θα εμφανίζει το άθροισμά τους athroisma = 0 for i in range(7) : x = input ( “ Δώσε έναν αριθμό: " ) athroisma = athroisma + x print ‘ To αποτέλεσμα είναι ’ , athroisma

18 print ‘ Άθροισμα = ’ , athroisma
Να γραφεί πρόγραμμα σε Python το οποίο θα διαβάζει 7 αριθμούς και θα υπολογίζει και θα εμφανίζει το άθροισμά τους athroisma = 0 for i in range(5) : x = input ( “ Δώσε έναν αριθμό: " ) athroisma = athroisma + x print ‘ Άθροισμα = ’ , athroisma print ‘ Τελικό άθροισμα = ’ , athroisma

19 Να γραφεί πρόγραμμα σε Python το οποίο θα εμφανίζει τους άρτιους αριθμούς στο διάστημα [1,100] for i in range (2,101,2): print i 2 , 4 , 6 , 8 , 10 , 12 , … , 98 , 100

20

21 Δομή Επανάληψης με while βρόχο
μη προκαθορισμένος αριθμός επαναλήψεων υπάρχει περίπτωση να μην εκτελεστούν οι εντολές του βρόχου ο έλεγχος της συνθήκης πραγματοποιείται πριν από την εκτέλεση των εντολών του βρόχου Εκτελούνται οι εντολές όσο η συνθήκη είναι αληθής

22 πριν το βρόχο while θα πρέπει αρχικά να δώσουμε μία τιμή στη μεταβλητή που ελέγχει τη συνθήκη του βρόχου, ώστε ανάλογα να εκτελεστεί ή όχι ο βρόχος Αρχική τιμή μεταβλητής While ονομα_μεταβλητής <συνθήκη>: Εντολή 1 Εντολή 2 …. Εντολή ν θα πρέπει μέσα στο μπλοκ εντολών να υπάρχει κατάλληλη εντολή, ώστε να εξασφαλίζεται ότι κάποια στιγμή η συνθήκη θα γίνει ψευδής και θα διακοπεί ο βρόχος. Διαφορετικά ο βρόχος δε θα τερματίζει (ΑΤΕΡΜΩΝ ΒΡΟΧΟΣ)

23 Να γραφεί αλγόριθμος ο οποίος διαβάζει το όνομα ενός μαθητή, τους βαθμούς του σε τρία μαθήματα και υπολογίζει και τυπώνει το μέσο όρο του. Ο αλγόριθμος να σταματάει, όταν για όνομα μαθητή δοθεί το κενό εμφανίζοντας το πλήθος των μαθητών για τους οποίους υπολογίστηκε ο μέσος όρος.

24 Αλγόριθμος Μέσος_όρος πλήθος  0 Εμφάνισε “Δώσε όνομα μαθητή” Διάβασε όνομα Όσο όνομα ≠ '' '' επανάλαβε Διάβασε β1, β2 , β3 ΜΟ (β1 + β2 + β3) / 3 Εμφάνισε “ Ο μέσος όρος είναι: ” , ΜΟ πλήθος  πλήθος + 1 Εμφάνισε “Δώσε όνομα επόμενου μαθητή” Τέλος_επανάληψης Εμφάνισε πλήθος Τέλος Μέσος_όρος

25 plithos=0 name = raw_input ( “ Δώσε όνομα μαθητή ” ) while name
plithos=0 name = raw_input ( “ Δώσε όνομα μαθητή ” ) while name != '' '' : print ‘ Δώσε τους τρεις βαθμούς… ’ b1 = float ( input() ) b2 = float ( input() ) b3 = float ( input() ) mo = float ( ( b1 + b2 + b3 ) / 3 ) print “ Ο μέσος όρος είναι: ” , mo plithos = plithos + 1 name = raw_input ( “ Δώσε όνομα επόμενου μαθητή ” ) print ‘ Αριθμός μαθητών που δόθηκαν = ’ , plithos

26 plithos=0 name = raw_input ( “ Δώσε όνομα μαθητή ” ) while name
plithos=0 name = raw_input ( “ Δώσε όνομα μαθητή ” ) while name != '' '' : athroisma = 0 for i in range ( 3 ) : b = float ( input ( ‘ Δώσε βαθμό… ’ ) ) athroisma = athroisma + b mo = float ( athroisma / 3 ) print “ Ο μέσος όρος είναι: ” , mo plithos = plithos + 1 name = raw_input ( “ Δώσε όνομα επόμενου μαθητή ” ) print ‘ Αριθμός μαθητών που δόθηκαν = ’ , plithos

27 Τιμή φρουρός Η τιμή η οποία τερματίζει μία επανάληψη
Στο προηγούμενο παράδειγμα ήταν το κενό

28 Σε ένα σουπερμάρκετ κάθε πελάτης δικαιούται μια δωροεπιταγή 6 € αν συμπληρώσει 200 πόντους. Να αναπτυχθεί αλγόριθμος ο οποίος θα διαβάζει τους πόντους που κερδίζει ένας συγκεκριμένος πελάτης σε κάθε επίσκεψη στο σουπερμάρκετ και θα εμφανίζει μετά από πόσες επισκέψεις παίρνει τη δωροεπιταγή και ποιος είναι ο μέσος όρος πόντων σε κάθε επίσκεψη.

29 Αλγόριθμος Παράδειγμα άθροισμα  0 πλήθος  0 Όσο άθροισμα < 200 επανάλαβε Διάβασε πόντοι άθροισμα  άθροισμα + πόντοι πλήθος  πλήθος + 1 Τέλος_επανάληψης ΜΟ  άθροισμα / πλήθος Εμφάνισε “Πλήθος επισκέψεων : ” , πλήθος Εμφάνισε “Μέσος όρος πόντων : ”, ΜΟ Τέλος Παράδειγμα

30 athroisma = 0 plithos = 0 while athroisma < 200 : points = input ( ‘ Δώσε πόντους επίσκεψης… ’ ) athroisma = athroisma + points plithos = plithos + 1 print ‘ Άθροισμα πόντων μέχρι τώρα…’ , athroisma print ‘ Αριθμός επισκέψεων μέχρι τώρα…’ , plithos mo = float ( athroisma / plithos ) print ‘ Τελικό άθροισμα πόντων : ’ , athroisma print ‘ Τελικό πλήθος επισκέψεων : ’ , plithos print ‘ Μέσος όρος πόντων : ’ , mo

31 Παράδειγμα 2. Να γραφεί αλγόριθμος που να διαβάζει άγνωστο πλήθος αριθμών και να υπολογίζει και να εμφανίζει το μέσο όρο τους. Η διαδικασία εισαγωγής των αριθμών να σταματά όταν για αριθμός δοθεί το μηδέν.

32 Αλγόριθμος Βασικό_Παράδειγμα άθροισμα  0 πλήθος  0 Εμφάνισε “ Δώστε ένα αριθμό ” Διάβασε Α Όσο Α ≠ 0 επανάλαβε άθροισμα  άθροισμα + Α πλήθος  πλήθος + 1 Εμφάνισε “ Δώστε επόμενο αριθμό ή μηδέν για έξοδο ” Τέλος_επανάληψης Αν πλήθος ≠ 0 τότε ΜΟ  άθροισμα / πλήθος Εμφάνισε “ Μέσος όρος αριθμών : ” , ΜΟ αλλιώς Εμφάνισε “ Δεν δόθηκαν αριθμοί ” Τέλος_αν Τέλος Βασικό_Παράδειγμα

33 Δοκιμάστε να τρέξετε το πρόγραμμα δίνοντας ως πρώτη τιμή
athroisma = 0 plithos = 0 a = input ( ‘ Δώσε έναν αριθμό… ’ ) while a != 0 : athroisma = athroisma + a plithos = plithos + 1 a = input ( ‘ Δώσε έναν αριθμό μηδέν για τερματισμό…’ ) mo = float ( athroisma / plithos ) print ‘ Μέσος όρος αριθμών: ’ , mo Τι παρατηρείτε;;; Διορθώστε το λάθος… Δοκιμάστε να τρέξετε το πρόγραμμα δίνοντας ως πρώτη τιμή στο a το μηδέν

34 athroisma = 0 plithos = 0 a = input ( ‘ Δώσε έναν αριθμό… ’ ) while a
athroisma = 0 plithos = 0 a = input ( ‘ Δώσε έναν αριθμό… ’ ) while a != 0 : athroisma = athroisma + a plithos = plithos + 1 a = input ( ‘ Δώσε έναν αριθμό μηδέν για τερματισμό…’ ) if plithos != 0 : mo = float ( athroisma / plithos ) print ‘ Μέσος όρος αριθμών: ’ , mo else: print ‘Δεν δόθηκαν αριθμοί ’


Κατέβασμα ppt "Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google