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

Σχετικά έγγραφα
Θέματα Προγραμματισμού Η/Υ

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

Διοικητική Λογιστική

Διδακτική Πληροφορικής

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

Ασφάλεια Πληροφοριακών Συστημάτων

Προγραμματισμός Η/Υ. 6 η ενότητα: Συναρτήσεις. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

Βάσεις Περιβαλλοντικών Δεδομένων

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

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

Διοικητική Λογιστική

ΣΥΜΠΕΡΙΦΟΡΑ ΚΑΤΑΝΑΛΩΤΗ

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

Διδακτική Πληροφορικής

Τεχνικό Σχέδιο - CAD. Τόξο Κύκλου. Τόξο Κύκλου - Έλλειψη. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Διδακτική Πληροφορικής

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

Βάσεις Περιβαλλοντικών Δεδομένων

Διδακτική Πληροφορικής

Τεχνικό Σχέδιο - CAD

Διδακτική Πληροφορικής

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Διδακτική Πληροφορικής

Τεχνικό Σχέδιο - CAD

Τεχνικό Σχέδιο - CAD

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

ΣΥΜΠΕΡΙΦΟΡΑ ΚΑΤΑΝΑΛΩΤΗ

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

ΣΥΜΠΕΡΙΦΟΡΑ ΚΑΤΑΝΑΛΩΤΗ

ΣΥΜΠΕΡΙΦΟΡΑ ΚΑΤΑΝΑΛΩΤΗ

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

Τεχνικό Σχέδιο - CAD

Δομή διαδικτυακών Πολυμέσων

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

Δομημένος Προγραμματισμός

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

Εννοιες και Παράγοντες της Ψηφιακής Επεξεργασίας Εικόνας

Διοικητική Λογιστική

Δομημένος Προγραμματισμός

Διδακτική Πληροφορικής

Δομημένος Προγραμματισμός

Διαχείριση Πολιτισμικών Δεδομένων

Βάσεις Περιβαλλοντικών Δεδομένων

Βάσεις Περιβαλλοντικών Δεδομένων

Διοικητική Λογιστική

Διδακτική Πληροφορικής

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

ΔΙΟΙΚΗΣΗ ΔΙΕΘΝΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ

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

Πληροφορική ΙΙ Ενότητα 1

Διοικητική Λογιστική

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

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

Ψηφιοποίηση και Ψηφιακή Επεξεργασία Εικόνας

Διοικητική Λογιστική

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

Διδακτική Πληροφορικής

Τεχνικό Σχέδιο - CAD

Δομημένος Προγραμματισμός

ΣΥΜΠΕΡΙΦΟΡΑ ΚΑΤΑΝΑΛΩΤΗ

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

Τεχνολογία Πολιτισμικού Λογισμικού

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

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

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

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

Τεχνολογία Πολιτισμικού Λογισμικού

Δομημένος Προγραμματισμός

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Δομημένος Προγραμματισμός

Βάσεις Περιβαλλοντικών Δεδομένων

Οργάνωση και Λειτουργία Ταξιδιωτικής Βιομηχανίας Ι

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

Διοικητική Λογιστική

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

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

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Τεχνολογία Πολιτισμικού Λογισμικού

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

Δομημένος Προγραμματισμός

Τεχνικό Σχέδιο - CAD

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 4: Συναρτήσεις

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

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

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

Ασφάλεια Πληροφοριακών Συστημάτων

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

Προγραμματισμός Η/Υ. 7 η ενότητα: Αρχεία. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

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

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

Εισαγωγή στους Αλγορίθμους

Διδακτική Πληροφορικής

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Ασφάλεια Πληροφοριακών Συστημάτων

Προγραμματισμός H/Y Ενότητα 5: Συναρτήσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

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

Βάσεις Περιβαλλοντικών Δεδομένων

Transcript:

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Πληροφορική ΙΙ Θεματική Ενότητα 8 Συναρτήσεις Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Θεματική Ενότητα 8 Συναρτήσεις Τμήμα Διοίκησης Επιχειρήσεων β εξάμηνο Β. Φερεντίνος, Α. Κακαρούντας

Συναρτήσεις Επαναχρησιμοποιήσιμα μέρη προγραμμάτων Δίνοντας ένα όνομα σε ένα σύνολο εντολών (με σκοπό της εκτέλεση μιας συγκεκριμένης λειτουργίας) μπορούμε να το τρέχουμε χρησιμοποιώντας αυτό το όνομα, οπουδήποτε στο πρόγραμμα και όσες φορές θέλουμε. Ενσωματωμένες συναρτήσεις της Python σε βιβλιοθήκες (modules αρθρώματα) Συναρτήσεις ορισμένες από τον προγραμματιστή Οι συναρτήσεις δέχονται/επιστρέφουν, ή όχι, δεδομένα.

Πλεονεκτήματα - Ονόματα Απλούστερος Δομημένος Κώδικας Επαναχρησιμοποίηση Κώδικα Ταχύτερη και καλύτερη ανάπτυξη και έλεγχος προγράμματος Διευκόλυνση της Ομαδικής Εργασίας Ονόματα Συναρτήσεων Όχι χρήση των λέξεων-κλειδιών της Python Χωρίς κενά Πρώτο γράμμα: a-z, A-Z, _ Διάκριση μεταξύ κεφαλαίων και πεζών

