4 η Διάλεξη Python - Συναρτήσεις

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

Download "4 η Διάλεξη Python - Συναρτήσεις"

Transcript

1 4 η Διάλεξη Python - Συναρτήσεις

2 Συναρτήσεις Οι συναρτήσεις µας επιτρέπουν την ομαδοποίηση κώδικα που επιτελεί µια συγκεκριμένη λειτουργία και, κατά συνέπεια, την ευκολότερη επαναχρησιμοποίησή του. Επιπλέον, επιτρέπουν τον σχεδιασμό του τελικού συστήματος λογισμικού σε ένα υψηλότερο επίπεδο αφαίρεσης, όπου οι λειτουργικότητα παρέχεται µέσω συναρτήσεων Στην συνέχεια απομένει η υλοποίηση αυτών, μέχρι του σημείου όπου οι μικρότερες δομικές μονάδες που χρησιμοποιούνται, παρέχονται ήδη από το σύστημα. Ορισμός: Συνάρτηση είναι μια αυτόνομη μονάδα κώδικα που σχεδιάστηκε για να εκτελεί μια συγκεκριμένη εργασία

3 Συναρτήσεις Η γενική μορφή μια συνάρτησης έχει τη μορφή: def όνομα_συνάρτησης (παράμετροι): εντολές return αποτέλεσμα/τα Ο ορισμός μιας συνάρτησης γίνεται με τη λέξη κλειδί def ακολουθεί το όνομα της συνάρτησης και ένα ζευγάρι παρενθέσεων με την προαιρετική λίστα παραμέτρων. Το όνομα της συνάρτησης ακολουθεί τους κανόνες ονοματολογίας των μεταβλητών Το όνομα μιας συνάρτησης πρέπει να είναι μοναδικό και όσο το δυνατόν περιγραφικό

4 Συναρτήσεις Η λίστα παραμέτρων αποτελείται από μεταβλητές που χωρίζονται μεταξύ τους με κόμμα και αποτελούν τις τιμές εισόδου της συνάρτησης. Με τις παραμέτρους γίνεται το πέρασμα τιμών από την καλούσα συνάρτηση στη καλούμενη, οι μεταβλητές αυτές αποτελούν «τοπικές μεταβλητές» της συνάρτησης Η εντολή return είναι προαιρετική και προκαλεί άμεση έξοδο από τη συνάρτηση Η κλήση μιας συνάρτησης έχει τη γενική μορφή: όνομα_συνάρτησης(λίστα_παραμέτρων)

5 Συναρτήσεις >>> def sayhello(a): print(a) return Ή def sayhello(): print('γειά σου κόσμε')

6 Κατηγορίες συναρτήσεων Συναρτήσεις χωρίς παραμέτρους που δεν επιστρέφουν τιμή Συνήθως εμφανίζουν κάτι στην οθόνη: >>> def ektipositetragoou(): print('******') print('* *') print('* *') print('* *') print('* *') print('******')

7 Κατηγορίες συναρτήσεων Συναρτήσεις χωρίς παραμέτρους που επιστρέφουν τιμή: Αν και δεν έχουν παραμέτρους επιστρέφουν μια τιμή: def zari(): return random.randint(1,6) Η κλήση της συνάρτησης γίνεται: k=zari() print(k) Ή print(zari())

8 Κατηγορίες συναρτήσεων Συναρτήσεις με παραμέτρους που δεν επιστρέφουν τιμή: Οι συναρτήσεις αυτής της κατηγορίας δέχονται κάποια τιμή και εμφανίζουν ένα αποτέλεσμα στην οθόνη:

9 Κατηγορίες συναρτήσεων Συναρτήσεις με παραμέτρους που επιστρέφουν τιμή:

10 Παράδειγμα

11 Εμβέλεια μεταβλητών Με τον όρο εμβέλεια μιας μεταβλητής εννοούμε το τμήμα του προγράμματος στο οποίο μια αναφορά στη μεταβλητή είναι έγκυρη. Κάθε συνάρτηση ορίζει ένα νέο χώρο εμβέλειας, ο οποίος αναφέρεται και ως χώρος ονομάτων (namespace). Οι μεταβλητές που δηλώνονται μέσα σε μια συνάρτηση ονομάζονται τοπικές (local) μεταβλητές και έχουν εμβέλεια μόνο μέσα στη συνάρτηση. Οι παράμετροι μιας συνάρτησης θεωρούνται τοπικές μεταβλητές της συνάρτησης Οι τοπικές μεταβλητές καταστρέφονται μόλις εκτελεστούν όλες οι εντολές της συνάρτησης ή την εγκαταλείψουμε με την εντολή return Επιτρέπεται η δήλωση μεταβλητών με το ίδιο όνομα μέσα στο κυρίως πρόγραμμα και σε μια συνάρτηση

12 Εμβέλεια μεταβλητών Παράδειγμα # 5-02.py def foo(): x = 10 print(x) def bar(): print(x) x = 99 foo() bar() print(x) # a local variable with the same name # no local variable x exist in bar Στη συνάρτηση bar που δεν υπάρχει τοπική μεταβλητή με το όνομα χ η print τυπώνει τη μεταβλητή χ του κυρίως προγράμματος. Αν τροποποιήσουμε τη bar: def bar(): print(x) x= geia sou print(x) Θα πάρουμε σφάλμα :local variable x referenced before assignment, και αυτό γιατί η μεταβλητή χ αντιμετωπίζεται πλέον ως τοπική μεταβλητή και γίνεται αναφορά σε αυτή πριν της δώσουμε κάποια τιμή

13 Εμβέλεια μεταβλητών Για να τροποποιήσουμε μέσα από μια συνάρτηση μια μεταβλητή δηλωμένη εκτός αυτής είναι με τη χρήση του προσδιοριστικού global: # 5-03.py def foo(): global x print('in foo, x is', x) x = 10 print('in foo, x is now', x) x = 99 foo() print('x is', x) Μια συνάρτηση μπορεί να διαβάσει την τιμή μιας εξωτερικής μεταβλητής, εφόσον δεν υπάρχει τοπική μεταβλητή με το ίδιο όνομα. Δεν μπορεί να τροποποιήσει την τιμή της χωρίς τον προσδιοριστεί global

