Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς
Δομή επιλογής στην Python Ασκήσεις 1. Τι θα εμφανίσει καθένα από τα ακόλουθα προγράμματα Python; Α x=5 if x>5: x=x+4 else: x=x-4 print(x)
Β x=7 if x>3: x=x+4 else: x=x-4 print(x)
Γ
Δ
x=5 if x>=5: x=x+4 if x<5: x=x-4 print(x)
x=7 if x>5: x=x-4 if x<5: x=x+6 print(x)
2. Τι θα εμφανίσουν οι παρακάτω εντολές Python στην περίπτωση που η μεταβλητή x πάρει την τιμή 19 (μέσω της εντολής input()), σε καθεμία από τις περιπτώσεις Α και Β; Α
B x=int(input()) if x<=10: print('Μέτρια') else: if x<=13: print('Σχεδόν καλά') else: if x<=16: print('Καλά') else: if x<=18: print('Πολύ καλά') else: print('Άριστα')
x=int(input()) if x>=10: print('Μέτρια') if x>10 and x<=13: print('Σχεδόν καλά') if x>13 and x<=16: print('Καλά') if x>16 and x<=18: print('Πολύ καλά') if x>18 and x<=20: print('Άριστα')
3. Ποιες οι τιμές και των τριών μεταβλητών μετά την εκτέλεση των ακόλουθων εντολών Python; Α x=5 y=3 z=7 if x>y: x=y-1 else: y=x-1 print(x, y, z)
Δομή επιλογής στην Python
Β x=5 y=3 z=7 if x<y: x=y-1 else: y=x-1 print(x, y, z)
Γ x=5 y=3 z=7 if x>y: if y>z: if x>z: x=-1 else: y=-2 else: x=-13 else:
1
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς x=-4 print(x, y, z) 4. Τι θα εμφανίσουν οι παρακάτω εντολές της Python; a=0 b=5 c=10 if a>10: if b>20: if c>10: print(c) else: print(2*c) else: print(b) else: if b<10: print(a) 5. Τι θα εμφανίσει το παρακάτω πρόγραμμα Python; a=2 b=3 c=6 d=3 if c-d>0: if b<0: print(a) else: b=d*d-a print(b) else: c=a+b print(c) 6. Τι θα εμφανίσει το παρακάτω πρόγραμμα Python αν έχουμε ως είσοδο τους αριθμούς: A. 1η περίπτωση: 4 και 12 B. 2η περίπτωση: 3 και 1 C. 3η περίπτωση: 7 και 7 a=int(input()) b=int(input()) if a-b>0: a=a*a else: b=b*b print(a,b)
Δομή επιλογής στην Python
2
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς 7. Να γραφεί πρόγραμμα Python που θα διαβάσει δυο αριθμούς a και b και θα εμφανίσει ποιος είναι ο μεγαλύτερος και ποιος είναι ο μικρότερος (και τα δυο μηνύματα) εκτός αν είναι ίσοι οπότε θα εκτυπώνει το μήνυμα «ΙΣΟΙ». Παράδειγμα Αν οι δύο αριθμοί ήταν a=10 και ο b=5 το πρόγραμμα να εμφανίσει μήνυμα της μορφής «ο 10 ήταν ο μεγαλύτερος και ο 5 ο μικρότερος» και όχι μήνυμα της μορφής «ο a ήταν ο μεγαλύτερος και ο b ο μικρότερος». 8. Να γραφεί πρόγραμμα Python που θα διαβάσει τρεις ακέραιους αριθμούς που θα τους αποθηκεύσει στις μεταβλητές DD, MM, YY, οι οποίοι αναπαριστούν μια ημερομηνία της μορφής: DD MM YY όπου DD = ημέρα , MM = μήνας ,YY = έτος και θα μετατρέψει και εμφανίσει την ημερομηνία στην συνηθισμένη ολογράφως μορφή της. Για παράδειγμα, αν είχαν δοθεί οι αριθμοί 20, 8, 1990 στα DD, MM ΚΑΙ YY αντίστοιχα θα εμφανίζει «20 Αυγούστου 1990». 9. Να γραφεί πρόγραμμα Python που θα διαβάσει τους συντελεστές a και b της εξίσωσης α’ βαθμού: ax+b=0 και θα εμφανίσει την κατάλληλη απάντηση ανάλογα με τις τιμές των a και b. Υπόδειξη 1η Περίπτωση: αν a<>0 τότε υπάρχει μία ρίζα x= - b / a 2η Περίπτωση: αν a=0 τότε 2α Περίπτωση: αν b=0 τότε η εξίσωση είναι αόριστη 2β Περίπτωση: αν b<>0 τότε η εξίσωση είναι αδύνατη 10. Να γραφεί πρόγραμμα Python που θα διαβάσει τους συντελεστές a, b και c της εξίσωσης β’ βαθμού: ax2+bx+c=0 και θα εμφανίσει την κατάλληλη απάντηση ανάλογα με τις τιμές των a, b και c. Σημείωση Υποθέστε ότι το a είναι διάφορο του μηδενός. Υπόδειξη Υπολογίστε την διακρίνουσα D:
D b 2 4ac και αν
b D 2a b D=0, υπάρχει μια διπλή ρίζα : x 2a D > 0, υπάρχουν 2 ρίζες : x1 , x 2
D < 0, δεν υπάρχουν πραγματικές ρίζες
Δομή επιλογής στην Python
3
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς 11. Να επεκταθεί το πρόγραμμα της προηγούμενης άσκησης για κάθε τιμή του a, δηλαδή a<>0 αλλά και a=0. Τι παρατηρείται; Μήπως με την βοήθεια ενός σύνθετου «if» μπορείτε να χωρίσετε δύο περιπτώσεις για το a και να εργαστείτε όπως περίπου κάνατε στις δύο προηγούμενες ασκήσεις, δηλαδή: ax2+bx+c=0, αν a<>0 bx + c=0, αν a=0 12. Ένα προϊόν πωλείται ως εξής: α) Για λιγότερα από 100 τεμάχια προς 12 € το ένα. β) Για 100 ή περισσότερα τεμάχια προς 10 € το ένα. Να γραφεί πρόγραμμα Python που θα διαβάσει τον αριθμό των τεμαχίων που πουλήθηκαν και θα υπολογίσει και εμφανίσει τα χρήματα που εισπράχθηκαν. 13. Να γραφεί πρόγραμμα Python που θα διαβάσει 3 αριθμούς και θα εμφανίσει τον μεγαλύτερο από αυτούς. Για παράδειγμα αν είχαν δοθεί οι αριθμοί 10,5,12 να εμφανίσει το μήνυμα «Ο μεγαλύτερος αριθμός ήταν ο 12». Θεωρείστε ότι όλοι οι αριθμοί είναι διαφορετικοί μεταξύ τους. 14. Να γραφεί πρόγραμμα Python που θα διαβάσει 3 αριθμούς και θα εμφανίσει τον μεσαίο από αυτούς. Για παράδειγμα αν είχαν δοθεί οι αριθμοί 10,5,12 να εμφανίσει το μήνυμα «Ο μεσαίος αριθμός ήταν ο 10». Θεωρείστε ότι όλοι οι αριθμοί είναι διαφορετικοί μεταξύ τους. 15. Η κεντρική θέρμανση ενός εργοστασίου ξεκινά αν η τιμή θερμοκρασίας από τρία σημεία είναι μικρότερη από 13ο C (και στα τρία σημεία ταυτοχρόνως). Να γραφεί πρόγραμμα Python που θα διαβάσει 3 θερμοκρασίες και θα εμφανίσει το μήνυμα «ON» αν λειτουργεί η θέρμανση ή «OFF» αν δεν λειτουργεί. 16. Να γραφεί πρόγραμμα Python που θα διαβάσει δύο αριθμούς και το σύμβολο μιας από τις 4 πράξεις (+ - * / ). Ανάλογα με το είδος της πράξης, να γίνει η αντίστοιχη πράξη και να εμφανιστεί το αποτέλεσμα ενώ αν η πράξη δεν ορίζεται να εμφανιστεί το μήνυμα «Error». (Θεωρήστε ότι ο χρήστης πληκτρολογεί μόνο ένα από τα γνωστά τέσσερα σύμβολα πράξεων.) 17. Ένας μαθητής εξετάζεται σε ένα μάθημα 3 φορές, 2 προφορικά και μία γραπτά. Να γραφεί πρόγραμμα Python που θα διαβάσει τους τρεις βαθμούς και θα εμφανίσει τον μέσο όρο του καθώς και ένα μήνυμα εάν πέρασε το μάθημα ή όχι. Ο μαθητής περνάει το μάθημα εάν ο μέσος όρος του είναι μεγαλύτερος ή ίσος του 10. 18. Ένας πωλητής δικαιούται 30 € φιλοδώρημα αν η εβδομαδιαία επίδοση του υπερβαίνει τα 200 €. Να γραφεί πρόγραμμα Python που θα διαβάσει την επίδοση του πωλητή και αν δικαιούται φιλοδώρημα να το εμφανίσει, ενώ σε αντίθετη περίπτωση να εμφανίσει «Δεν δικαιούται φιλοδώρημα». 19. Μία εταιρεία θέλει να δώσει επίδομα στους υπαλλήλους της με βάση τις γραμματικές γνώσεις σε ποσοστό του βασικού μισθού ως εξής: A. 2% για τους αποφοίτους Δημοτικού. B. 5% για τους αποφοίτους Γυμνασίου. C. 10% για τους αποφοίτους Λυκείου.
Δομή επιλογής στην Python
4
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς Οι υπάλληλοι ανάλογα με τις γραμματικές τους γνώσεις έχουν έναν κωδικό σπουδών ο οποίος χαρακτηρίζει τις γραμματικές τους γνώσεις και ο οποίος είναι: A. 1, για τους αποφοίτους Δημοτικού B. 2, για τους αποφοίτους Γυμνασίου C. 3, για τους αποφοίτους Λυκείου Να γραφεί πρόγραμμα Python που θα διαβάσει τον βασικό μισθό και τον κωδικό σπουδών ενός υπαλλήλου και θα υπολογίσει και εμφανίσει το επίδομα σπουδών που θα πάρει. 20. Το επίδομα παιδιών ενός υπαλλήλου είναι ποσοστό του βασικού του μισθού με βάση την παρακάτω εικονική κλίμακα: A. Μέχρι 2 παιδιά επίδομα 4% για το καθένα. B. Για 3 παιδιά 6% για το καθένα. C. Για 4 παιδιά και πάνω 10% για το καθένα. Να γραφεί πρόγραμμα Python που θα διαβάσει τον βασικό μισθό και τον αριθμό των παιδιών ενός υπαλλήλου και θα εμφανίσει το επίδομα παιδιών που θα πάρει. 21. Να γραφεί πρόγραμμα Python που θα διαβάσει έναν θετικό ακέραιο αριθμό. Το πρόγραμμα να εμφανίσει ολογράφως (με λόγια δηλαδή) το ακέραιο υπόλοιπο της διαίρεσης του με το 3. Για παράδειγμα αν ο αριθμός ήταν ο 10 τότε το πρόγραμμα θα εμφανίσει «Ένα». (Υπενθυμίζεται ότι από τα μαθηματικά τα δυνατά ακέραια υπόλοιπα της διαίρεσης ενός αριθμού με το 3 είναι 0, 1, 2). 22. Να γραφεί πρόγραμμα Python που θα διαβάσει έναν θετικό ακέραιο αριθμό και θα εμφανίσει αν ο αριθμός αυτός είναι μονός ή ζυγός. (Υπόδειξη: τι ακέραια υπόλοιπα διαίρεσης δίνουν οι ζυγοί και τι οι μονοί όταν διαιρούνται με το 2;) 23. Να γραφεί πρόγραμμα Python που θα διαβάσει έναν αριθμό και θα εμφανίσει την απόλυτη τιμή του χρησιμοποιώντας την σύνθετη επιλογή και στην συνέχεια με την απλή επιλογή. 24. Τα αυτοκίνητα που ενοικιάζει ένα γραφείο χρεώνονται κλιμακωτά ως εξής: 1 € το χιλιόμετρο για τα πρώτα 100 χιλιόμετρα και 2 € για τα υπόλοιπα χιλιόμετρα, συν ένα πάγιο ποσό 10€. Να γραφεί πρόγραμμα Python που θα διαβάσει τα χιλιόμετρα που διανύθηκαν και θα υπολογίσει και θα εμφανίσει την συνολική χρέωση. (Το πάγιο ισχύει και για τις δυο περιπτώσεις).
100 Α Β
Υπόδειξη Παράδειγμα κλιμακωτού υπολογισμού
Δομή επιλογής στην Python
5
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς Α. 50 km χρεώνονται 50*1+10=60€ Β. 150 km χρεώνονται 100*1+50*2+10=210€ Παράδειγμα μη κλιμακωτού υπολογισμού (το οποίο δεν το χρειάζεστε στην άσκηση αυτή) Α. 50 km χρεώνονται 50*1+10=60€ Β. 150 km χρεώνονται 150*2+10=310€ 25. Ο υπολογισμός της αξίας της κατανάλωσης ηλεκτρικής ενέργειας γίνεται κλιμακωτά από τα εξής στοιχεία : Πάγιο 3,5 €, οι πρώτες 200 KWH προς 0,2 € / KWH, οι επόμενες 400 KWH προς 0,3 € / KWH, οι επόμενες 800 KWH προς 0,4 € / KWH και οι επιπλέον προς 0,5 € / KWH. Το παραπάνω ποσό επιβαρύνεται με 19% ΦΠΑ ο οποίος υπολογίζεται στην αξία και το πάγιο. Να γραφεί πρόγραμμα Python που θα διαβάσει τις KWH που καταναλώθηκαν και θα υπολογίσει και εμφανίσει την αξία του ρεύματος που καταναλώθηκε.
200
600
1400
Α Β Γ Δ Υπόδειξη Παράδειγμα κλιμακωτού υπολογισμού Α. 50 KWH χρεώνονται 50*0.2 Β. 300 KWH χρεώνονται 200*0.2+100*0.3 Γ. 700 KWH χρεώνονται 200*0.2+400*0.3+100*0.4 Δ. 1500 KWH χρεώνονται 200*0.2+400*0.3+800*0.4+100*0.5 Παράδειγμα μη κλιμακωτού υπολογισμού (το οποίο δεν το χρειάζεστε στην άσκηση αυτή) Α. 50 KWH χρεώνονται 50*0.2 Β. 300 KWH χρεώνονται 300*0.3 Γ. 700 KWH χρεώνονται 700*0.4 Δ. 1500 KWH χρεώνονται 1500*0.5 26. Να γραφεί πρόγραμμα Python που θα διαβάσει έναν ακέραιο αριθμό από 1 έως 4 ο οποίος αντιστοιχεί σε μια εποχή του χρόνου και θα εμφανίσει την αντίστοιχη εποχή ( 1 = άνοιξη, 2 = φθινόπωρο, 3 = χειμώνας, 4 = καλοκαίρι). 27. Κάποιος αγοράζει ένα προϊόν με δόσεις ενός χρόνου. Ανάλογα με τον αριθμό των δόσεων έχουμε: A. 1 δόση (δηλαδή μετρητοίς) επιβάρυνση 0%.
Δομή επιλογής στην Python
6
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς B. 2 δόσεις επιβάρυνση 10%. C. 3 δόσεις επιβάρυνση 20%. D. 4 ή περισσότερες δόσεις επιβάρυνση 30%. Να γραφεί πρόγραμμα Python που θα διαβάσει το ποσό και τον αριθμό των δόσεων και θα εμφανίσει το ποσό που πρέπει να πληρωθεί στην πρώτη δόση. (Εννοείται πως όλες οι δόσεις είναι ισόποσες). Υπόδειξη Το ποσό της δόσης υπολογίζεται από τον τύπο:
όό
ό ό * όά όό
28. Να συμπληρωθούν τα κενά ώστε οι επόμενες εντολές να εμφανίσουν τον μεγαλύτερο αριθμό από τους δύο που διαβάστηκαν. a=float(input('a=')) b=float(input('b=')) if a ……… b: ……… print(a) 29. Να συμπληρωθούν τα κενά ώστε οι επόμενες εντολές να εμφανίσουν την τετραγωνική ρίζα ή το μήνυμα «Δεν υπάρχει ρίζα» αν αυτή δεν ορίζεται. import …… a=float(input('a=')) if a>=0: riza=math………(a) print(riza) ………: print('Δεν υπάρχει ρίζα') 30. Να γραφεί πρόγραμμα Python που θα διαβάσει δύο αριθμούς Α και Β και θα καταχωρεί τον μεγαλύτερο σε μεταβλητή MAX και τον μικρότερο σε μεταβλητή MIN. Στο τέλος θα εμφανίζονται οι δυο αυτές μεταβλητές. (Ακόμα και σε περίπτωση ισότητας θα γίνεται καταχώρηση στις MAX και MIN, δηλαδή θα μπουν σε αυτές δύο ίδιοι αριθμοί). 31. Να γραφεί πρόγραμμα Python που θα διαβάσει δύο αριθμούς και θα υπολογίσει και εμφανίσει: αν είναι ομόσημοι, τον μέσο όρο τους, διαφορετικά την διαφορά τους κατά απόλυτη τιμή. 32. Η βαθμολογική κλίμακα για την απόκτηση του LOWER είναι 1 μέχρι 100. Κάποιος δεν πετυχαίνει αν συγκεντρώσει κάτω από 55 μονάδες, πετυχαίνει με C αν συγκεντρώσει από 55 μέχρι 70 (χωρίς το 70) μονάδες, πετυχαίνει με B αν συγκεντρώσει από 70 μέχρι 85 (χωρίς το 85) μονάδες, πετυχαίνει με A αν συγκεντρώσει από 85 μονάδες και πάνω. Να γράψετε πρόγραμμα Python που θα διαβάσει το ονοματεπώνυμο ενός μαθητή και την βαθμολογία που συγκέντρωσε και θα εμφανίσει το αποτέλεσμα.
Δομή επιλογής στην Python
7
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς 33. Να γράψετε πρόγραμμα Python το οποίο θα διαβάσει την ηλικία ενός ανθρώπου, και αναλόγως με αυτήν θα εμφανίσει ένα μήνυμα στην οθόνη του υπολογιστή. Το μήνυμα που θα εμφανίσει θα είναι της αρεσκείας σας, ενώ οι κατηγορίες που θα συναντά το πρόγραμμα θα είναι οι ακόλουθες: A. Μεγαλύτερος ή ίσος από 0 και μικρότερος από 18 χρονών. B. Μεγαλύτερος ή ίσος από 18 και μικρότερος από 30 χρονών. C. Μεγαλύτερος ή ίσος από 30 και μικρότερος από 60 χρονών. D. Μεγαλύτερος ή ίσος από 60 χρονών. Σε οποιαδήποτε άλλη περίπτωση θα εμφανίσει «ΛΑΘΟΣ», 34. Να γράψετε πρόγραμμα Python το οποίο θα διαβάσει το βάρος ενός ανθρώπου, και αναλόγως με αυτό θα εμφανίσει ένα μήνυμα στην οθόνη του υπολογιστή. Το μήνυμα που θα εμφανίσει θα είναι της αρεσκείας σας, ενώ οι κατηγορίες που θα συναντά το πρόγραμμα θα είναι οι ακόλουθες: A. Βάρος < 50 . B. 50 <= Βάρος < 70. C. 70 <= Βάρος <90. D. Βάρος >=90. 35. Να γραφεί πρόγραμμα Python το οποίο θα διαβάσει δύο ακέραιους θετικούς αριθμούς και θα εμφανίσει αν ο ένας είναι πολλαπλάσιος του άλλου ή όχι. (Πολλαπλάσιοι είναι οι αριθμοί που έχουν ακέραιο υπόλοιπο 0). 36. Η κυβέρνηση μιας χώρας όπου είχαν ξεσπάσει απεργίες από τους εργαζόμενους στον τομέα καθαριότητας ψήφισε ένα νόμο που καθόριζε τις προϋποθέσεις για να κηρυχθεί απεργία από μια συνδικαλιστική ένωση. Σύμφωνα με το νόμο πρέπει να ψηφίσουν υπέρ τουλάχιστον το 75% των παρόντων εργαζόμενων για να γίνει η απεργία, διαφορετικά δεν μπορεί να γίνει. Απαραίτητη προϋπόθεση όμως για την διενέργεια των εκλογών είναι οι παρόντες στην συνέλευση εργαζόμενοι να είναι τουλάχιστον το 50% του συνόλου των εργαζομένων. Αναπτύξτε πρόγραμμα Python που να διαβάσει τον αριθμό των παρόντων, των αριθμό των συνολικών εργαζόμενων και τον αριθμό αυτών που ψήφισαν υπέρ της απεργίας και να εμφανίσει το αποτέλεσμα της ψηφοφορίας. Το αποτέλεσμα της συνέλευσης μπορεί να είναι: «Γίνεται απεργία», «Δεν γίνεται απεργία», «Έλλειψη απαρτίας». 37. Να γραφεί πρόγραμμα Python που να διαβάσει έναν αριθμό x και να υπολογίσει και εμφανίσει την τιμή της παρακάτω παράστασης. (Σε περίπτωση που δεν ορίζεται θα εμφανίσει «Δεν ορίζεται»)
x x , x 1 x 1 x 3 A 3 x x 9 , x 1 x 3 x 2 38. Να γραφεί πρόγραμμα Python που να διαβάσει έναν αριθμό x και να υπολογίσει και εμφανίσει την τιμή της παρακάτω παράστασης. (Σε περίπτωση που δεν ορίζεται θα εμφανίσει «Δεν ορίζεται»)
A x 1
Δομή επιλογής στην Python
1 x3
8
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς 39. Να γραφεί πρόγραμμα Python που να διαβάσει έναν αριθμό x να υπολογίσει και εμφανίσει την τιμή της παρακάτω παράστασης. (Σε περίπτωση που δεν ορίζεται θα εμφανίσει «Δεν ορίζεται»)
x5 3 ,x 1 x 1 x A x4 ,x 1 x 5 40. Ένας υπάλληλος παίρνει επίδομα παιδιών που είναι ανάλογο με τον αριθμό των παιδιών που έχει και τα χρόνια εργασίας στην εταιρεία του σύμφωνα με τον παρακάτω πίνακα: Χρόνια εργασίας 0-10
Πάνω από 10
Αριθμός παιδιών 0,1,2 3,4 Πάνω από 4 0,1,2 3,4 Πάνω από 4
Επίδομα (€) 70 90 130 100 150 200
Να γραφεί πρόγραμμα Python το οποίο αφού διαβάσει τα χρόνια υπηρεσίας και τον αριθμό των παιδιών του υπαλλήλου να υπολογίσει και εμφανίσει το επίδομα του. 41. Να γραφεί πρόγραμμα Python το οποίο θα διαβάσει έναν θετικό ακέραιο διψήφιο αριθμό και θα εμφανίσει το μήνυμα «ΕΝΑ» αν το άθροισμα των ψηφίων του είναι μεγαλύτερο του 12, αλλιώς να εμφανίσει το μήνυμα «ΔΥΟ». 42. Να γραφεί πρόγραμμα Python το οποίο θα διαβάσει έναν θετικό ακέραιο διψήφιο αριθμό και θα εμφανίσει το διπλάσιο του, αν το άθροισμα των ψηφίων του είναι άρτιος, αλλιώς να υπολογίσει και να εμφανίσει το τριπλάσιο του. 43. Σε ένα ασφαλιστικό πρόγραμμα ο ασφαλισμένος θα πάρει σύνταξη σύμφωνα με τις παρακάτω προϋποθέσεις: A. Να είναι 55 χρονών τουλάχιστον και να είναι ασφαλισμένος για 35 χρόνια τουλάχιστον. ή B. Αν είναι ασφαλισμένος από 30 έως 34 χρόνια αλλά να είναι τουλάχιστον 60 χρονών. Σε κάθε άλλη περίπτωση δεν συνταξιοδοτείτε. Να αναπτύξετε πρόγραμμα Python που να διαβάσει τα χρόνια ασφάλισης και την ηλικία του ασφαλισμένου και να εμφανίσει μήνυμα 'παίρνεις σύνταξη’ ή ‘δεν παίρνεις σύνταξη’ ανάλογα. 44. Να γραφεί πρόγραμμα Python το οποίο να διαβάσει δύο ακέραιους θετικούς αριθμούς και αν είναι άρτιοι και οι δύο να εμφανίσει το μήνυμα 'άρτιοι', εάν είναι περιττοί να εμφανίσει το μήνυμα 'περιττοί', διαφορετικά να εμφανίσει το άθροισμα τους.
Δομή επιλογής στην Python
9
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς 45. Να γραφεί πρόγραμμα Python το οποίο να διαβάσει τρεις ακέραιους αριθμούς και αν το άθροισμα τους διαιρείται ακριβώς με το 7 ή το 8 να εμφανίσει την διαφορά των δυο πρώτων, αλλιώς να εμφανίσει το άθροισμα και των τριών. 46. Ένας τελειόφοιτος της Γ' Λυκείου έδωσε γραπτές εξετάσεις σε 13 μαθήματα. Αν η διαφορά του προφορικού βαθμού και του γραπτού βαθμού είναι μεγαλύτερη των δύο μονάδων (προφορικός – γραπτός >2), τότε γίνεται προσαρμογή του προφορικού βαθμού στις 2 μονάδες πάνω από το γραπτό βαθμό, ενώ αν η διαφορά γραπτού και προφορικού βαθμού είναι μεγαλύτερη των 2 μονάδων (γραπτός - προφορικός>2), γίνεται προσαρμογή του προφορικού στις 2 μονάδες κάτω από το γραπτό βαθμό. Στον τελικό βαθμό κάθε μαθήματος, ο προφορικός βαθμός συμμετέχει με 30% και ο γραπτός με 70%. Να γραφεί πρόγραμμα Python το οποίο: A. Να διαβάσει τον προφορικό βαθμό και τον γραπτό βαθμό για ένα μάθημα B. Να υπολογίσει την ενδεχόμενη προσαρμογή C. Να υπολογίσει και να εμφανίσει τον τελικό βαθμό του μαθήματος 47. Για τον υπολογισμό της ημέρας (Δευτέρα, Τρίτη κοκ) γεννήσεως ενός ατόμου ακολουθούμε την εξής διαδικασία: Έστω Χ : το έτος γέννησης (π.χ. 1984) Μ: ο μήνας γέννησης (π.χ. 5) Η : η ημέρα γέννησης ( π.χ. 12) A. Πραγματοποιούμε την διαίρεση του έτους Χ με το 12 και αποθηκεύουμε σε δύο μεταβλητές Π1 και Υ1 το ακέραιο πηλίκο και το ακέραιο υπόλοιπο αντίστοιχα. B. Πραγματοποιούμε την διαίρεση του Υ1 με το 4 και αποθηκεύουμε σε μία μεταβλητή Π2 το ακέραιο πηλίκο που προκύπτει. C. Με βάση τον μήνα γέννησης του ατόμου και τον παρακάτω πίνακα βρίσκουμε τον κωδικό Κ του μήνα. ΜΗΝΑΣ 1 2 3 4 5 6 7 8 9 10 11 12
Κ 1 4 4 0 2 5 0 3 6 1 4 6
D.
Πραγματοποιούμε την πρόσθεση: Π1 + Υ1 + Π2 + Κ + Η Και τοποθετούμε το αποτέλεσμα στην μεταβλητή Α. E. Πραγματοποιούμε την διαίρεση του Α με το 7 και αποθηκεύουμε σε μία μεταβλητή Υ2 το ακέραιο υπόλοιπο. F. Με βάση το Υ2 και τον παρακάτω πίνακα βρίσκουμε την ημέρα γέννησης ενός ατόμου. Δομή επιλογής στην Python
10
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς
Υ2 0 1 2 3 4 5 6
ΗΜΕΡΑ Σάββατο Κυριακή Δευτέρα Τρίτη Τετάρτη Πέμπτη Παρασκευή
Σημείωση Αν ο χρόνος γέννησης Χ είναι δίσεκτος και ο μήνας είναι Ιανουάριος ή Φεβρουάριος θα πάτε μια ημέρα πίσω, για παράδειγμα αν είχατε βρει «Δευτέρα» θα πρέπει να εμφανίσει Κυριακή. (Δίσεκτο είναι το έτος που διαιρείται ακριβώς με το 4 αλλά όχι με το 100, καθώς επίσης και αυτά που διαιρούνται με το 400.) Να γραφεί πρόγραμμα Python που θα διαβάσει το έτος Χ, τον μήνα Μ και την ημέρα Η γεννήσεως ενός ατόμου και θα εμφανίσει ολογράφως την ημέρα της εβδομάδος γεννήσεως του ατόμου. Υπόδειξη Είναι προφανές ότι την σημείωση θα την χρησιμοποιήσετε πριν το βήμα F. 48. Σχετικά με τις απουσίες ενός μαθητή σε Λύκειο, ισχύουν τα παρακάτω: Ο μαθητής έχει δικαίωμα να δώσει εξετάσεις τον Ιούνιο αν: A. Έχει μέχρι 64 απουσίες (αδικαιολόγητες και δικαιολογημένες) ή B. Έχει μέχρι 114 απουσίες (αδικαιολόγητες και δικαιολογημένες) από τις οποίες οι αδικαιολόγητες δεν ξεπερνούν τις 64 ή C. Έχει μέχρι 164 απουσίες (αδικαιολόγητες και δικαιολογημένες) από τις οποίες οι αδικαιολόγητες δεν ξεπερνούν τις 64 και ο μέσος όρος στα προφορικά του είναι πάνω από 15. Ο μαθητής παραπέμπετε για ολική εξέταση το Σεπτέμβριο αν: A. Έχει πάνω από 64 και μέχρι 114 απουσίες (αδικαιολόγητες και δικαιολογημένες) και οι αδικαιολόγητες ξεπερνούν τις 64 ή B. Έχει πάνω από 114 και μέχρι 164 απουσίες (αδικαιολόγητες και δικαιολογημένες) από τις οποίες οι αδικαιολόγητες δεν ξεπερνούν τις 64 αλλά ο μέσος όρος στα προφορικά του δεν είναι πάνω από 15. Σε κάθε άλλη περίπτωση ο μαθητής επαναλαμβάνει τη χρονιά. Να γραφεί πρόγραμμα Python που να διαβάσει τον αριθμό αδικαιολόγητων και δικαιολογημένων απουσιών καθώς και το μέσο προφορικό βαθμό και να εμφανίσει την περίπτωση όπου ανήκει ο μαθητής. 49. Ένας εργάτης πληρώνεται προς 10 € την ώρα, αλλά αν την τελευταία ώρα δουλέψει περισσότερο από 30 λεπτά πληρώνεται ολόκληρη την ώρα, αλλιώς δεν την πληρώνεται
Δομή επιλογής στην Python
11
Κέρος Α. Ιωάννης | Καθηγητής Πληροφορικής ΠΕ19 | 1ο ΕΠΑΛ Κιλκίς καθόλου. Να γραφεί πρόγραμμα Python που να διαβάσει τα συνολικά λεπτά Μ (σε ακέραια μορφή) που δούλεψε ένας εργάτης και να υπολογίσει και εμφανίσει πόσες ώρες θα του χρεωθούν σαν εργασία και το ποσό πληρωμής του.
Δομή επιλογής στην Python
12