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

Σχετικά έγγραφα
Πληροφορική ΙΙ Θεματική Ενότητα 8

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

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ. Παράδειγμα #1. Πράξεις μεταξύ ακεραίων αριθμών

Συναρτήσεις στη Visual Basic 6.0

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

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών

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

Εισαγωγή στην Tcl. Τί είναι η Tcl;

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

Εισαγωγή στη Matlab Βασικές Συναρτήσεις

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

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

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

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

Ρητή μετατροπή αριθμητικής τιμής σε άλλο τύπο. Τι θα τυπωθεί στον παρακάτω κώδικα;

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

Εργαστήριο Μαθηματικής Ανάλυσης Ι. Εισαγωγή στη Matlab Βασικές Συναρτήσεις-Γραφικές παραστάσεις. Πανεπιστήμιο Θεσσαλίας. Σχολή Θετικών Επιστημών

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

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

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

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

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

Εισαγωγή στην Αριθμητική Ανάλυση

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

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

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

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

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

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

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

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

Βασικές έννοιες προγραμματισμού

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

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

Γλώσσα Προγραμματισμού C

Pascal, απλοί τύποι, τελεστές και εκφράσεις

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

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

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

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

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

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

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

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

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

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

Γενικός τρόπος σύνταξης: Όνομα_συνάρτησης(όρισμα1,όρισμα2,,όρισμαΝ) Η ονομασία τους είναι δεσμευμένη. Παραδείγματος χάριν: sin(x) cos(x) tan(x) exp(x)

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ. Δρ. Π. Νικολαΐδου

Τεχνικός Εφαρμογών Πληροφορικής

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

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

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

Εργαστήριο 9 Συναρτήσεις στη PASCAL. Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός

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

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

επιµέλεια Θοδωρής Πιερράτος

Οντοκεντρικός Προγραμματισμός

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

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

Εισαγωγή στο προγραμματισμό Η/Υ C++ (Orwell Dev-C++)

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

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός. Περισσότερα για τις Κλάσεις, τα Αντικείμενα και τις Μεθόδους

Εισαγωγή στον Προγραµµατισµό. Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #2

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

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Προγραμματισμός με FORTRAN Συνοπτικός Οδηγός Α. Σπυρόπουλος Α. Μπουντουβής

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

Προγραμματισμός Ι (ΗΥ120)

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2)

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

Εισαγωγή στους Υπολογιστές

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

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

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

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

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

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

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

ΜΑΗΣ ΕΞΕΤΑΣΤΙΚΟ ΔΟΚΙΜΙΟ

Προγραμματισμός και Εφαρμογές Υπολογιστών

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

Εργαστήρια Αριθμητικής Ανάλυσης Ι. 1 ο Εργαστήριο. Εισαγωγή στο Matlab

Συμβολικές Γλώσσες Προγραμματισμού με το MATHEMATICA.

Συναρτήσεις. Κατασκευαστικά Τεµάχια για τη ηµιουργία Αρθρωτών Προγραµµάτων

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

ΚΕΦΑΛΑΙΟ 3 ο ΣΥΝΑΡΤΗΣΕΙΣ, ΤΡΙΓΩΝΟΜΕΤΡΙΑ( FUNCTIONS,TRIGONOMETRY)


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

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

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

Ορισμός μεταβλητών δεικτών και αρχικοποίηση


scanf() scanf() stdin scanf() printf() int float double %lf float

Transcript:

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

ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ Θεματική Ενότητα 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) random.randrange(0, 10, 2) random.uniform(1.0, 10.0) #επιστρέφει τυχαία ακέραια τιμή μεταξύ 1 και 100 #επιστρέφει τυχαία ακέραια τιμή μεταξύ 0 και 9 με βήμα 2 (ορίσματα όπως και της range) #επιστρέφει τυχαία πραγματική τιμή μεταξύ 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 Συναρτήσεις Πληροφορική και Υπολογιστική Βιοϊατρική Α. Κακαρούντας, Γ. Σπαθούλας, Π. Κοντού