14 Παράμετροι και Ορίσματα Όταν γίνεται κλήση μιας συνάρτησης με ορίσματα τότε αντιγράφεται η τιμή ενός ορίσματος στην αντίστοιχη τυπική παράμετρο της συνάρτησης. Η Python μας παρέχει τη δυνατότητα να ορίσουμε συναρτήσεις με προεπιλεγμένες τιμές ορισμάτων, με αποτέλεσμα κατά την κλήση της συνάρτησης να μπορούμε να παραλείψουμε τα συγκεκριμένα ορίσματα. Τα ορίσματα προεπιλεγμένης τιμής ονομάζονται keyword arguments σε αντίθεση με τα ορίσματα θέσης (position-all) όπου υπάρχει αντιστοιχία θέσης μεταξύ ορίσματος και παραμέτρου. Η προεπιλεγμένη τιμή ορίσματος πρέπει να έχει σταθερή τιμή και να καθορίζεται στον ορισμό της συνάρτησης: def sayhello(times=1): print( Γειά σου *times) Στην πρώτη περίπτωση στο πρόγραμμα της εικόνας δεν καθορίζουμε όρισμα οπότε το times παίρνει τη προκαθορισμένη τιμή

15 Παράδειγμα # 5-04.py def rectangularvolume(l, w, h=1): # default height is 1 return l * w * h print(rectangularvolume(1, 2)) # l=1, w=2, h=1 print(rectangularvolume(1, 2, 3)) # l=1, w=2, h=3 print(rectangularvolume(h=7, w=2, l=1)) # l=1, w=2, h=7 print(rectangularvolume(w=2, l=1)) # l=1, w=2, h=1 print(rectangularvolume(5, h=2, w=1)) # l=5, w=1, h=2 print(rectangularvolume(8, w=1)) # l=8, w=1, h=1

16 Μεταβλητός αριθμός ορισμάτων Για να περάσουμε σε μια συνάρτηση μεταβλητό αριθμό ορισμάτων, πρέπει να βάλουμε έναν * πριν το όνομα του ορίσματος, έτσι ώστε python στη συνέχεια να χειρίζεται το όρισμα ως πλειάδα. (non- keyworded) # 5-05.py def foo(farg, *args): print('formal argument:', farg) print('and now the arguments through *args:') for arg in args: print(arg) foo('nestos', [1, 3, 5, 7], 'Karadere', 3.14)

17 Μεταβλητός αριθμός ορισμάτων Αν βάλουμε 2 αστερίσκους μπορούμε να περάσουμε στη συνάρτηση έναν μεταβλητό αριθμό ορισμάτων (λεξικό). (keyworded variable length of arguments) # 5-06.py - def bar(farg, **kwargs): print('formal arg:', farg) print('and now the arguments through **kwargs:') for key in kwargs: print('%s: %s' % (key, kwargs[key])) bar('thassos', fname='soula', lname='pappa', age=21) Αν χρειαστεί να χρησιμοποιήσουμε και τους 3 τύπους παραμέτρων πρέπει να ακολουθήσουμε τη σειρά: formal, *args,***kwargs.

18 Αλφαριθμητικά τεκμηρίωσης Για να κάνουμε το κώδικά μας πιο κατανοητό είναι στις συναρτήσεις πρέπει να βάζουμε στην επόμενη γραμμή μετά την επικεφαλίδα ένα σχόλιο ανάμεσα σε 3πλά quotes το οποίο περιγράφει τη λειτουργία της συνάρτησης. Το αλφαριθμητικό αυτό ονομάζεται docstring και έχουμε πρόσβαση σε αυτό μέσω της ιδιότητας doc # 5-07.py def rectangularvolume(l, w, h=1): """ Compute and return the volume of a rectangular: rectangularvolume(length, width, height) If height is not given, default value is 1 """ return l * w * h print(rectangularvolume. doc )

19 Αναδρομή - Recursion Αναδρομή (recursion): μια συνάρτηση καλεί τον εαυτό της. Ο τερματισμός μιας τέτοιας αναδρομής γίνεται με μια συνθήκη: def name(arguments): if συνθήκη: else return λύση return κλήση της συνάρτησης Παρατηρούμε ότι χωρίς συνθήκη η συνάρτηση συνεχώς καλεί τον ευατό της μέχρι να δημιουργηθεί σφάλμα εκτέλεσης

20 Παράδειγμα Εύρεση του n! (πχ 4!=1*2*3*4=24) 1 η μέθοδος (επαναληπτική) def nparagontiko(n): a=1 for i range(1,n+1): a=a*i return(a) 2 η μέθοδος recursive: def nparagontiko(n): if n<=1: return 1 else : return n*nparagontiko(n-1) ΚΛΗΣΗ ΤΙΜΗ ΑΝΑΛΥΣΗ nparagontiko(5) 5*nparagontiko(4) 5*(4*3*2*1)=120 nparagontiko(4) 4*nparagontiko(3) 4*(3*2*1)=24 nparagontiko(3) 3*nparagontiko(2) 3*(2*1)=6 nparagontiko(2) 2*nparagontiko(1) 2*1=2 nparagontiko(1) 1

21 Παράδειγμα # 5-09.py def sum(list): if list == []: # if empty list return 0 return 0 else: return list[0] + sum(list[1:]); mylist = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print('sum of elements is %d' % sum(mylist)); Στο παραπάνω παράδειγμα βρίσκουμε το άθροισμα των στοιχείων μιας λίστας

22 Συναρτήσεις lambda με τη λέξη κλειδί lambda μπορούμε να ορίσουμε συναρτήσεις μιας γραμμής (συνήθως ανώνυμες) και να τις χρησιμοποιήσουμε αργότερα στο πρόγραμμά μας : Γενική μορφή: lambda arg1,arg2, argn : Παράσταση με χρήση των ορισμάτων >>> f=lambda x,y :x+y # υπολογίζει το άθροισμα 2 αριθμών >>> f(2,3) 5 Μπορούμε να ορίσουμε μια συνάρτηση που να έχει παράμετρο μια συνάρτηση lambda: >>> def synartisi(f,n): print(f(n)) >>> k=lambda n:n+1 >>> synartisi(k,10) 11

