Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική μετάφραση): e-book στην τοποθεσία http://dide.flo.sch.gr/plinet/meetings/meeting23/a_byte_of_python-el.pdf ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 1 -
Ασκήσεις στην if Υπενθυμίζεται η σύνταξη της εντολής επιλογής if (if-απλή, if-else, if-elif-else και εμφωλευμένη if) Σύνταξη 1. if απλή if συνθήκη: Εντολή1 Εντολή2 Μπλοκ εντολών με εσοχή 2. If-else H δομή if-else χρησιμοποιείται στην περίπτωση που πρέπει να ακολουθηθεί μια σειρά από εντολές όταν μια συνθήκη δεν ισχύει: if συνθήκη: Εντολή1_1 Εντολή1_2 Μπλοκ εντολών με εσοχή του if else: Εντολή2_1 Εντολή2_2 Μπλοκ εντολών με εσοχή του else ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 2 -
3. if-elif-else. Χρησιμοποιείται στην περίπτωση που θα πρέπει να ελεγχθούν περισσότερες από μια συνθήκες: if συνθήκη1: Εντολή1_1 Εντολή1_2 Μπλοκ εντολών με εσοχή του if elif συνθήκη2: Εντολή2_1 Εντολή2_2 Μπλοκ εντολών με εσοχή του elif else: Εντολή3_1 Εντολή3_2 Μπλοκ εντολών με εσοχή του else ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 3 -
4. Εμφωλευμένη if Δομές που χρησιμοποιούνται σε πιο πολύπλοκα προβλήματα. Εδώ κάθε εντολή if-elif-else μπορεί να περιέχει με την σειρά του μια άλλη εντολή if Σύνταξη if συνθήκη1: if συνθήκη1_1: Εντολή1_1.. Μπλοκ εντολών με εσοχή του εσωτερικού if else: Εντολή1_2.. Μπλοκ εντολών με εσοχή του εσωτερικού else else: Εντολή2_1 Εντολή2_2 Μπλοκ εντολών με εσοχή του else ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 4 -
Άσκηση 1. Γράψτε ένα πρόγραμμα (epidosi.py) που θα διαβάζει τους βαθμούς δύο μαθημάτων ενός φοιτητή. Στη συνέχεια θα υπολογίζει το μέσο όρο των βαθμών των δύο μαθημάτων και θα τον εμφανίζει. Έπειτα, θα κάνει τον παρακάτω έλεγχο: Αν ο μέσος όρος είναι μεγαλύτερος από 18 θα εμφανίζεται το μήνυμα Άριστη επίδοση αν ο μέσος όρος είναι μεγαλύτερος από 15 και ο βαθμός του πρώτου μαθήματος είναι μεγαλύτερος από 17, θα εμφανίζει το μήνυμα Σχετικά καλή επίδοση αν ο μέσος όρος είναι μεγαλύτερος από 10 ή ο βαθμός του δευτέρου μαθήματος είναι μεγαλύτερος από 12, θα εμφανίζει το μήνυμα Μέτρια επίδοση διαφορετικά, θα εμφανίζει το μήνυμα Κακή επίδοση Τέλος θα εμφανίζει το μήνυμα «Τέλος προγράμματος» Τρέξτε το πρόγραμμα σας για τα εξής input: 1. 19, 18 2. 13, 18 3. 14, 17 4. 17, 9 5. 9, 10 Παράδειγμα output: ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 5 -
Άσκηση 2. Γράψτε ένα πρόγραμμα (soma.py) που θα διαβάζει το όνομα, το ύψος (σε μέτρα) και το βάρος (σε κιλά) του χρήστη. Έπειτα θα υπολογίζει το δείκτη μάζας σώματος (BMI = Βάρος/Ύψος2) και θα εμφανίζει στην οθόνη το όνομα του χρήστη και τον bmi του με ένα δεκαδικό ψηφίο. Έπειτα, θα κάνει τον παρακάτω έλεγχο: αν το ύψος του είναι μεγαλύτερο από 1.95 ή το βάρος του είναι μεγαλύτερο από 95 θα εμφανίζει το μήνυμα «Είσαι θηρίο» διαφορετικά, θα κάνει τον παρακάτω έλεγχο: εάν ο δείκτης μάζας σώματος (bmi) είναι μικρότερος ή ίσος από 19 θα εμφανίζει το μήνυμα «Φάε κάτι» εάν ο δείκτης μάζας σώματος (bmi) είναι μεγαλύτερος από 19 και μικρότερος από 26 θα εμφανίζει το μήνυμα «Καλά είσαι» διαφορετικά θα εμφανίζει το μήνυμα «Να προτείνω μια δίαιτα;» Τέλος, θα εμφανίζει το μήνυμα «Τέλος προγράμματος». Παράδειγμα output Άσκηση 3. Δημιουργήστε ένα πρόγραμμα (triangles.py) όπου θα ταξινομεί ένα τρίγωνο με βάση τα μήκη των πλευρών του σε ισόπλευρο, ισοσκελές ή σκαληνό. (Σημείωση: Όλες οι 3 πλευρές ενός ισόπλευρου τριγώνου έχουν το ίδιο μήκος. Ένα ισοσκελές τρίγωνο έχει δύο όψεις που έχουν το ίδιο μήκος, και μια τρίτη πλευρά που έχει διαφορετικό μήκος. Αν όλες οι πλευρές έχουν διαφορετικό μήκος τότε το τρίγωνο είναι σκαληνό). Το πρόγραμμα θα διαβάζει τα μήκη των 3 πλευρών ενός τριγώνου από το χρήστη και θα εμφανίζει ένα μήνυμα που υποδεικνύει το είδος του τριγώνου. Τρέξτε το πρόγραμμα τρεις φορές, δίνοντας τις τιμές: ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 6 -
1. 2, 2, 2 2. 3, 3, 4 3. 2, 3, 4 Άσκηση 4. Δημιουργήστε πρόγραμμα KPA.py στο οποίο θα μελετάτε η μέθοδος αξιολόγησης της καθαράς παρούσας αξίας δύο αμοιβαίως αποκλειόμενων επενδύσεων (Επένδυση Α και Επένδυση Β). Θα ζητείται από το χρήστη η πληκτρολόγηση των εξής στοιχείων: Αρχική επένδυση των 2 προγραμμάτων, Το προεξοφλητικό επιτόκιο (r), Οι ταμειακές εισροές του κάθε προγράμματος για 7 έτη Το πρόγραμμα θα πρέπει να υπολογίζει και θα εμφανίζει την ΚΠΑ του κάθε προγράμματος με 2 δεκαδικά ψηφία μέσω του τύπου Στη συνέχεια θα συγκρίνει την ΚΠΑ κάθε προγράμματος και θα επιλέγετε για επένδυση αυτό με την μεγαλύτερη ΚΠΑ. Τρέξτε το πρόγραμμα σας για τα παρακάτω δεδομένα: Και r=12%. Τι συμβαίνει αν ξανατρέξετε το πρόγραμμα σας με r=18%; ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 7 -
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 8 -