Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική μετάφραση): e-book στην τοποθεσία http://dide.flo.sch.gr/plinet/meetings/meeting23/a_byte_of_python-el.pdf ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 1 -
1. Η χρήση του editor στην συγγραφή προγραμμάτων Όπως είδαμε στο προηγούμενο μάθημα μπορούμε να γράψουμε και να τρέχουμε απλές εντολές απευθείας με την χρήση της κονσόλας της Python. Η συγγραφή μεγαλύτερων προγραμμάτων είναι δύσκολη ως και αδύνατη σε μεγαλύτερα προγράμματα όπου για τον χειρισμό τους χρησιμοποιούμε ειδικούς editor κειμένου όπως το Notepad++. Για την χρήση ενός τέτοιου editor ακολουθούμε τα παρακάτω βήματα: Α. ανοίγουμε το editor και πληκτρολογούμε το πρόγραμμα Β. ανοίγουμε την καρτέλα File και χρησιμοποιώντας την επιλογή Αποθήκευση ως αποθηκεύουμε το αρχείο με το όνομα που επιθυμούμε και κατάληξη.py (κατάληξη για την Python) όπως π.χ. proti_ektiposi.py, όπως επίσης και την τοποθεσία στην οποία θα γίνει η αποθήκευση. προσοχή: το όνομα του αρχείου πρέπει να είναι μια λέξη. Μπορούμε επίσης να γράψουμε το πρόγραμμα μας απευθείας στο IDLE ακολουθώντας τα παρακάτω βήματα: File New file. Γ. μπορούμε να τρέξουμε το πρόγραμμα μας με 2, ισοδύναμους, τρόπους: 1 ος τρόπος: Μέσω του IDLE της Python a. Ανοίγουμε την κονσόλα (IDLE) της Python b. Από την καρτέλα File επιλέγουμε την επιλογή Open. c. Στο παράθυρο που ανοίγει βρίσκουμε την τοποθεσία που βρίσκεται το αρχείο μας και το διπλοκλικάρουμε. d. Για την εκτέλεση του προγράμματος χρησιμοποιούμε το κουμπί F5. Αν το πρόγραμμα μας δεν περιέχει λάθη μας εμφανίζονται τα αποτελέσματα 2 ος : Μέσω κέλυφους ή γραμμής εντολών DOS a. Ανοίγουμε το prompt (DOS) των Windows b. Το DOS λειτουργεί συνήθως στο Desktop (προεπιλογή) και γι αυτό θα πρέπει να μεταφερθούμε στον φάκελο όπου βρίσκετε αποθηκευμένο το αρχείο μας. Για να το κάνουμε αυτό γράφουμε την εντολή cd τοποθεσία φακέλου cd είναι η εντολή change directory Έτσι για παράδειγμα αν το αρχείο μας είναι αποθηκευμένο στο δίσκο C και στο φάκελο Τα έγγραφα μου η εντολή μεταφοράς στο φάκελο θα πρέπει να έχει την μορφή cd C:\Τα έγγραφα μου c. Τέλος για να τρέξουμε το αρχείο μας απλά πληκτρολογούμε το όνομα του μαζί με την κατάληξη py ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 2 -
2. Λάθη Ένα πρόγραμμα είναι μία ακολουθία εντολών η οποία προσδιορίζει πως θα εκτελεστεί ένας υπολογισμός. Αυτός ο υπολογισμός μπορεί να είναι κάτι μαθηματικό, όπως το να λύσουμε ένα σύστημα εξισώσεων ή να βρούμε τα ρίζες ενός πολυωνύμου, αλλά επίσης μπορεί να είναι ένας συμβολικός υπολογισμός, όπως το να ψάχνεις και να αντικαθιστάς κείμενο μέσα σε ένα έγγραφο ή (περιέργως) να μεταγλωττίζεις ένα πρόγραμμα. Ο προγραμματισμός είναι επιρρεπής σε λάθη. Τα λάθη στον προγραμματισμό ονομάζονται bugs (σφάλματα στα ελληνικά) και η διαδικασία εντοπισμού τους ονομάζεται debugging (ή αποσφαλμάτωση στα ελληνικά). Σε ένα πρόγραμμα μπορεί να εμφανιστούν τρία είδη λαθών: συντακτικά λάθη, λάθη χρόνου εκτέλεσης και λογικά λάθη. Είναι χρήσιμο να γίνει διάκριση μεταξύ τους προκειμένου να εντοπίζονται γρηγορότερα. Συντακτικά λάθη: Η Python μπορεί να εκτελέσει ένα πρόγραμμα μόνο εάν έχει σωστή σύνταξη, διαφορετικά ο ο διερμηνέας εμφανίζει στην κονσόλα μήνυμα λάθους. Η σύνταξη αφορά τη δομή ενός προγράμματος και τους κανόνες αυτής της δομής. Για παράδειγμα, οι παρενθέσεις θα πρέπει να είναι πάντα ζεύγη, έτσι το (1 + 2) είναι σωστό, αλλά το 8) είναι ένα συντακτικό (syntax error). Λάθη χρόνου εκτέλεσης: το δεύτερο είδος λάθους είναι τα λάθη χρόνου εκτέλεσης (runtime errors), τα οποία ονομάζονται έτσι επειδή τα λάθη δεν εμφανίζονται μέχρις ότου αρχίσει το πρόγραμμα να τρέχει. Αυτά τα λάθη ονομάζονται επίσης εξαιρέσεις (exceptions) επειδή γενικώς υποδεικνύουν ότι κάτι σημαντικό (και κακό) έχει συμβεί. Λογικά λάθη: το τρίτο είδος λάθους είναι τα λογικά λάθη (semantic errors). Εάν υπάρχει ένα λογικό λάθος το πρόγραμμά σας θα τρέξει επιτυχώς από την άποψη ότι ο υπολογιστής δεν θα παράξει κανένα μήνυμα λάθους, αλλά δεν θα δίνει το σωστό αποτέλεσμα. Με άλλα λόγια δεν θα κάνει αυτό που του είπατε να κάνει. 3. Ειδικοί χαρακτήρες ή χαρακτήρες διαφυγής Στο προηγούμενο μάθημα είδαμε την χρήση δύο είδη ειδικών χαρακτήρων των εισαγωγικών στην εκτύπωση αλφαριθμιτικών και την χρήση του \n για την αλλαγή γραμμής. Ο παρακάτω πίνακας μας δίνει περισσότερους ειδικούς χαρακτήρες που χρησιμοποιούνται στην python. ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 3 -
Άσκηση 1. Εμφανίστε την φράση: Ο προγραμματισμός με Python είναι εύκολος!!! Τρέξτε το πρόγραμμα μέσω IDLE και DOS Απάντηση #programma ektiposhs print( Ο προγραμματισμός με Python είναι εύκολος!!!) Άσκηση 2. Εμφανίστε την φράση: Ο προγραμματισμός με Python είναι εύκολος!!! Τρέξτε το πρόγραμμα μέσω IDLE και DOS Απάντηση #programma ektiposhs print( Ο προγραμματισμός\n με Python \n είναι εύκολος!!!) ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 4 -
Άσκηση 3. Αφού ορίσετε 2 μεταβλητές ηλικία και όνομα και τις αρχικοποιήσετε με την ηλικία και το όνομα σας εμφανίστε την φράση: < Όνομα> στην ηλικία των <ηλικία> δεν θα έπρεπε να παίζεις με πύθωνες. Η φράση θα πρέπει να εμφανίζει το όνομα και την ηλικία σας. Τρέξτε το πρόγραμμα μέσω IDLE και DOS Απάντηση #ektiposh metablhtwn kai alfari8mitikwn age=25 name='αριστοτέλης' print(name, 'στην ηλικία των', age, 'δεν θα έπρεπε να παίζεις με πύθωνες') 4. Εισαγωγή στοιχείων από το πληκτρολόγιο Τις περισσότερες φορές θέλουμε τα προγράμματα μας να λειτουργούν εισάγοντας στοιχεία από το πληκτρολόγιο. Για να εισάγουμε έναν αριθμό μπορούμε να χρησιμοποιήσουμε τις 2 παρακάτω εντολές integer1= input("enter first integer:\n") #διάβασε αλφαριθμητικό από το πληκτρολόγιο. Ότι διαβάζω από το πληκτρολόγιο είναι string και γίνεται τιμή της μεταβλητής integer1 integer1 = int(integer1) # μετέτρεψε το string σε integer (ακέραιο). Προσοχή: εδώ τον πρώτο integer1 είναι ακέραιος και το δεύτερο ένα string Άσκηση 4. Δημιουργήστε πρόγραμμα το οποίο πραγματοποιεί πρόσθεση δύο ακέραιων στατικών μεταβλητών(οι μεταβλητές δλδ θα αρχικοποιούνται μέσα στο πρόγραμμα) και θα εμφανίζει την φράση: Το αποτέλεσμα της πρόσθεσης των αριθμών που πληκτρολογήσατε είναι <αποτέλεσμα> Άσκηση 5. Δημιουργήστε πρόγραμμα το οποίο πραγματοποιεί πρόσθεση δύο ακέραιων μεταβλητών οι τιμές των οποίων θα δίνονται από το πληκτρολόγιο και θα εμφανίζει την φράση Το αποτέλεσμα της πρόσθεσης των αριθμών που πληκτρολογήσατε είναι <αποτέλεσμα> ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 5 -
Απάντηση άσκηση 4. integer1=25 integer2 = 30 sum=integer1+integer2 print( Το αποτέλεσμα της πρόσθεσης των αριθμών που πληκτρολογήσατε είναι,sum) Απάντηση άσκηση 5. integer1=input("enter first integer:\n") #διάβασε το πρώτο αλφαριθμητικό από το πληκτρολόγιο integer1 = int(integer1) # μετέτρεψε το πρώτο string σε integer (ακέραιο). integer2=input("enter first integer:\n") #διάβασε το δεύτερο αλφαριθμητικό από το πληκτρολόγιο. integer2 = int(integer2) # μετέτρεψε το δεύτερο string σε integer (ακέραιο). sum=integer1+integer2 print( Το αποτέλεσμα της πρόσθεσης των αριθμών που πληκτρολογήσατε είναι,sum) ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Σελίδα - 6 -