23 Συναρτήσεις lambda Μια συνάρτηση lambda έχει το δικό της χώρο ονομάτων και δεν μπορεί να προσπελάσει άλλες μεταβλητές εκτός αυτών της λίστας παραμέτρων της. Συναρτήσεις lambda χρησιμοποιούμε στη δημιουργία χειριστών συμβάντων στον προγραμματισμό γραφικών διεπαφών >>> tetragona=list(map(lambda x: x*x,range(11))) #Η map εφαρμόζει σε κάθε αριθμό από το 0 μέχρι το 10 την οριζόμενη συνάρτηση lambda >>> print(tetragona) [0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100] >>>mini=list(filter(lambda x: x<10, tetragona)) #Η filter παίρνει ως όρισμα μια συνα ρτηση lambda η οποία εμφανίζει τα στοιχεία της λίστας tetragona που είναι μικρότερα από το 10 >>> print(mini) [0, 1, 4, 9]

24 Γεννήτορες Generators Ένας γεννήτορας (generator) είναι μια ειδική συνάρτηση η οποία επιστρέφει μια ακολουθία τιμών. Πιο συγκεκριμένα επιστρέφει έναν επαναλήπτη (iterator) που μπορεί να χρησιμοποιηθεί σε βρόγχο: # 5-10.py def mygenerator(): yield 1 # η ακολουθία των τιμών δημιουργείται στοιχείο στοιχείο με την εντολή yield yield 2 yield 3 for i in mygenerator(): print(i) Κάθε φορά που εκτελείται η yield η συνάρτηση επιστρέφει μια νέα τιμή. Σε κάθε κλήση το γεννήτορα συνεχίζει την εκτέλεση από εκεί που είχε σταματήσει τη προηγούμενη φορά, δηλαδή δεν έχουμε τη δημιουργία κάποιας λίστας αλλά η έξοδος παράγεται τμηματικά. Εναλλακτικά θα μπορούσαμε να καλέσουμε και τη μέθοδο next του γεννήτορα

25 Γεννήτορες Generators # 5-11.py Fibonacci generator def fibonacci(n): a, b, i = 0, 1, 0 while True: if (i > n): return yield a a, b = b, a + b i += 1 f = fibonacci(10) for i in f: print(i, end=' ') Στο αποκάτω παράδειγμα δίνουμε σαν όρισμα στην ενσωματωμένη συνάρτηση sum ένα γεννήτορα που επιστρέφει τις τιμές των τετραγώνων από 1 έως 10 >>>sum(x**2 for x in range(1,11)) 385

26 Modules Ο τεμαχισμός του κώδικα σε κομμάτια τα οποία μπορούμε αργότερα να επαναχρησιμοποιήσουμε σε άλλα προγράμματα μας παρέχει μεγάλη ευελιξία. Ο τρόπος αυτός οργάνωσης του κώδικα ονομάζεται Modularity (τμηματοποίηση). Τα αρχεία αυτά ονομάζονται Modules και έχουν την κατάληξη.py, Η εισαγωγή τους σε ένα πρόγραμμα γίνεται με τις εντολές import ή from import Μετά την εισαγωγή τους έχουμε πρόσβαση στα αντικείμενα της μονάδας με την εξής εντολή: module.object Οποιοδήποτε αρχείο που περιέχει εντολές της Python μπορεί να χρησιμοποιηθεί ως module (Μονάδα)

27 Modules - Παράδειγμα Έστω ο παρακάτω κώδικας των οποίο αποθηκεύουμε με το όνομα test.py: def add(x,y): return x+y def substract(x,y): Mypi=3.14 return x-y print(mypi) Αν το εκτελέσουμε από γραμμή εντολών : >>>test.py θα πάρουμε 3.14 Προφανώς αυτό γίνεται λόγο της τελευταίας εντολής. Αν εισάγουμε το αρχείο ως μονάδα σε κάποιο άλλο πρόγραμμα: #testprog.py import test print(test.add(3,5)) Print(test.substract(10,test.Mypi) Θα πάρουμε :

28 Η συνάρτηση main() Η python δεν έχει κάποια βασική συνάρτηση main() όπως η c++, από την οποία να αρχίζει η εκτέλεση ενός προγράμματος. Ο διερμηνευτής της python πριν διαβάσει ένα αρχείο κώδικα ορίζει κάποιες ειδικές μεταβλητές, μια από αυτές είναι και name στην οποία εκχωρεί την τιμή main αυτό γίνεται για να ξεχωρίζει ο κώδικας που είναι για εκτέλεση από τα τμήματα κώδικα που ορίζουν κάποια λειτουργικότητα (Import). Όταν κάνουμε import κάποιο Module τότε η ειδική μεταβλητή name παίρνει ως τιμή το όνομα του αρχείου που κάνουμε import. Αυτή η διαφοροποίηση της τιμής μας επιτρέπει να ξεχωρίζουμε τις 2 αυτές λειτουργίες με μια απλή if: #mymodule test def foo(): pass If name == main_ : else: print( %s εκτέλεση % file ) print( name έχει τιμή %s % name ) print( %s είσήχθει το : % file ) print( name έχει τιμή: %s %_)name ) Αν εκτελέσουμε το πρόγραμμα θα εκτελεστούν οι εντολές του if : mymodule.py εκτέλεση name έχει τιμή: main Αν το κάναμε Import θα εκτελεστούν οι εντολές του τμήματος else:

29 Η συνάρτηση main() def add(x,y): return x+y def substract(x,y): return x-y Mypi=3.14 print(mypi) if name == main : #τροποποιώντας το προηγούμενο παράδειγμα όταν κάνουμε εισαγωγή σε ένα άλλο πρόγραμμα το test.py δεν θα τυπώνεται το Mypi print(mypi)

30 Παράδειγμα Το πρόγραμμα που ακολουθεί επιδεικνύει την κλήση ενός προγράμματος με ορίσματα από την γραμμή εντολών: # 5-12.py import sys for arg in sys.argv: print(arg) print('total %d arguments' % len(sys.argv)) Ένα στιγμιότυπο της κλήσης του προγράμματος είναι: C:> python 5-12.py athina att gre 5.12.py athina att gre Total 4 arguments