Συναρτήσεις της Python, Βιβλιοθήκες Οι γνωστές εντολές (input, print, int, range κλπ.) αποτελούν συναρτήσεις της standard library της Python. Για χρήση άλλης βιβλιοθήκης συναρτήσεων (γνωστά και ως modules - αρθρώματα) απαιτείται η εντολή import. Π.χ. import math που περιέχει όλες τις διαθέσιμες μαθηματικές συναρτήσεις (π.χ. math.sqrt, math.log10, κλπ). Καλούνται με: όνομα_βιβλιοθήκης.όνομα_συνάρτησης Π.χ. import random random.randint(1,100) #επιστρέφει τυχαία ακέραια τιμή μεταξύ 1 και 100 random.randrange(0, 10, 2) #επιστρέφει τυχαία ακέραια τιμή μεταξύ 0 και 9 με βήμα 2 (ορίσματα όπως και της range) random.uniform(1.0, 10.0) #επιστρέφει τυχαία πραγματική τιμή μεταξύ 1 και 10

Κάποιες συναρτήσεις του module math acos(x) Επιστρέφει το τόξο συνημιτόνου του x, σε ακτίνια. asin(x) Επιστρέφει το τόξο ημιτόνου του x, σε ακτίνια. atan(x) Επιστρέφει το τόξο εφαπτομένης του x, σε ακτίνια. ceil(x) Επιστρέφει το μικρότερο ακέραιο που είναι μεγαλύτερος ή ίσος του x. cos(x) Επιστρέφει το συνημίτονο του x, σε ακτίνια. degrees(x) Υποθέτοντας ότι το x είναι γωνία σε ακτίνια, επιστρέφει τη γωνία σε μοίρες. exp(x) Επιστρέφει το e x floor(x) Επιστρέφει το μεγαλύτερο ακέραιο που είναι μικρότερος ή ίσος του x. hypot(x, y) Επιστρέφει το μήκος της υποτείνουσας από το σημείο (0, 0) στο σημείο (x,y). log(x) Επιστρέφει το φυσικό λογάριθμο του x. log10(x) Επιστρέφει το δεκαδικό λογάριθμο του x. radians(x) Υποθέτοντας ότι το x είναι γωνία σε μοίρες, επιστρέφει τη γωνία σε ακτίνια. sin(x) Επιστρέφει το ημίτονο του x, σε ακτίνια. sqrt(x) Επιστρέφει την τετραγωνική ρίζα του x. tan(x) Επιστρέφει την εφαπτομένη του x, σε ακτίνια. Σταθερές: math.pi και math.e

Ορισμός συνάρτησης από τον προγραμματιστή Ορισμός def όνομα_συνάρτησης(): εντολή εντολή Κλήση όνομα_συνάρτησης() # επικεφαλίδα της συνάρτησης # (function header). Π.χ. def kalimera(): print("καλημέρα") # σύνολο εντολών που ανήκουν στη συνάρτηση # Τέλος της συνάρτησης print("είναι πρωί, άρα θα πω:") kalimera()

Παράμετροι (ορίσματα) Μια συνάρτηση μπορεί να δεχθεί παραμέτρους, οι οποίες είναι τιμές που δίνονται στη συνάρτηση, έτσι ώστε αυτή να μπορεί να κάνει κάτι αξιοποιώντας αυτές τις τιμές. Καθορίζονται μέσα στη παρένθεση του ορισμού και διαχωρίζονται με κόμμα. Όταν καλούμε τη συνάρτηση δίνουμε τιμές στις παραμέτρους με τον ίδιο τρόπο. Μοιάζουν με τις μεταβλητές, διαφέροντας ως προς το ότι οι τιμές αυτών των μεταβλητών ορίζονται όταν καλούμε τη συνάρτηση και τους έχουν ήδη εκχωρηθεί τιμές όταν τρέχει η συνάρτηση. Οι ονομασίες που δίνονται στον ορισμό της συνάρτησης ονομάζονται παράμετροι ενώ οι τιμές που δίνονται όταν καλείται η συνάρτηση ονομάζονται ορίσματα. Π.χ. def printmax(a, b): if a > b: printmax(3, 4) # δίνουμε απ' ευθείας τιμές print(a, 'είναι το μέγιστο') elif a == b: x = 5 print(a, 'είναι ίσο με το', b) y = 7 else: printmax(x, y) # δίνουμε μεταβλητές σαν ορίσματα print(b, 'είναι το μέγιστο') 4 είναι το μέγιστο 7 είναι το μέγιστο

Προεπιλεγμένες τιμές ορίσματος Μπορούμε να κάνουμε μερικές παραμέτρους μια συνάρτησης προαιρετικές και να χρησιμοποιήσουμε προεπιλεγμένες τιμές εάν ο χρήστης δε θέλει να δώσει τιμές σε αυτές τις παραμέτρους Μπορούν να δοθούν μόνο στις παραμέτρους οι οποίες βρίσκονται στο τέλος της λίστας παραμέτρων def say(message, times = 2): print(message * times) αλφαριθμητικών say('hello') say('world', 5) # Τελεστής επανάληψης HelloHello WorldWorldWorldWorldWorld

