ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Σφάλματα, εξαιρέσεις, εκσφαλμάτωση Χειμερινό Εξάμηνο 2016

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Σφάλματα, εξαιρέσεις, εκσφαλμάτωση Χειμερινό Εξάμηνο 2016"

Transcript

1 ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Σφάλματα, εξαιρέσεις, εκσφαλμάτωση Χειμερινό Εξάμηνο 2016

2 Τύποι Σφαλμάτων Συντακτικά λάθη (syntax errors) Λάθη κατά την εκτέλεση (run-time errors) Λογικά σφάλματα 2

3 Συντακτικά Λάθη Είναι σημαντικό να καταλάβουμε το συντακτικό λάθος και να το διορθώσουμε break.py from math import sqrt for n in range(99, 0, -1): root = sqrt(n) if root == int(root): print (n) break python3 break.py File "break.py", line 6 break ^ IndentationError: unindent does not match any outer indentation level Ο interpreter της Python μας λέει σε ποια γραμμή είναι το λάθος Επίσης το μήνυμα μπορεί να μας δίνει επιπλέον πληροφορία για το λάθος. 3

4 Συντακτικά Λάθη Είναι σημαντικό να καταλάβουμε το συντακτικό λάθος και να το διορθώσουμε test.py suits = ['\u2660', '\u2661', '\u2662', '\u2663'] print((suits) x = 5 python3 test.py File "test.py", line 3 x = 5 ^ SyntaxError: invalid syntax Σε κάποια λάθη, το μήνυμα μπορεί να φαίνεται ότι είναι για λάθος γραμμή. Αυτή είναι η γραμμή στην οποία ο interpreter δεν μπορεί πλέον να ολοκληρώσει μια σωστή εντολή 4

5 Συντακτικά Λάθη Είναι σημαντικό να καταλάβουμε το συντακτικό λάθος και να το διορθώσουμε >>> (3+4] SyntaxError: invalid syntax >>> if x==5 SyntaxError: invalid syntax >>> print 'hello' SyntaxError: invalid syntax >>> lst = [1;2;3] SyntaxError: invalid syntax >>> for i in range(10): print(i) SyntaxError: expected an indented block 5

6 Λάθη κατά την εκτέλεση Δεν υπάρχει συντακτικό λάθος, αλλά το πρόγραμμά μας τερματίζει γιατί μπαίνει σε μια μη εγκυρη κατάσταση. >>> 4/0 Traceback (most recent call last): File "<pyshell#43>", line 1, in <module> 4/0 ZeroDivisionError: division by zero >>> lst = [1,2,3] >>> lst[3] Traceback (most recent call last): File "<pyshell#45>", line 1, in <module> lst[3] IndexError: list index out of range 6

7 Λάθη κατά την εκτέλεση Πρέπει να διαβάσουμε και να καταλάβουμε το σφάλμα >>> y + 5 Traceback (most recent call last): File "<pyshell#46>", line 1, in <module> Και στα λάθη κατά την εκτέλεση y + 5 η γραμμή και το μήνυμα μας NameError: name 'y' is not defined δίνουν πληροφορίες για να >>> '2' * '3' καταλάβουμε το λάθος. Traceback (most recent call last): File "<pyshell#47>", line 1, in <module> '2' * '3' TypeError: can't multiply sequence by non-int of type 'str' 7

8 Λάθη κατά την εκτέλεση Πρέπει να διαβάσουμε και να καταλάβουμε το σφάλμα >>> int('4.5') Traceback (most recent call last): File "<pyshell#48>", line 1, in <module> int('4.5') ValueError: invalid literal for int() with base 10: '4.5' >>> 2.0**10000 Traceback (most recent call last): File "<pyshell#49>", line 1, in <module> 2.0**10000 OverflowError: (34, 'Result too large') 8

9 Εξαιρέσεις Όταν το πρόγραμμα μπει σε μια μη έγκυρη κατάσταση δημιουργεί μια εξαίρεση (exception) Η εξαίρεση είναι κι αυτή αντικείμενο Κάθε εξαίρεση ανήκει σε ένα τύπο Ο τύπος μας βοηθάει να καταλάβουμε το σφάλμα Εξαίρεση KeyboardInterrupt OverflowError Εξήγηση Ο χρήστης διέκοψε το πρόγραμμα με Crtl-C Ένας float πήρε πολύ μεγάλη τιμή ZeroDivisionError Διαίρεση με το 0 FileNotFoundError IndexError NameError TypeError ValueError Το όνομα αρχείου που επιχειρούμε να ανοίξουμε δεν υπάρχει Προσπαθήσαμε να προσπελάσουμε μια μη έγκυρη θέση ακολουθίας Προσπέλαση μεταβλητής που δεν έχει οριστεί Μια λειτουργία εφαρμόζεται σε λάθος τύπο αντικειμένου Μια λειτουργία εφαρμόζεται σε μη έγκυρη τιμή 9

10 Δημιουργία Εξαιρέσεων Μπορούμε να δημιουργήσουμε εξαίρεση στο πρόγραμμα ή τη συνάρτησή μας αν κάτι δεν είναι έγκυρο με βάση τις προδιαγραφές μας με την εντολή raise x = int(input('input a number between 10 and 20: ')) if x<10 or x>20: raise Exception('Number outside valid range') print(x**2) περιγραφή της εξαίρεσης Input a number between 10 and 20: Input a number between 10 and 20: 3 Traceback (most recent call last): File "test.py", line 3, in <module> raise Exception('Number outside valid range') Exception: Number outside valid range 10

11 «Πιάσιμο» Εξαιρέσεων Μπορούμε να αποφύγουμε να τερματίσει το πρόγραμμά μας, φροντίζοντας να «πιάνουμε» τυχόν εξαιρέσεις try: x = eval(input('enter the first number: ')) y = eval(input('enter the second number: ')) print (x/y) except ZeroDivisionError: print("the second number can't be zero!") print("program finished normally...") Enter the first number: 3 Enter the second number: program finished normally... 11

12 «Πιάσιμο» Εξαιρέσεων Μπορούμε να αποφύγουμε να τερματίσει το πρόγραμμά μας, φροντίζοντας να «πιάνουμε» τυχόν εξαιρέσεις try: x = eval(input('enter the first number: ')) y = eval(input('enter the second number: ')) print (x/y) except ZeroDivisionError: print("the second number can't be zero!") print("program finished normally...") Enter the first number: 3 Enter the second number: 0 The second number can't be zero! program finished normally... 12

13 Αλλά... try: x = eval(input('enter the first number: ')) y = eval(input('enter the second number: ')) print (x/y) except ZeroDivisionError: print("the second number can't be zero!") print("program finished normally...") Enter the first number: 3a Traceback (most recent call last): File "/Users/Nikos/Dropbox/courses/course_python/py/test.py", line 2, in <module> x = eval(input('enter the first number: ')) File "<string>", line 1 3a ^ SyntaxError: unexpected EOF while parsing 13

14 «Πιάσιμο» Εξαιρέσεων try: x = eval(input('enter the first number: ')) y = eval(input('enter the second number: ')) print (x/y) except ZeroDivisionError: print("the second number can't be zero!") except NameError: print("you did not give a number") except SyntaxError: print("you did not give a number ) οι εξαίρεσεις εξετάζονται με αυτή τη σειρά 14

15 «Πιάσιμο» Εξαιρέσεων try: x = eval(input('enter the first number: ')) y = eval(input('enter the second number: ')) print (x/y) except ZeroDivisionError: print("the second number can't be zero!") except: print("something wrong happened") αν δεν προσδιορίσουμε συγκεκριμένο τύπο εξαίρεσης μετά το except, τότε εννοούμε οποιαδήποτε εξαίρεση το σκέτο except πρέπει να μπαίνει με προσοχή γιατί πιάνει τα πάντα (ακόμα και το Ctrl-C) 15

16 «Πιάσιμο» Εξαιρέσεων try: x = eval(input('enter the first number: ')) y = eval(input('enter the second number: ')) print (x/y) except (ZeroDivisionError, NameError, SyntaxError): print("something wrong with your numbers") μπορούμε να βάλουμε πολλούς τύπους εξαιρέσεων 16

17 «Πιάσιμο» Εξαιρέσεων try: x = eval(input('enter the first number: ')) y = eval(input('enter the second number: ')) print (x/y) except (ZeroDivisionError, NameError, SyntaxError) as e: print(e) Enter the first number: 3a unexpected EOF while parsing (<string>, line 1) αποθηκεύει το αντικείμενο της εξαίρεσης στη μεταβλητή e 17

18 Χρήση try/except/else while True: try: x = eval(input('enter the first number: ')) y = eval(input('enter the second number: ')) value = x/y print ('x/y is', value) except Exception as e: print('invalid input: ',e) print('please try again.') else: break τυπώνουμε την εξαίρεση για να ξέρει ο χρήστης τι πήγε στραβά Το else αντιστοιχεί στην περίπτωση που δεν δημιουργήθηκε εξαίρεση. Τότε όλα πήγαν καλά και ο βρόγχος τερματίζει 18

19 Παράδειγμα Γράψτε μια συνάρτηση που θα μετατρέπει την πρώτη γραμμή ενός αρχείου σε ακέραιο και μετά θα τυπώνει τον ακέραιο def readage(filename): try: infile = open(filename) strage = infile.readline() age = int(strage) print('age is',age) except IOError: print('input/output error.') except ValueError: print('value cannot be converted to integer.') except: print('other error.') 19

20 Εξαιρέσεις και συναρτήσεις Αν δημιουργηθεί εξαίρεση (σφάλμα) μέσα σε μια συνάρτηση, τότε η συνάρτηση σταματάει και επιστέφει Μπορούμε να «πιάσουμε» εξαιρέσεις μέσα στη συνάρτηση και να τις χειριστούμε Επίσης μπορούμε να «πιάσουμε» μια εξαίρεση που δημιουργήθηκε σε μια συνάρτηση έξω από τη συνάρτηση Μια εξαίρεση που δημιουργείται σε μια συνάρτηση, αν δεν τη χειριστούμε εκεί, «μεταφέρεται» στο σημείο που καλείται η συνάρτηση, και με τον ίδιο τρόπο μέχρι το κυρίως πρόγραμμα Αν δεν χειριστούμε την εξαίρεση κάπου, το πρόγραμμα τερματίζει με σφάλμα δείχνοντας όλα τα σημεία από όπου πέρασε η εξαίρεση (στοίβα εκτέλεσης προγράμματος). 20

21 Εξαιρέσεις και συναρτήσεις def faulty(): raise Exception('Something is wrong') def ignore_exception(): faulty() def handle_exception(): try: faulty() except: print('exception handled') >>> ignore_exception() Traceback (most recent call last): File "<pyshell#12>", line 1, in <module> ignore_exception() File "test.py", line 5, in ignore_exception faulty() File "test.py", line 3, in faulty raise Exception('Something is wrong') Exception: Something is wrong 21

22 Εξαιρέσεις και συναρτήσεις def faulty(): raise Exception('Something is wrong') def ignore_exception(): faulty() def handle_exception(): try: faulty() except: print('exception handled') >>> handle_exception() Exception handled 22

23 Εξαιρέσεις και συναρτήσεις 23

24 Πιάνοντας εξαιρέσεις Είναι πολύ συνηθισμένο να πιάνουμε την εξαίρεση σε διαφορετικό σημείο από αυτό που δημιουργήθηκε. while True: try: x = int(input('give a number (not 2):')) f(x) except Exception as e: print(e) else: break Πιάνουμε την εξαίρεση όταν ξέρουμε τι θα την κάνουμε

25 Πετώντας και πιάνοντας εξαιρέσεις def read_digit(): x = int(input('give digit:')) if (x < 0 or x >9): raise Exception('More than a digit') return x while True: try: x = read_digit() except Exception as e: print(e) else: break print(x) Δημιουργούμε την εξαίρεση μέσα στην συνάρτηση και την πιάνουμε στο κύριο πρόγραμμα.

26 Παράδειγμα Έστω ότι αποθηκεύουμε τα στοιχεία προσώπων σαν λεξικά Αν ένα πρόσωπο δέν έχει κάποια στοιχεία, ή δεν τα γνωρίζουμε, απλά δεν υπάρχουν στο λεξικό του >>> john = {'age':34, 'name':'john'} >>> steve = {'age':23, 'occupation':'locksmith'} >>> john['age'] 34 >>> john['occupation'] Traceback (most recent call last): File "<pyshell#19>", line 1, in <module> person['occupation'] KeyError: 'occupation' 26

27 Παράδειγμα Θέλουμε να γράψουμε μια συνάρτηση describeperson() που να τυπώνει τα υπάρχοντα στοιχεία του προσώπου που της δίνεται σαν όρισμα Το name είναι υποχρεωτικό κλειδί στο όρισμα της συνάρτησης, τα υπόλοια στοιχεία, προαιρετικά >>> john = {'age':34, 'name':'john'} >>> steve = {'name':'steve', 'occupation':'locksmith'} >>> describeperson(john) Description of John Age: 34 >>> describeperson(steve) Description of Steve Occupation: locksmith 27

28 Παράδειγμα Θέλουμε να γράψουμε μια συνάρτηση describeperson() που να τυπώνει τα υπάρχοντα στοιχεία του προσώπου που της δίνεται σαν όρισμα def describeperson(person): print('description of', person['name']) if 'age' in person: print('age:', person['age']) if 'occupation' in person: print('occupation:', person['occupation']) if 'marital' in person: print('marital Status:', person['marital']) Βάζουμε ένα if για κάθε πιθανό στοιχείο! 28

29 Παράδειγμα Θέλουμε να γράψουμε μια συνάρτηση describeperson() που να τυπώνει τα υπάρχοντα στοιχεία του προσώπου που της δίνεται σαν όρισμα Με χρήση εξαιρέσεων: def describeperson(person): print('description of', person['name']) try: print('age:', person['age']) except KeyError: pass try: print('occupation:', person['occupation']) except KeyError: pass try: print('marital Status:', person['marital']) except KeyError: pass 29

30 Αποσφαλμάτωση Αν το πρόγραμμά μας δε λειτουργεί σωστά (π.χ. έχει λογικό σφάλμα) και δεν ξέρουμε που είναι το σφάλμα, πρέπει να χρησιμοποιήσουμε μια μέθοδο εκσφαλμάτωσης (debugging). Η εκσφαλμάτωση μπορεί να γίνει με ειδικά προγράμματα (debuggers) Ο debugger προσομοιώνει την εκτέλεση του προγράμματος εντολή-προς-εντολή και δίνει ανά πάσα στιγμή τις τιμές των μεταβλητών και τη στοίβα του προγράμματος Τα περισσότερα IDE (integrated development interfaces) εμπεριέχουν debugger 30

31 Αποσφαλμάτωση Τυπική μεθοδολογία εκσφαλμάτωσης: Επανάληψη του προγράμματος (ώστε να εντοπιστεί το σφάλμα) Απομόνωση του σημείου που εμφανίζεται το σφάλμα Αναγνώριση της αιτίας που το προκαλεί (π.χ. από απροσεξία ή από λογικό σφάλμα) Διόρθωση του σφάλματος Επιβεβαίωση της διόρθωσης (επανάληψη του προγράμματος, δοκιμή με διαφορετικές εισόδους) Τα παραπάνω βήματα είναι τυπικά. Κάποιοι προγραμματιστές μπορεί να ακολουθούν μια παραλλαγή της μεθοδολογίας αυτής 31

32 Συμβουλές για την πρόληψη σφαλμάτων Σχεδιάστε πρώτα τον αλγόριθμό σας στο χαρτί και βεβαιωθείτε ότι δεν έχει λογικά λάθη Γράφετε το πρόγραμμά σας λίγο-λίγο και εκτελείτε το δοκιμάζοντας την ορθότητά του (π.χ. με εντολές print) πριν προχωρήσετε στο να γράψετε τις επόμενες γραμμές του Δοκιμάζετε πάντα την ορθότητα με μια ποικιλία δεδομένων εισόδου και βεβαιωθείτε ότι είναι σωστό για όλες τις πιθανές εισόδους Κάντε χρήση συναρτήσεων ώστε να σπάσετε το πρόγραμμα σε μικρά υπο-προγράμματα τα οποία είναι ευκολότερο να ελεγχθούν Εισάγετε σχόλια ώστε να μπορέσετε να θυμηθείτε τη λειτουργία τμημάτων κώδικα που θα πρέπει να αλλάξετε σε περίπτωση σφάλματος 32

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Σφάλµατα, εξαιρέσεις, εκσφαλµάτωση Χειµερινό Εξάµηνο 2014

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Σφάλµατα, εξαιρέσεις, εκσφαλµάτωση Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Σφάλµατα, εξαιρέσεις, εκσφαλµάτωση Χειµερινό Εξάµηνο 2014 Τύποι Σφαλµάτων Συντακτικά λάθη (syntax errors) Λάθη κατά την εκτέλεση (run-time errors) Λογικά σφάλµατα 2

Διαβάστε περισσότερα

Εξαιρέσεις Εισαγωγή. Εξαιρέσεις. ηµήτρης Λεβεντέας

Εξαιρέσεις Εισαγωγή. Εξαιρέσεις. ηµήτρης Λεβεντέας Εισαγωγή Εξαιρέσεις ηµήτρης Λεβεντέας 20 Μαΐου 2010 Εισαγωγή Ορισµός Τι είναι Ορισµός Ο χειρισµός εξαιρέσεων είναι µια κατασκευή η οποία µας επιτρέπει να χειριστούµε ειδικές συνθήκες που αλλάζουν την ϕυσιολογική

Διαβάστε περισσότερα

ΗΥ101: Εισαγωγή στην Πληροφορική

ΗΥ101: Εισαγωγή στην Πληροφορική Δρ. Χρήστος Ηλιούδης Τι είναι η ; Η διαδικασία του προγραμματισμού είναι μία πολύπλοκη διαδικασία που συχνά οδηγεί σε λάθη (πραγματοποιείται από ανθρώπους!!!). Τα προγραμματιστικά λάθη λέγονται bugs και

Διαβάστε περισσότερα

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

Γλώσσα προγραμματισμού python Προηγούμενο Σημειώσεις Επόμενο Γλώσσα προγραμματισμού python Η γλώσσα αυτή γράφτηκε από τον Ολλανδό προγραμματιστή Guido van Rossum στα τέλη της δεκαετίας 1980-90. Η έκδοση 2.0 δημοσιεύτηκε στις 16 Οκτωβρίου

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Εισαγωγή στην Python Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Εισαγωγή στην Python Χειµερινό Εξάµηνο 2014 Εγκατάσταση Από το www.python.org è Downloads Υπάρχουν εκτενείς οδηγίες για όλα τα λειτουργικά (π.χ., Windows, Mac OS X)

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Εισαγωγή στην Python Χειμερινό Εξάμηνο 2016 ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Εισαγωγή στην Python Χειμερινό Εξάμηνο 2016 H Γλώσσα Python Δημιουργήθηκε από τον Guido van Rossum ο οποίος εξακολουθεί να την εξελίσσει. Benevolent Dictator for Life

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγ/μό Υπολογιστών Εισαγωγή στον Προγ/μό Υπολογιστών Διάλεξη 1 Εκφράσεις, κλητικές εκφράσεις, ονόματα Περιεχόμενα Εκφράσεις (expressions) Τελεστές (operators) της Python Κλητικές εκφράσεις (call expressions) Ονόματα (names)

Διαβάστε περισσότερα

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

Θέματα Προγραμματισμού Η/Υ Πρόγραμμα Μεταπτυχιακών Σπουδών Πληροφορική και Υπολογιστική Βιοϊατρική Θέματα Προγραμματισμού Η/Υ Ενότητα 4: Θεματική Ενότητα: Είσοδος/έξοδος, μεταβλητές, αναθέσεις ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ Θεματική

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 7. Αρχεία, εξαιρέσεις & εκσφαλμάτωση. 7.1 Εισαγωγή

ΚΕΦΑΛΑΙΟ 7. Αρχεία, εξαιρέσεις & εκσφαλμάτωση. 7.1 Εισαγωγή ΚΕΦΑΛΑΙΟ 7 Αρχεία, εξαιρέσεις & εκσφαλμάτωση Σύνοψη Στο κεφάλαιο αυτό ο αναγνώστης εισάγεται στην έννοια και χρήση των αρχείων, στις εξαιρέσεις και τη διαχείρισή τους, καθώς και στις έννοιες των τεχνικών

Διαβάστε περισσότερα

ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου.

ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου. ΜΑΘΗΜΑΤΑ PYTHON To 1991 o Guido van Rossman δημιούργησε την Python ως μια ανοιχτού λογισμικού ανεξάρτητη πλατφόρμας γενικού σκοπού γλώσσα προγραμματισμού (open source platformindependent). Είναι βασικά

Διαβάστε περισσότερα

3. Γράψτε μία εντολή που να εμφανίζει π.χ. «Πόσα είναι τα κορίτσια του;» και μία που να εμφανίζει: «Τα κορίτσια του Τζειμς Μποντ είναι 4»

3. Γράψτε μία εντολή που να εμφανίζει π.χ. «Πόσα είναι τα κορίτσια του;» και μία που να εμφανίζει: «Τα κορίτσια του Τζειμς Μποντ είναι 4» 1. Τι φαντάζεστε ότι θα κάνει η παρακάτω εντολή: print("καλημέρα.") εκτελέστε την στο περιβάλλον Python Shell 2. γράψτε μια παρόμοια π.χ. print("το όνομα μου είναι Μποντ.") 3. Γράψτε μία εντολή που να

Διαβάστε περισσότερα

ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου.

ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου. ΜΑΘΗΜΑΤΑ PYTHON To 1991 o Guido van Rossman δημιούργησε την Python ως μια ανοιχτού λογισμικού ανεξάρτητη πλατφόρμας γενικού σκοπού γλώσσα προγραμματισμού (open source platformindependent). Είναι βασικά

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Λεξικά Χειμερινό Εξάμηνο 2016 ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Λεξικά Χειμερινό Εξάμηνο 2016 Γιατί Λεξικά; Στις ακολουθίες (π.χ. λίστες, αλφαριθμητικά) μπορούμε να αναφερόμαστε σε ένα στοιχείο με τον αριθμητικό δείκτη του (π.χ.

Διαβάστε περισσότερα

Βασικά στοιχεία γλώσσας προγραμματισμού. Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19

Βασικά στοιχεία γλώσσας προγραμματισμού. Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19 Βασικά στοιχεία γλώσσας προγραμματισμού Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19 Ας θυμηθούμε ξανά την παλιά μας «αγάπη» Η Python είναι μία σύγχρονη, διερμηνευόμενη, υψηλού επιπέδου γλώσσα γενικής χρήσης

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγ/μό Υπολογιστών Εισαγωγή στον Προγ/μό Υπολογιστών Διάλεξη 7 Ακολουθίες (Sequences) Περιεχόμενα 1. Ακολουθίες 2. Λίστα (list) 3. Επαναληπτικοί υπολογισμοί ακολουθιών 4. Επεξεργασία ακολουθιών 5. Τελεστές ακολουθιών 6.

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 6. Αρχεία (Files)

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 6. Αρχεία (Files) ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 6 Αρχεία (Files) Η Python δίνει τη δυνατότητα εγγραφής δεδομένων σε αρχεία, καθώς και ανάγνωσης δεδομένων από αυτά. Ουσιαστικά πρόκειται για την είσοδο δεδομένων σε κάποιο

Διαβάστε περισσότερα

Η Απάντηση. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μηνύματα. 1. Πληκτρολογήστε την εντολή:

Η Απάντηση. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μηνύματα. 1. Πληκτρολογήστε την εντολή: Η Απάντηση Ενδεικτικές Απαντήσεις Φύλλου Εργασίας 1 22 Ιουλίου 2016 13:16 Μηνύματα 1. Πληκτρολογήστε την εντολή: print("καλημέρα.") Αυτό είναι το πρώτο σας πρόγραμμα. Εκτελέστε το για να δείτε τι θα συμβεί.

Διαβάστε περισσότερα

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

Βασικά Στοιχεία Python 3 Βασικά Στοιχεία Python 3 Compiler Lecture s 1.0 documentation Βασικά Στοιχεία Python 3 Στη συνέχεια παρουσιάζονται ορισμένα ενδιαφέροντα στοιχεία της Python 3. Αυτό που ακολουθεί δεν είναι tutorial, αν

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αναζήτηση και Ταξινόμηση Χειμερινό Εξάμηνο 2016 ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Αναζήτηση και Ταξινόμηση Χειμερινό Εξάμηνο 2016 Αναζήτηση και Ταξινόμηση Βασικές λειτουργίες σε προγράμματα Αναζήτηση (searching): Βρες ένα ζητούμενο στοιχείο σε μια

Διαβάστε περισσότερα

Λογικές εκφράσεις και μεταβλητές

Λογικές εκφράσεις και μεταβλητές Προηγούμενο Σημειώσεις Επόμενο Λογικές εκφράσεις και μεταβλητές Μπορούμε να γράψουμε μία λογική έκφραση η οποία θα είναι είτε αληθής είτε ψευδής. Μία συνηθισμένη λογική έκφραση είναι αυτή που ελέγχει αν

Διαβάστε περισσότερα

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Ακολουθίες: Λίστες και Πλειάδες Χειμερινό Εξάμηνο 2016

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Ακολουθίες: Λίστες και Πλειάδες Χειμερινό Εξάμηνο 2016 ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Ακολουθίες: Λίστες και Πλειάδες Χειμερινό Εξάμηνο 2016 Δομές δεδομένων Μια δομή δεδομένων είναι μια δομημένη (οργανωμένη) συλλογή στοιχείων (π.χ., ψηφίων, χαρακτήρων,

Διαβάστε περισσότερα

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

print( x is positive ) Στο διερμηνευτή Python, προσοχή στη στοίχιση, διότι γίνεται από το χρήστη: 37 ΛΑΜΒΑΝΟΝΤΑΣ ΑΠΟΦΑΣΕΙΣ 1. Εκτέλεση υπό συνθήκη if x >0: print('x is positive') x > = 0 print( x is positive ) Σχήμα: Η λογική του if then Στο διερμηνευτή Python, προσοχή στη στοίχιση, διότι γίνεται από

Διαβάστε περισσότερα

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

Σημειωματάριο Τετάρτης 18 Οκτ. 2017 Σημειωματάριο Τετάρτης 18 Οκτ. 2017 Περισσότερα για λίστες και ανακύκλωση Είδαμε σήμερα διάφορα προβλήματα και λύσεις για λίστες. Είδαμε επίσης την ανακύκλωση while. Στο επόμενο βλέπουμε πώς μπορούμε να

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αλφαριθμητικά Χειμερινό Εξάμηνο 2016 ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Αλφαριθμητικά Χειμερινό Εξάμηνο 2016 Λειτουργίες σε αλφαριθμητικά Μπορούμε να εφαρμόσουμε όλες τις λειτουργίες που έχουμε δει για πλειάδες και λίστες (π.χ. slicing)

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Έλεγχος Ροής Προγράµµατος Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Έλεγχος Ροής Προγράµµατος Χειµερινό Εξάµηνο 2014 Ροή προγράµµατος n n Μέχρι τώρα έχουµε δει προγράµµατα απλής ροής Οι εντολές εκτελούνται η µία µετά την άλλη σύµφωνα

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014 Αναζήτηση και Ταξινόµηση Βασικές λειτουργίες σε προγράµµατα Αναζήτηση (searching): Βρες ένα ζητούµενο στοιχείο σε µια

Διαβάστε περισσότερα

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Εργαστήριο 4: 4.1 Η Δομή Ελέγχου if Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Γενική Μορφή: Παρατηρήσεις:

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

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

Παράδειγμα. print (random.sample('christos drosos',3)) #3 στοιχεία από το δείγμα print (random.gauss(0,1)) #μέση τιμή 0 και απόκλιση 1 Η συνάρτηση Random Η γεννήτρια ψευδοτυχαίων αριθμών της python χρησιμοποιεί τη μέθοδο Mersenne Twister, η οποία παράγει αριθμούς κινητής υποδιαστολής με ακρίβεια 53 bit και έχει περίοδο 2 19937 1. Η συνάρτηση

Διαβάστε περισσότερα

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

Θέματα Προγραμματισμού Η/Υ Πρόγραμμα Μεταπτυχιακών Σπουδών Πληροφορική και Υπολογιστική Βιοϊατρική Θέματα Προγραμματισμού Η/Υ Ενότητα 5: Θεματική Ενότητα: Μεταβλητές και Μαθηματικοί και λογικοί τελεστές ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ

Διαβάστε περισσότερα

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Λίστες και Πλειάδες Χειµερινό Εξάµηνο 2014

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Λίστες και Πλειάδες Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Λίστες και Πλειάδες Χειµερινό Εξάµηνο 2014 Δοµές δεδοµένων Μια δοµή δεδοµένων είναι µια δοµηµένη (οργανωµένη) συλλογή στοιχείων (π.χ., ψηφίων, χαρακτήρων, αριθµών,

Διαβάστε περισσότερα

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

Πληρουορική Γ Γσμμασίοσ Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2. Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές. 2.1 Εισαγωγή

ΚΕΦΑΛΑΙΟ 2. Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές. 2.1 Εισαγωγή ΚΕΦΑΛΑΙΟ 2 Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές Σύνοψη Το κεφάλαιο αυτό εισάγει τον αναγνώστη σε βασικές έννοιες που είναι χρήσιμες για την απόκτηση μιας πρώτης εμπειρίας με την Python. Προαπαιτούμενη

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Επαναληπτικές Ασκήσεις Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Επαναληπτικές Ασκήσεις Χειµερινό Εξάµηνο 2014 Λίστες όρισµα 2 λίστες και θα επιστρέφει το γινόµενo των 2 «µεσαίων» στοιχείων τους. Π.χ. L1 = [5,1,3,2,4], L2 = [9,2,1,8,0]

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Λεξικά Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Λεξικά Χειµερινό Εξάµηνο 2014 Γιατί Λεξικά; Στις ακολουθίες (π.χ. λίστες, αλφαριθµητικά) µπορούµε να αναφερόµαστε σε ένα στοιχείο µε τον αριθµητικό δείκτη του (π.χ.

Διαβάστε περισσότερα

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

Υπολογισμός - Εντολές Ελέγχου Προγραμματισμός Η/Υ Ι Υπολογισμός - Εντολές Ελέγχου ΕΛΕΥΘΕΡΙΟΣ ΚΟΣΜΑΣ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2018-2019 ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. 1 Περίληψη Σήμερα... θα συνεχίσουμε τη συζήτησή μας για τα βασικά στοιχεία

Διαβάστε περισσότερα

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

Πληροφορική ΙΙ Θεματική Ενότητα 3 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Πληροφορική ΙΙ Θεματική Ενότητα 3 Είσοδος/έξοδος, μεταβλητές, αναθέσεις Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται

Διαβάστε περισσότερα

Η Απάντηση. Φύλλο Εργασίας. Μηνύματα

Η Απάντηση. Φύλλο Εργασίας. Μηνύματα Η Απάντηση Φύλλο Εργασίας Στο βιβλίο The Hitchhiker s Guide to the Galaxy, περιγράφεται μια υπερευφυής φυλή η οποία αποφασίζει να φτιάξει έναν υπολογιστή που θα δώσει οριστικά την απάντηση για το νόημα

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 5. Λεξικά (Dictionaries)

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 5. Λεξικά (Dictionaries) ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 5 Λεξικά (Dictionaries) Τα λεξικά είναι μια μεταβλητή δομή δεδομένων της Python για την αποθήκευση συλλογών δεδομένων της μορφής: κλειδί τιμή. Δηλαδή, κάθε στοιχείο σε ένα

Διαβάστε περισσότερα

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

Σημειωματάριο Δευτέρας 9 Οκτ. 2017 Σημειωματάριο Δευτέρας 9 Οκτ. 2017 Η δομή ελέγχου if... else... elif Βλέπουμε τώρα πώς μπορούμε να γράψουμε προγράμματα που η εκτέλεσή τους ακολουθεί διαφορετική πορεία ανάλογα με τα δεδομένα. Χωρίς τέτοιες

Διαβάστε περισσότερα

Άσκηση 1. Α. Υπολογίστε χωρίς να εκτελέσετε κώδικα FORTRAN τα παρακάτω: Ποιά είναι η τελική τιμή του Z στα παρακάτω κομμάτια κώδικα FORTRAN:

Άσκηση 1. Α. Υπολογίστε χωρίς να εκτελέσετε κώδικα FORTRAN τα παρακάτω: Ποιά είναι η τελική τιμή του Z στα παρακάτω κομμάτια κώδικα FORTRAN: Άσκηση 1 Α. Υπολογίστε χωρίς να εκτελέσετε κώδικα FORTRAN τα παρακάτω: Ποιά είναι η τελική τιμή του J στα παρακάτω κομμάτια κώδικα FORTRAN: INTEGER J J = 5 J = J + 1 J = J + 1 INTEGER X, Y, J X = 2 Y =

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Object Oriented Programming με Python

Object Oriented Programming με Python ΓΕ0170 -Αλγόριθμοι και Προηγμένες Προγραμματικές Τεχνικές Object Oriented Programming με Python Νίκος Αθανάσης e-mail: athanasis@geo.aegean.gr i = 1 while i

Διαβάστε περισσότερα

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

Σύντομες εισαγωγικές σημειώσεις για την. Matlab Σύντομες εισαγωγικές σημειώσεις για την Matlab Δήλωση Μεταβλητών Για να εισάγει κανείς δεδομένα στη Matlab υπάρχουν πολλοί τρόποι. Ο πιο απλός είναι στη γραμμή εντολών να εισάγουμε αυτό που θέλουμε και

Διαβάστε περισσότερα

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

alpha Language age (3/5) alpha Language Φροντιστήριο Syntax Directed Translation and alpha Language (1/5) ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Syntax Directed Translation and alpha Language Στην alpha δεν υπάρχει main() συνάρτηση, ο κώδικας ξεκινάει την εκτέλεση από την αρχή του

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 4

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 4 ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 4 Λίστες (Lists) Λίστα (list) στην Python ονομάζεται μια δυναμική δομή δεδομένων (στην πραγματικότητα, ένα αντικείμενο) που περιέχει πολλαπλά δεδομένα. Ουσιαστικά, η λίστα

Διαβάστε περισσότερα

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

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Β Μέρος Δομή Ελέγχου if-elif-else Επαναληπτική Δομή Ελέγχου while Επαναληπτική Δομή Ελέγχου for Αλληλεπίδραση χρήστη-προγράμματος Συναρτήσεις Η δομή

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1 Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων IDLE - Διαδικασία ανάπτυξης προγραμμάτων Python - Απλά προγράμματα

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εξαιρέσεις Εξαιρέσεις Στα προγράμματα μας θα πρέπει να μπορούμε να χειριστούμε περιπτώσεις που το πρόγραμμα δεν εξελίσσεται όπως το είχαμε προβλέψει Π.χ., κάνουμε

Διαβάστε περισσότερα

Τυχαίοι αριθμοί ρίξε μια «ζαριά»

Τυχαίοι αριθμοί ρίξε μια «ζαριά» Τυχαίοι αριθμοί ρίξε μια «ζαριά» Έννοιες: βιβλιοθήκη random, δομή επιλογής, δομή επανάληψης, υποπρογράμματα 1. Ας υποθέσουμε τι θα κάνουν οι παρακάτω εντολές: import random choose1 = random.randint(1,6)

Διαβάστε περισσότερα

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

Διαβάστε περισσότερα

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

Διαβάστε περισσότερα

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναδροµικές Συναρτήσεις Χειµερινό Εξάµηνο 2014

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναδροµικές Συναρτήσεις Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Αναδροµικές Συναρτήσεις Χειµερινό Εξάµηνο 2014 Ορισµός και ιδιότητες Μια συνάρτηση είναι αναδροµική αν καλεί τον εαυτό της Οι περισσότερες γλώσσες προγραµµατισµού υποστηρίζουν

Διαβάστε περισσότερα

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

Φύλλο Εργασίας 3. Μια γρήγορη επανάληψη από τα προηγούμενα 3 Φύλλο Εργασίας 3 Στο φύλλο εργασιών 3 θα ασχοληθούμε με τις λίστες μια δομή της γλώσσας python που έχει την δομή ενός πίνακα. Θα χρησιμοποιήσουμε τις βασικές εντολές από τις λίστες και θα κατασκευάσουμε

Διαβάστε περισσότερα

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική

Διαβάστε περισσότερα

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράµµατα «γράφονται» χρησιµοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαµβάνει

Διαβάστε περισσότερα

Κεφάλαιο. δομές ελέγχου. Περίγραμμα. Στόχοι

Κεφάλαιο. δομές ελέγχου. Περίγραμμα. Στόχοι Κεφάλαιο 3 Λογικές συνθήκες και δομές ελέγχου Περίγραμμα 3.1 Λογικές εκφράσεις 3.2 Δομές ελέγχου ροής 3.3 Επαναλήψιμοι τύποι δεδομένων 3.4 Συμπεριλήψεις 3.5 Γεννητορικές εκφράσεις Στόχοι Το κεφάλαιο αυτό

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python 1η Ομάδα Ασκήσεων Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων IDLE - Διαδικασία ανάπτυξης προγραμμάτων Python - Εισαγωγικά προγράμματα / print / μεταβλητές / input

Διαβάστε περισσότερα

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο Τετάρτη, 30 Οκτωβρίου 2013 Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο Λύστε στο Visual Basic Express 2010 τις παρακάτω ασκήσεις: 1. Να δημιουργήσετε ένα νέο Project του είδους Console

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό Python Μάθημα 4: Συναρτήσεις (functions) και δομοστοιχεία (modules) στην Python

Εισαγωγή στον Προγραμματισμό Python Μάθημα 4: Συναρτήσεις (functions) και δομοστοιχεία (modules) στην Python Εισαγωγή στον Προγραμματισμό Python Μάθημα 4: Συναρτήσεις (functions) και δομοστοιχεία (modules) στην Python Νοέμβριος 2014 Χ. Αλεξανδράκη, Γ. Δημητρακάκης Συναρτήσεις (Functions) Στον προγραμματισμό,

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2017-2018 ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ ΜΑΘΗΜΑ: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Εισαγωγή ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ Ένα πρόγραμμα σε C περιλαμβάνει μια ή περισσότερες συναρτήσεις

Διαβάστε περισσότερα

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

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6) ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ ΠΑΡΑΣΚΕΥΗ 22 ΣΕΠΤΕΜΒΡΙΟΥ 2017 ΘΕΜΑ Α ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ:

Διαβάστε περισσότερα

Βασικές Ασκήσεις από τα Εργαστήρια της Python. Πέμπτη Εργ. 3 17:15 και 19:15

Βασικές Ασκήσεις από τα Εργαστήρια της Python. Πέμπτη Εργ. 3 17:15 και 19:15 Βασικές Ασκήσεις από τα Εργαστήρια της Python Πέμπτη Εργ. 3 17:15 και 19:15 Αντί να χρησιμοποιούμε πολλές ομοειδείς μεταβλητές του ίδιου τύπου, όπως παραδείγματος χάριν, οι 7 μέσες θερμοκρασίες μίας εβδομάδας,

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Πίνακες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Πίνακες Πολλές φορές θέλουμε να κρατήσουμε στην μνήμη πολλά αντικείμενα

Διαβάστε περισσότερα

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού Μάθημα 2ο Aντώνης Σπυρόπουλος v2_061015 Οροι που

Διαβάστε περισσότερα

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

Πληροφορική ΙΙ Θεματική Ενότητα 4 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Πληροφορική ΙΙ Θεματική Ενότητα 4 Μεταβλητές και Μαθηματικοί και λογικοί τελεστές Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Έλεγχος Ροής - Παραδείγµατα Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Έλεγχος Ροής - Παραδείγµατα Χειµερινό Εξάµηνο 2014 Δίσεκτο έτος Ένα έτος είναι δίσεκτο αν διαιρείται ακριβώς µε το 400 ή διαιρείται ακριβώς µε το 4 και δεν διαιρείται

Διαβάστε περισσότερα

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εργαστήριο 1η εβδομάδα. Κοζάνη, 5 Οκτωβρίου 2007. Βασικά στοιχεία γραφής προγραμμάτων με τη C: α) Case Sensitive!!! β) Δυνατότητα εισαγωγής σχολίων με /*

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Βασικά χαρακτηριστικά αναπτύχθηκε ως επέκταση της C το 1979 υπερσύνολο της C γλώσσα γενικού σκοπού, γρήγορη, Αντικειμενοστραφής προγραμματισμός (Object

Διαβάστε περισσότερα

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική

Διαβάστε περισσότερα

Σημειωματάριο Δευτέρας 20 Νοε. 2017

Σημειωματάριο Δευτέρας 20 Νοε. 2017 Σημειωματάριο Δευτέρας 20 Νοε. 2017 Ένα πρόγραμμα "τηλεφωνικός κατάλογος" Σήμερα φτιάξαμε μια πρώτη μορφή ενός σχετικά μεγάλου προγράμματος που σκοπό έχει να κρατάει και να διαχειρίζεται τηλέφωνα και άλλη

Διαβάστε περισσότερα

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

Στόχοι και αντικείμενο ενότητας. Προτάσεις επανάληψης. Έλεγχος ροής προγράμματος. #5.. Εντολές Επανάληψης Στόχοι και αντικείμενο ενότητας Έλεγχος ροής προγράμματος (βλ. ενότητα #4) Δομή επανάληψης #5.. Εντολές Επανάληψης Προτάσεις επανάληψης Εντολές while, do while Εντολή for Περί βρόχων (loops) Τελεστές,

Διαβάστε περισσότερα

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

Σημειωματάριο Τετάρτης 25 Οκτ. 2017 Σημειωματάριο Τετάρτης 25 Οκτ. 2017 Ένα πρόγραμμα που παίζει κρεμάλα Σήμερα φτιάξαμε ένα πρόγραμμα που παίζει "κρεμάλα" με το χρήστη. Το πρόγραμμα hangman.py link (http://fourier.math.uoc.gr/~mk/prog1718/files/hangman.py))

Διαβάστε περισσότερα

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

Σημειωματάριο Δευτέρας 30 Οκτ. 2017 Σημειωματάριο Δευτέρας 30 Οκτ. 2017 Συναρτήσεις (functions) Μια συνάρτηση στην Python είναι κομμάτι κώδικα που φέρει το δικό του όνομα (ακολουθεί τη λέξη κλειδί def στον ορισμό της συνάρτησης, έχει τα

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού Python ΓΕ0170 -Αλγόριθμοι και Προηγμένες Προγραμματικές Τεχνικές Η γλώσσα προγραμματισμού Python Νίκος Αθανάσης e-mail: athanasis@geo.aegean.gr Η έννοια του αλγορίθμου Αλγόριθμος είναι ένα πεπερασμένο σύνολο

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Αναφορές Μαθήματα από το lab Υπενθύμιση: Η άσκηση ζητούσε να υλοποιήσετε μία κλάση vector που να διαχειρίζεται διανύσματα οποιουδήποτε

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το

Διαβάστε περισσότερα

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

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Έλεγχος Ροής Προγράμματος ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Έλεγχος Ροής Προγράμματος Ροή προγράμματος Μέχρι τώρα έχουμε δει προγράμματα απλής ροής Οι εντολές εκτελούνται η μία μετά την άλλη σύμφωνα με την ακολουθία γραμμών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας Στην άσκηση αυτή θα υλοποιήσετε μια κλάση Geometric η οποία διαχειρίζεται μια γεωμετρική ακολουθία ακεραίων

Διαβάστε περισσότερα

Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ

Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ Project του μαθήματος Εργασία 2 ατόμων Προφορική εξέταση για: Project (80%) Θεωρία (20%) Στο φροντιστήριο: Συζητάμε

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο input

Διαβάστε περισσότερα

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

Ο πιο κάτω πίνακας περιγράφει σε ποιες περιπτώσεις χρησιμοποιούμε τους τρεις πιο πάνω τρόπους: Επαναλήψεις - Loops Οι επαναλήψεις σε ένα πρόγραμμα μας επιτρέπουν μια ομάδα εντολών να εκτελείται για όσες φορές επιθυμούμε Υπάρχουν τρεις τρόποι επανάληψης εντολών με τη χρήση: While loops For loops

Διαβάστε περισσότερα

Mπαρμπούτι. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Τυχαιότητα

Mπαρμπούτι. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Τυχαιότητα Mπαρμπούτι Ενδεικτικές Απαντήσεις Φύλλου Εργασίας 2 22 Ιουλίου 2016 13:51 Τυχαιότητα Στο παιχνίδι που θα υλοποιήσουμε, ο παίκτης ρίχνει δύο ζάρια. Το αποτέλεσμα του παιχνιδιού εξαρτάται από το άθροισμα

Διαβάστε περισσότερα

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ Python & NLTK: Εισαγωγή Εισαγωγή Γιατί Python? Παρουσίαση NLTK Πηγές και χρήσιμα εργαλεία Φροντιστήριο σε Python Στο φροντιστήριο: Εισαγωγή στην Python Ζητήματα προγραμματισμού για

Διαβάστε περισσότερα

Γλωσσική Τεχνολογία. Εισαγωγικό Φροντιστήριο

Γλωσσική Τεχνολογία. Εισαγωγικό Φροντιστήριο Γλωσσική Τεχνολογία Εισαγωγικό Φροντιστήριο Project του μαθήματος Εργασία 2 ατόμων Προφορική εξέταση για: Project (80%) Θεωρία (20%) Στο φροντιστήριο: Συζητάμε σχεδιαστικές επιλογές Λύνουμε ζητήματα υλοποίησης

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Βασικά στοιχεία γλώσσας προγραμματισμού

Βασικά στοιχεία γλώσσας προγραμματισμού Βασικά στοιχεία γλώσσας προγραμματισμού Κέρος Α. Ιωάννης Καθηγητής Πληροφορικής ΠΕ19 1 ο ΕΠΑΛ Κιλκίς Ας θυμηθούμε ξανά την παλιά μας «αγάπη» Η Python είναι μία σύγχρονη, διερμηνευόμενη, υψηλού επιπέδου

Διαβάστε περισσότερα

ΘΕΜΑ : «Από την ΜicroWorlds Pro στην Python. Μια Βιωματική Διδακτική Πρόταση.»

ΘΕΜΑ : «Από την ΜicroWorlds Pro στην Python. Μια Βιωματική Διδακτική Πρόταση.» Η προτεινόμενη διδακτική πρόταση υλοποιήθηκε στα πλαίσια του μαθήματος της Πληροφορικής στη Γ Γυμνασίου. ΘΕΜΑ : «Από την ΜicroWorlds Pro στην Python. Μια Βιωματική Διδακτική Πρόταση.» Μαζέρας Αχιλλέας

Διαβάστε περισσότερα

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

HY340, 2009 Α. Σαββίδης Slide 2 / 143. HY340, 2009 Α. Σαββίδης Slide 3 / 143. HY340, 2009 Α. Σαββίδης Slide 4 / 143 HY340 : ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ HY340 : ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ Φροντιστήριο 4ο Παραγωγή Ενδιάμεσου Κώδικα ΔΙΔΑΣΚΩΝ Αντώνιος Σαββίδης

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης Κ.Π. Γιαλούρης Στόχοι του σημερινού μαθήματος Χειρισμός εξαιρέσεων Μεταβλητές τύπου Tuple Dictionary Set 2 Χειρισμός εξαιρέσεων-δομή try: Εντολή-try-1 Εντολή- try- 2 Except Error_type : Εντολή exept_1.1

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07 Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public

Διαβάστε περισσότερα

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

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Python scripts Ένα πρόγραμμα στην Python (συχνά αποκαλείται script) αποτελείται από μία ακολουθία ορισμών και εντολών. H ακολουθία των ορισμών και

Διαβάστε περισσότερα

Δοκιμή και Αποσφαλμάτωση Testing and Debugging

Δοκιμή και Αποσφαλμάτωση Testing and Debugging Δοκιμή και Αποσφαλμάτωση Testing and Debugging XVI-1 Ο μεταγλωττιστής εντοπίζει τα συντακτικά λάθη ενός προγράμματος. Δεν είναι όμως σε θέση να εντοπίσει λάθη στη λογική του προγράμματος. δεδομένα πρόγραμμα

Διαβάστε περισσότερα

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

Κεφάλαιο : Επαναλήψεις (o βρόγχος While) (Διάλεξη 9) Δομές Έλεγχου Προγράμματος Κεφάλαιο 5.1-5.3: Επαναλήψεις (o βρόγχος While) (Διάλεξη 9) 9-1 Δομές Έλεγχου Προγράμματος Μέχρι τώρα είδαμε τις ακόλουθες δομές έλεγχου (program control structure) ενός προγράμματος Α) Sequence π.χ. int

Διαβάστε περισσότερα

Η βασική συνάρτηση προγράμματος main()

Η βασική συνάρτηση προγράμματος main() Η βασική συνάρτηση προγράμματος main() HEADER FILES main(){ ΔΗΛΩΣΕΙΣ ΜΕΤΑΒΛΗΤΩΝ ΕΝΤΟΛΕΣ (σειριακές, επιλογής ή επανάληψης) ΕΠΙΣΤΡΕΦΟΜΕΝΟΣ ΤΥΠΟΣ (return 0;) Συναρτήσεις Η συνάρτηση είναι ένα υποπρόγραμμα

Διαβάστε περισσότερα

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο)

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο) TEC610 (ΣΤ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Εαρινό εξάμηνο Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά

Διαβάστε περισσότερα