31 Πακέτα - Packages Τα πακέτα είναι συλλογές από ομοειδείς μονάδες οργανωμένα σε καταλόγους και υποκαταλόγους. Κάθε πακέτο είναι ένας κατάλογος που πρέπει να περιέχει ένα ειδικό αρχείο με το όνομα init.py το οποίο σηματοδοτεί ότι ο συγκεκριμένος κατάλογος αποτελεί ένα πακέτο. Αν στο αρχείο ορίζεται μια λίστα με όνομα all, τότε η τιμή της λίστας καθορίζει τα περιεχόμενα του πακέτου όταν γίνεται εισαγωγή με την εντολή from package import* Παράδειγμα :δομή των καταλόγων του πακέτου supermath supermath/ init.py algebra/ init.py linear.py geometry/ polynomial.py boolean.py init.py line.py polygon.py import supermath.geometry.polygon import supermath.geometry.polygon.draw(args) Αν κάνουμε εισαγωγή με την εντολή: from supermath.geometry.polygon import draw Μπορούμε στη συνέχεια να καλούμε απλά με το όνομά του: draw(args)

32 Παραδείγματα Να φτιαχτεί συνάρτηση η οποία θα δέχεται έναν ακέραιο και θα τυπώνει το χαρακτήρα * τόσες φορές όσο είναι η τιμή του αριθμού: # 5-14.py def printstar(n): while n > 0: print('*', end=' ') n -= 1 #μείωση κατά 1 printstar(5) print() printstar(10)

33 Παραδείγματα Υπολογισμός της απόλυτης τιμής ενός αριθμού: # 5-15.py def myabs(x): if x < 0: return -x else: return x n = int(input('give an integer: ')) print('absolute value of %d is %d' % (n, myabs(n)));

34 Παραδείγματα Το παρακάτω πρόγραμμα καλεί μια συνάρτηση η οποία δέχεται 3 ακέραιους αριθμούς και επιστρέφει τον ενδιάμεσο αυτών: # 5-16.py def getmedian(a, b, c): if ((a <= b) and (a >= c)) or ((a >= b) and (a <= c)): median = a; elif ((b <= a) and (b >= c)) or ((b >= a) and (b <= c)): else: median = b; median = c; return median; x, y, z = [int(n) for n in input('give 3 integers:').split()] print('median is %d' % getmedian(x,y,z))

35 Παράδειγμα: μετατροπή ίντσες σε εκατοστά # 5-17.py def convert(inches): return inches * 2.54 inches = float(input(πόσο ψηλός είσαι σε ίντσες? ')) print('you are %.2f cm tall.' % convert(inches))

36 Παράδειγμα: Λύση Δευτεροβάθμιας # 5-18.py from math import sqrt def diakrinousa(a, b, c): return b*b - 4*a*c def printsolution(a, b, c): D = diakrinousa(a, b, c) if D < 0: print( Δεν έχει πραγματικές ρίζες.') elif D == 0: x1 = -b/(2*a) print( μια μοναδική λύση %f' % x1) else: x1 = (-b + sqrt(d))/(2*a) x2 = (-b - sqrt(d))/(2*a) print( Δύο λύσεις: %.2f, %.2f' %(x1, x2)) printsolution(2, 3, -4)

37 Παράδειγμα Να γραφεί πρόγραμμα το οποίο θα καλεί μια συνάρτηση η οποία θα δέχεται έναν ακέραιο και θα επιστρέφει το άθροισμα των ψηφίων του: # 5-19.py def digitsum(a): sum = 0 while a!= 0: sum += a % 10 #εξάγουμε ένα ψηφίο από τον αριθμό και τον προσθέτουμε στο sum a = a / 10 return sum #διαιρούμε με το 10 για να επαναλάβουμε τη διαδικασία num = int(input('give an integer: ')) print('sum of digits is %d\n' % digitsum(num))

38 Παραδείγματα Να γραφεί πρόγραμμα που θα καλεί συνάρτηση η οποία θα δέχεται 2 τιμές και θα επιστρέφει άθροισμα και γινόμενο # 5-20.py def addply(p, q): p, q = p+q, p*q return p, q x, y = addply(3, 5) print('%d %d' % (x, y)) Για να επιστρέψουμε 2 ή περισσότερες τιμές από μια συνάρτηση θα πρέπει να επιστρέψουμε μια πλειάδα ή άλλη δομή και να θέσουμε τις τιμές σε μεταβλητές

39 Παραδείγματα Να γραφεί πρόγραμμα που να υπολογίζει το ημίτονο ενός τόξου χρησιμοποιώντας το τύπο: x- # 5-21.py import math def fact(n): f = 1; for i in range(1, n+1): f *= i return f def sinus(x, n): sum = 0.0 sign = 1; for i in range(1, n+1): element = sign * pow(x,2*i-1) / fact(2*i-1) #η συνάρτηση fact υπολογίζει το παραγοντικό sign *= -1; sum += element return sum; deg = int(input('give degrees: ')) n = int(input('give count of terms:')) rad = math.pi * deg / 180; #μετατροπή μοίρες σε ακτίνια print('sinus of %d is %f' % (deg, sinus(rad, n)))! +! -!.

40 Παραδείγματα Να φτιαχτεί συνάρτηση η οποία θα μετατρέπει ένα αριθμό από το δεκαδικό στο δεκαεξαδικό: # 5-27.py def dec2hex(dec): digits = ' ABCDEF' i = (dec % 16) rest = dec // 16 if (rest == 0): return digits[i] return dec2hex(rest) + digits[i] if name == ' main ': try: num = int(input('enter a decimal to convert: ')) print('{0} is {1} in hexadecimal.'.format(num, dec2hex(num))) except ValueError: print('no valid input.')

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

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

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

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

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

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