Ορίσματα με λέξεις-κλειδιά (Keyword Arguments) Σε συναρτήσεις με πολλές παραμέτρους μπορούμε να δώσετε τιμές μόνο σε μερικές από αυτές, χρησιμοποιώντας την ονομασία (keyword) αντί της θέσης τους (που έχουμε χρησιμοποιήσει μέχρι τώρα). Η χρήση της συνάρτησης γίνεται ευκολότερη επειδή δεν χρειάζεται να ανησυχούμε για τη διάταξη των ορισμάτων. Μπορούμε να δώσουμε τιμές μόνο σε εκείνες τις παραμέτρους που θέλουμε, προνοώντας ότι οι άλλες παράμετροι έχουν τις προεπιλεγμένες τιμές ορίσματος. def func(a, b=5, c=10): print('a is', a, 'and b is', b, 'and c is', c) func(3, 7) func(25, c=24) func(c=50, a=100) a is 3 and b is 7 and c is 10 a is 25 and b is 5 and c is 24 a is 100 and b is 5 and c is 50

Επιστροφή τιμής Συναρτήσεις που δεν επιστρέφουν τιμή ονομάζονται void Για επιστροφή τιμής από μία συνάρτηση χρησιμοποιείται η εντολή return. Δυνατότητα επιστροφής πολλών τιμών. def όνομα_συνάρτησης(): εντολή εντολή κτλ. return έκφραση/εις #πολλαπλές επιστροφές διαχωρίζονται με κόμματα Κλήση για μια επιστρεφόμενη τιμή: μεταβλητή = όνομα_συνάρτησης(ορίσματα) Κλήση για πολλαπλές (Ν) επιστρεφόμενες τιμές: μεταβλητή1, μεταβλητή2,, μεταβλητήν = όνομα_συνάρτησης(ορίσματα)

Παράδειγμα επιστροφής πολλαπλών τιμών def get_name(): # Είσοδος ονόματος και επώνυμου του χρήστη. first = input('δώσε το μικρό σου όνομα: ') last = input('δώσε το επώνυμό σου: ') # Επιστροφή και των δύο ονομάτων. return first, last first_name, last_name = get_name()

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Θεματική Ενότητα 8 Συναρτήσεις Τμήμα Διοίκησης Επιχειρήσεων β εξάμηνο Β. Φερεντίνος, Α. Κακαρούντας

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εμπορική Χρήση Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό. Οι όροι χρήσης των έργων τρίτων επεξηγούνται στη διαφάνεια «Επεξήγηση όρων χρήσης έργων τρίτων». Τα έργα για τα οποία έχει ζητηθεί άδεια αναφέρονται στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/από-nc-sa/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος (π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί.

Επεξήγηση όρων χρήσης έργων τρίτων διαθέσιμο με άδεια CC-BY διαθέσιμο με άδεια CC-BY-SA διαθέσιμο με άδεια CC-BY-ND διαθέσιμο με άδεια CC-BY-NC διαθέσιμο με άδεια CC-BY-NC-SA διαθέσιμο με άδεια CC-BY-NC-ND διαθέσιμο με άδεια CC0 Public Domain διαθέσιμο ως κοινό κτήμα χωρίς σήμανση Δεν επιτρέπεται η επαναχρησιμοποίηση του έργου, παρά μόνο εάν ζητηθεί εκ νέου άδεια από το δημιουργό. Επιτρέπεται η επαναχρησιμοποίηση του έργου και η δημιουργία παραγώγων αυτού με απλή αναφορά του δημιουργού. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού, και διάθεση του έργου ή του παράγωγου αυτού με την ίδια άδεια. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η δημιουργία παραγώγων του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η εμπορική χρήση του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού και διάθεση του έργου ή του παράγωγου αυτού με την ίδια άδεια. Δεν επιτρέπεται η εμπορική χρήση του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η εμπορική χρήση του έργου και η δημιουργία παραγώγων του. Επιτρέπεται η επαναχρησιμοποίηση του έργου, η δημιουργία παραγώγων αυτού και η εμπορική του χρήση, χωρίς αναφορά του δημιουργού. Επιτρέπεται η επαναχρησιμοποίηση του έργου, η δημιουργία παραγώγων αυτού και η εμπορική του χρήση, χωρίς αναφορά του δημιουργού. Συνήθως δεν επιτρέπεται η επαναχρησιμοποίηση του έργου.

Διατήρηση Σημειωμάτων Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού θα πρέπει να συμπεριλαμβάνει: το Σημείωμα Αναφοράς το Σημείωμα Αδειοδότησης τη δήλωση Διατήρησης Σημειωμάτων το Σημείωμα Χρήσης Έργων Τρίτων (εφόσον υπάρχει) μαζί με τους συνοδευόμενους υπερσυνδέσμους.

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.