Εισαγωγή στον Προγραμματισμό 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 Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ Η/Υ (ΟΜΑΔΑ ΘΕΜΑΤΩΝ A)

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ Η/Υ (ΟΜΑΔΑ ΘΕΜΑΤΩΝ A) ΑΣΚΗΣΗ 1 Δίνεται η λογική συνάρτηση: F = ((A AND B) OR (B AND C) OR (A AND C)) ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ Η/Υ (ΟΜΑΔΑ ΘΕΜΑΤΩΝ A) α) Σχεδιάστε το λογικό κύκλωμα που υλοποιεί τη συνάρτηση F. β) Σχηματίστε τον πίνακα

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20 Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20 Διάλεξη 10 Δοκιμή του Κώδικα Παπαϊωάννου Αθανάσιος Π.Μ.Σ. «Εφαρμοσμένη Πληροφορική» Χειμερινό Εξάμηνο 20 16-20 17 Ορίσματα στο main module $ python test.py arg1

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

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

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

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

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

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

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

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι ; Συναρτήσεις. Παράδειγμα #1. double convert ( double cm ) { double inch;

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τι είναι ; Συναρτήσεις. Παράδειγμα #1. double convert ( double cm ) { double inch; ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ Τι είναι ; Συναρτήσεις Αυτόνομα τμήματα κώδικα (υποπρογράμματα) που πραγματοποιούν μια καθορισμένη εργασία. Χρήσιμες για περιπτώσεις που ο ίδιος υπολογισμός επαναλαμβάνεται πολλές φορές

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

Σημειώσεις. Ο αριθμός των στοιχείων μίας λίστας μπορεί να βρεθεί με χρήση της συνάρτησης len:

Σημειώσεις. Ο αριθμός των στοιχείων μίας λίστας μπορεί να βρεθεί με χρήση της συνάρτησης len: Προηγούμενο Σημειώσεις Επόμενο Λίστες Σειρά στοιχείων Μία σειρά στοιχείων (αριθμών, συμβολοσειρών κλπ) μπορούν να οργανωθούν σε μία δομή η οποία ονομάζεται λίστα. Η σειρά των στοιχείων ορίζεται από ορθογώνιες

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

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

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

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

Σημειώσεις. Ο αριθμός των στοιχείων μίας λίστας μπορεί να βρεθεί με χρήση της συνάρτησης len:

Σημειώσεις. Ο αριθμός των στοιχείων μίας λίστας μπορεί να βρεθεί με χρήση της συνάρτησης len: Προηγούμενο Σημειώσεις Επόμενο Λίστες Σειρά στοιχείων Μία σειρά στοιχείων (αριθμών, συμβολοσειρών κλπ) μπορούν να οργανωθούν σε μία δομή η οποία ονομάζεται λίστα. Η σειρά των στοιχείων ορίζεται από ορθογώνιες

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

Βασικές Ασκήσεις από τα Εργαστήρια της PYTHON (εβδομάδα 5)

Βασικές Ασκήσεις από τα Εργαστήρια της PYTHON (εβδομάδα 5) Βασικές Ασκήσεις από τα Εργαστήρια της PYTHON (εβδομάδα 5) Η Python επιτρέπει να χρησιμοποιούμε πολλές μεταβλητές οποιουδήποτε τύπου στην αριστερή πλευρά μίας καταχώρισης, αρκεί ο αριθμός των τιμών ή μεταβλητών

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

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια: Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται

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

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

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

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

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

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

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

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

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

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

Συναρτήσεις και διαδικασίες

Συναρτήσεις και διαδικασίες Συναρτήσεις και διαδικασίες Χρήση συναρτήσεων βιβλιοθήκης Εντολή κλήσης της συνάρτησης printf: printf( Hello, world\n ); Μια συνάρτηση είναι ένα σύνολο εντολών που έχουν ομαδοποιηθεί και τους έχει αποδοθεί

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

Σε γενικές γραμμές, είναι καλή πρακτική να γράϕουμε προγράμματα C που αποτελούνται από πολλές και μικρές συναρτήσεις, παρά από λίγες και μεγάλες.

Σε γενικές γραμμές, είναι καλή πρακτική να γράϕουμε προγράμματα C που αποτελούνται από πολλές και μικρές συναρτήσεις, παρά από λίγες και μεγάλες. 58 Δομή ενός προγράμματος C Συναρτήσεις Μία συνάρτηση C είναι ένα αυτόνομο, πακεταρισμένο τμήμα προγράμματος που ϕέρει σε πέρας μία διαδικασία η οποία έχει σαϕείς προδιαγραϕές εισόδου και εξόδου και συγκεκριμένο

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015. Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015. Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας Τι είναι τα υποπρογράμματα Αυτόνομες μονάδες κώδικα Γραμμένα από τον χρήστη Η δομή

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

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή Στόχοι και αντικείμενο ενότητας Η έννοια του Τελεστή #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Εκφράσεις Προτεραιότητα Προσεταιριστικότητα Χρήση παρενθέσεων Μετατροπές Τύπων Υπονοούμενες και ρητές μετατροπές

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

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

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

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

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή ονάδα Δικτύων και Επικοινωνιών ΗΥ Τομέας Πληροφορικής, αθηματικών και Στατιστικής ΓΕΩΠΟΙΚΟ ΠΑΕΠΙΣΤΗΙΟ ΑΘΗΩ Εισαγωγή στην Επιστήμη των ΗΥ άθημα-4 url: http://openeclass.aua.gr (AOA0) Λογισμικό Υπολογιστή

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

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις I Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Συναρτήσεις I Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης ΥΠΟΛΟΓΙΣΤΕΣ ΙI Συναρτήσεις I Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

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

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

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

Συναρτήσεις. ΚΕΡΟΣ ΓΙΑΝΝΗΣ, ΠΕ19 1ο ΕΠΑΛ ΚΙΛΚΙΣ. Κέρος Α. Ιωάννης Καθηγητής Πληροφορικής ΠΕ19 1 ο ΕΠΑΛ Κιλκίς

Συναρτήσεις. ΚΕΡΟΣ ΓΙΑΝΝΗΣ, ΠΕ19 1ο ΕΠΑΛ ΚΙΛΚΙΣ. Κέρος Α. Ιωάννης Καθηγητής Πληροφορικής ΠΕ19 1 ο ΕΠΑΛ Κιλκίς Συναρτήσεις Κέρος Α. Ιωάννης Καθηγητής Πληροφορικής ΠΕ19 1 ο ΕΠΑΛ Κιλκίς Συναρτήσεις - Εισαγωγή Τι είναι μία συνάρτηση; def numbers(): Επικεφαλίδα της συνάρτησης Μία συνάρτηση είναι: print 'One' ένα σύνολο

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

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

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι Σημειώσεις Python Ενότητα 3 Ν. Φερεντίνος. ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 3. Συναρτήσεις

ΠΛΗΡΟΦΟΡΙΚΗ Ι Σημειώσεις Python Ενότητα 3 Ν. Φερεντίνος. ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 3. Συναρτήσεις ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 3 Συναρτήσεις Συνάρτηση ονομάζεται ένα τμήμα κώδικα (ή υποπρόγραμμα) το οποίο κάνει μια συγκεκριμένη διεργασία και μπορεί να καλείται από ένα πρόγραμμα (ή από μια άλλη συνάρτηση).

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

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

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

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

Προγραμματισμός ΙI (Θ)

Προγραμματισμός ΙI (Θ) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2017 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017

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

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

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

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

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13) Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις Επανάληψη για την ενδιάμεση εξέταση (Διάλεξη 13) 13-1 Πρόβλημα 1 Γράψετε τον ορισμό μίας συνάρτησης η οποία υπολογίζει το μέγιστο 2 ακεραίων αριθμών και

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

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Συναρτήσεις (Functions) Οι βασικές λειτουργικές ενότητες ενός προγράμματος C Καλούνται με ορίσματα που αντιστοιχούνται σε

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

song='''εγώ μετράω τα ρέστα μου να βγάλω κι άλλο μήνα

song='''εγώ μετράω τα ρέστα μου να βγάλω κι άλλο μήνα song='''εγώ μετράω τα ρέστα μου να βγάλω κι άλλο μήνα ανοίγω και δε βλέπω ουρανό εσύ έχεις στο πιάτο σου ολόκληρη Αθήνα ανοίγεις και χαζεύεις το κενό ''' print(song) #αλφαβητική λίστα λέξεων list_words

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

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12) Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II (Διάλεξη 12) 12-1 Ανασκόπηση Δομής Προγράμματος με Συναρτήσεις 1 void PrintMessage (); Πρότυπο (Δήλωση) Συνάρτησης (Δηλώνουν τι επιπλέον συναρτήσεις θα χρησιμοποιήσουμε

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

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

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

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

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

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

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017 FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017 Μ4. Συναρτήσεις, Υπορουτίνες, Ενότητες - Ασκήσεις Γεώργιος Παπαλάμπρου Επικ. Καθηγητής ΕΜΠ Εργαστήριο Ναυτικής Μηχανολογίας george.papalambrou@lme.ntua.gr

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

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

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

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

Λίστες. Lista=[ red, green, blue ] Το πλήθος των στοιχείων μια λίστας δίνεται από τη συνάρτηση len(): Len(Lista)

Λίστες. Lista=[ red, green, blue ] Το πλήθος των στοιχείων μια λίστας δίνεται από τη συνάρτηση len(): Len(Lista) Λίστες Η πιο σημαντική ακολουθία της Python, μοιάζουν με τους πίνακες των παραδοσιακών γλωσσών αλλά είναι πολύ ποιο ευέλικτες: μπορεί να περιέχουν στοιχεία διαφορετικού τύπου και μας παρέχουν τη δυνατότητα

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

Προγραµµατιστικές Τεχνικές

Προγραµµατιστικές Τεχνικές Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Προγραµµατιστικές Τεχνικές Βασίλειος Βεσκούκης ρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Ρωµύλος Κορακίτης

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

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

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

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή Στο εργαστήριο αυτό θα μάθουμε για τη χρήση συναρτήσεων με σκοπό την κατασκευή αυτόνομων τμημάτων προγραμμάτων που υλοποιούν μία συγκεκριμένη διαδικασία, τα οποία

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

Μεθόδων Επίλυσης Προβλημάτων

Μεθόδων Επίλυσης Προβλημάτων ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 9 Συναρτήσεις Μέρος II Θέματα ιάλεξης Μη- ομημένος

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

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

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

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Μάθημα 4ο Τμήμα Διοίκησης Επιχειρήσεων α εξάμηνο Β. Φερεντίνος Συναρτήσεις (functions) 56 Τεμαχισμός του προγράμματος σε μικρότερα κομμάτια που είναι πιο κατανοητά, πιο εύκολα

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

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

Σημειωματάαριο Δευτέρας 16 Οκτ. 2017 Σημειωματάαριο Δευτέρας 16 Οκτ. 2017 Λίστες και ανακύκλωση for Είδαμε στην αρχή (ξανά) μερικά βασικά πράγματα για λίστες. Λίστα είναι μια πεπερασμένη ακολουθία από αντικείμενα (αριθμούς, strings, άλλες

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

Συναρτήσεις. Εισαγωγή

Συναρτήσεις. Εισαγωγή Συναρτήσεις Εισαγωγή Η χρήση συναρτήσεων στα προγράμματα της γλώσσας C είναι πολύ σημαντική καθώς μας επιτρέπει τη διάσπαση ενός προβλήματος σε μικρότερα υποπροβλήματα τα οποία μπορούμε να επιλύσουμε πιο

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

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

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

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

Περιεχόμενα. Πρόλογος...11

Περιεχόμενα. Πρόλογος...11 Περιεχόμενα Πρόλογος...11 Κεφάλαιο 1: Εισαγωγή...13 Η ιστορία της JavaScript...13 Τι είναι η JavaScript...15 Διαφορά μεταξύ σεναρίου και προγράμματος...16 Δυνατότητες και περιορισμοί της JavaScript...16

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

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα. ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων. Όταν ένα τμήμα προγράμματος επιτελεί ένα αυτόνομο

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

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

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

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

Εισαγωγή στον Προγραμματισμό με C++ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 6: Συναρτήσεις Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες Χρήσης Το παρόν

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

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος Κεφάλαιο 10 Υποπρογράμματα 1 10.1 Τμηματικός προγραμματισμός Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων.

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

Ενδεικτική περιγραφή μαθήματος

Ενδεικτική περιγραφή μαθήματος ΜΑΘΗΜΑ: ΔΙΔΑΣΚΩΝ: ΤΜΗΜΑ: Προγραμματισμός Η/Υ Συνδουκάς Δημήτριος Διοίκησης Επιχειρήσεων (Γρεβενά) Ενδεικτική περιγραφή μαθήματος 1. Εισαγωγή: Εισαγωγή στον προγραμματισμό, γλώσσες προγραμματισμού, μεταγλωτιστές.

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

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

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

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

Κατανεμημένα Συστήματα

Κατανεμημένα Συστήματα Κατανεμημένα Συστήματα Σημειώσεις εργαστηρίου Lab#7 - Διεργασίες, Nήματα, Πολυνημάτωση στη Python Νεβράντζας Βάιος-Γερμανός Λάρισα, Φεβρουάριος 2013 Lab#7 - Διεργασιές, Νη ματα, Πολυνημα τωση στη Python,

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

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

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

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

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα

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

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό 1 Εισαγωγή Σκεφτείτε έναν αριθμό από το 1 έως το 1000 και απαντήστε στην ερώτηση: Ο αριθμός που σκεφτήκατε είναι μεγαλύτερος

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

Διάλεξη 1. Πράξεις Τελεστές Έλεγχος Ροής

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

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

Υπολογισμός - Εντολές Επανάληψης

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

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

Κεφάλαιο 10 ο Υποπρογράµµατα

Κεφάλαιο 10 ο Υποπρογράµµατα Κεφάλαιο 10 ο Υποπρογράµµατα Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Η αντιµετώπιση των σύνθετων προβληµάτων και η ανάπτυξη των αντίστοιχων προγραµµάτων µπορεί να γίνει µε την ιεραρχική σχεδίαση,

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι συναρτήσεις στη C Οι συναρτήσεις τι είναι Πρόκειται για ανεξάρτητα τμήματα ενός προγράμματος (υποπρογράμματα) που επιτελούν συγκεκριμένες εργασίες. Καλούνται από το κυρίως

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργία Κλάσεων και Αντικειμένων Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων με κοινά χαρακτηριστικά και κοινή συμπεριφορά. Ένα καλούπι/πρότυπο

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

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

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

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

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

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

Προγραμματισμός Η/Υ. Ενότητα 3: Top Down Σχεδιασμός

Προγραμματισμός Η/Υ. Ενότητα 3: Top Down Σχεδιασμός Προγραμματισμός Η/Υ Ενότητα 3: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Κατανόηση της έννοιας της διεργασίας

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

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

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

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

Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( )

Κλήση Συναρτήσεων ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ. Γεώργιος Παπαϊωάννου ( ) ΚΛΗΣΗ ΣΥΝΑΡΤΗΣΕΩΝ Γεώργιος Παπαϊωάννου (2013-16) gepap@aueb.gr Περιγραφή: Μορφές μεταβίβασης ορισμάτων σε συναρτήσεις (και μεθόδους) και οι επιπτώσεις τους Επιστροφή τιμών από κλήση συναρτήσεων Υπερφόρτωση

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

Διάλεξη 15: Αναδρομή (Recursion) Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 15: Αναδρομή (Recursion) Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 15: Αναδρομή (Recursion) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Η έννοια της αναδρομής Μη αναδρομικός / Αναδρομικός Ορισμός Συναρτήσεων Παραδείγματα Ανάδρομης Αφαίρεση της Αναδρομής

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

Προγραμματιστικά Εργαλεία και Τεχνολογίες για Επιστήμη Δεδομένων

Προγραμματιστικά Εργαλεία και Τεχνολογίες για Επιστήμη Δεδομένων Προγραμματιστικά Εργαλεία και Τεχνολογίες για Επιστήμη Δεδομένων Παράδοση 1/1/2019, Νίκος Παπασπύρου. Εργαστηριακή εξέταση, πρόβλημα bigpair Δίνονται δύο ακολουθίες a(1),..., a(n) και b(1),..., b(m), αποτελούμενες

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

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

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

Εισαγωγή στον Προγραμματισμό Python Μάθημα 1: Μεταβλητές, τελεστές, είσοδος/έξοδος προγράμματος, συνθήκη ελέγχου if Νοέμβριος 2014 Χ. Αλεξανδράκη, Γ.

Εισαγωγή στον Προγραμματισμό Python Μάθημα 1: Μεταβλητές, τελεστές, είσοδος/έξοδος προγράμματος, συνθήκη ελέγχου if Νοέμβριος 2014 Χ. Αλεξανδράκη, Γ. Εισαγωγή στον Προγραμματισμό Python Μάθημα 1: Μεταβλητές, τελεστές, είσοδος/έξοδος προγράμματος, συνθήκη ελέγχου if Νοέμβριος 2014 Χ. Αλεξανδράκη, Γ. Δημητρακάκης Σύνοψη Μαθήματος Προηγούμενο μάθημα Αλγόριθμοι

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

Η εντολή if-else. Η απλή μορφή της εντολής if είναι η ακόλουθη: if (συνθήκη) { Η γενική μορφή της εντολής ifelse. εντολή_1; εντολή_2;..

Η εντολή if-else. Η απλή μορφή της εντολής if είναι η ακόλουθη: if (συνθήκη) { Η γενική μορφή της εντολής ifelse. εντολή_1; εντολή_2;.. Επιλογή - Επανάληψη Η εντολή if-else Ο τελεστής παράστασης συνθήκης H εντολή switch Η εντολές for και while Η εντολή do-while Η εντολές break - continue - goto Μαθηματικές συναρτήσεις Λέξεις κλειδιά στη

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

Λίστα. Το διάνυζμα (vector) στο Mathematica είναι μια λίστα που έχει τα στοιχεία. Ο πίνακας ( matrix ) είναι λίστα απο τις λίστες.

Λίστα. Το διάνυζμα (vector) στο Mathematica είναι μια λίστα που έχει τα στοιχεία. Ο πίνακας ( matrix ) είναι λίστα απο τις λίστες. Λίστα Το διάνυζμα (vector) στο Mathematica είναι μια λίστα που έχει τα στοιχεία. Ο πίνακας ( matrix ) είναι λίστα απο τις λίστες. Η λίστα είναι ένα σύνολο αντικειμένων των οποίων τα σύμβολα περιέχονται

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

Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές»

Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» Η εργασία έχει ως στόχο τον σχεδιασμό και την υλοποίηση ενός μεταγλωττιστή για την γλώσσα Ciscal, χρησιμοποιώντας

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

8. Μέθοδοι (Methods)

8. Μέθοδοι (Methods) 8. Μέθοδοι (Methods) Χειμερινό εξάμηνο 2012 Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www.eng.ucy.ac.cy/petros 1 Θέματα Μέθοδοι που παρέχονται από τη τάξη Math του Java API Χρήση στατικών μεθόδων και

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

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, προσοχή στη στοίχιση, διότι γίνεται από

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

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

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ

Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ Λογικός τύπος ( ) Ο τύπος είναι κατάλληλoς για την αναπαράσταση ποσοτήτων που μπορούν να πάρουν δύο μόνο τιμές (π.χ. ναι/όχι, αληθές/ψευδές, ). Τιμές ή Δήλωση Εκχώρηση Ισοδυναμία με ακέραιους

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

Διάλεξη 20: Αναδρομή (Recursion) Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 20: Αναδρομή (Recursion) Διδάσκων: Παναγιώτης Ανδρέου 1 Διάλεξη 20: Αναδρομή (Recursion) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Η έννοια της αναδρομής - Μη-αναδρομικός / Αναδρομικός Ορισμός Συναρτήσεων - Παραδείγματα Ανάδρομης - Αφαίρεση

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

Παίρνοντας Αποφάσεις 1

Παίρνοντας Αποφάσεις 1 Παίρνοντας Αποφάσεις 1 Στόχοι μαθήματος Συγκριτικοί/ Λογικοί Τελεστές Η εντολή IF Η εντολή switch 2 Συγκριτικοί Τελεστές == ίσο!= διάφορο / άνισο > μεγαλύτερο < μικρότερο >= μεγαλύτερο ή ίσο

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

ΘΕΜΑΤΑ ΚΑΙ ΛΥΣΕΙΣ. 1) Έστω η λογική συνάρτηση F = A' + Β'. D + B. C' + C. D' (όπου οι τόνοι δηλώνουν συμπληρώματα).

ΘΕΜΑΤΑ ΚΑΙ ΛΥΣΕΙΣ. 1) Έστω η λογική συνάρτηση F = A' + Β'. D + B. C' + C. D' (όπου οι τόνοι δηλώνουν συμπληρώματα). ΘΕΜΑΤΑ ΚΑΙ ΛΥΣΕΙΣ 1) Έστω η λογική συνάρτηση F = A' + Β'. D + B. C' + C. D' (όπου οι τόνοι δηλώνουν συμπληρώματα). i) Σχεδιάστε το αντίστοιχο κύκλωμα. ii) Δημιουργήστε τον πίνακα αλήθειας της συνάρτησης

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

Νέο υλικό. www.cs.uoi.gr/~develeg. Matlab2.pdf - Παρουσίαση μαθήματος 2. Matlab-reference.pdf Σημειώσεις matlab στα ελληνικά (13 σελίδες).

Νέο υλικό. www.cs.uoi.gr/~develeg. Matlab2.pdf - Παρουσίαση μαθήματος 2. Matlab-reference.pdf Σημειώσεις matlab στα ελληνικά (13 σελίδες). Matlab Μάθημα Νέο υλικό www.cs.uoi.gr/~develeg Matlab.pdf - Παρουσίαση μαθήματος. Matlab-reference.pdf Σημειώσεις matlab στα ελληνικά (3 σελίδες). Επαναληπτικές δομές Όταν εκτελείται μια πράξη σε ένα διάνυσμα,

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

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

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

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

Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 12-1 Ανασκόπηση οµής Προγράµµατος µε Συναρτήσεις #include 1 void PrintMessage (); Πρότυπο ( ήλωση) Συνάρτησης (

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

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

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

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

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΠΑΝΕΛΛΑ ΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ KAI ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ ΠΕΜΠΤΗ 26 ΣΕΠΤΕΜΒΡΙΟΥ 2019 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙ ΩΝ: ΕΠΤΑ (7)

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

ΠΕΡΙΕΧΟΜΕΝΑ Τμηματικός προγραμματισμός Χαρακτηριστικά των υποπρογραμμάτων Πλεονεκτήματα του τμηματικού προγραμματισμού Παράμετροι Διαδικασίες και

ΠΕΡΙΕΧΟΜΕΝΑ Τμηματικός προγραμματισμός Χαρακτηριστικά των υποπρογραμμάτων Πλεονεκτήματα του τμηματικού προγραμματισμού Παράμετροι Διαδικασίες και ΠΕΡΙΕΧΟΜΕΝΑ Τμηματικός προγραμματισμός Χαρακτηριστικά των υποπρογραμμάτων Πλεονεκτήματα του τμηματικού προγραμματισμού Παράμετροι Διαδικασίες και συναρτήσεις Εμβέλεια μεταβλητών - σταθερών Αναδρομή Εισαγωγή

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

Προγραμματισμός Η/Υ. Ενότητα 7: Συναρτήσεις

Προγραμματισμός Η/Υ. Ενότητα 7: Συναρτήσεις Προγραμματισμός Η/Υ Ενότητα 7: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Κατανόηση του ορισμού και της κλήση

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

Μεθοδολογία Προγραμματισμού

Μεθοδολογία Προγραμματισμού Μεθοδολογία Προγραμματισμού Εισαγωγή στo συναρτησιακό προγραμματισμό με Java Νικόλαος Πεταλίδης Τμήμα Μηχανικών Η/Υ ΤΕΙ Κεντρικής Μακεδονίας Εισαγωγή Εαρινό Εξάμηνο Ν Πεταλίδης (ΤΕΙ Κεντρικής Μακεδονίας)

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

Προγραμματισμός Η/Υ. Συναρτήσεις & Υποπρογράμματα. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Προγραμματισμός Η/Υ. Συναρτήσεις & Υποπρογράμματα. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Προγραμματισμός Η/Υ Συναρτήσεις & Υποπρογράμματα ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Τμηματικός Προγραμματισμός Η επίλυση ενός προβλήματος διευκολύνεται

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι συναρτήσεις στη C Οι συναρτήσεις τι είναι Πρόκειται για ανεξάρτητα τμήματα ενός προγράμματος (υποπρογράμματα) που επιτελούν συγκεκριμένες εργασίες. Καλούνται από το κυρίως

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