Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2017 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 1 / 35
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (Θ) 1 Εισαγωγή 2 Βιβλιοθήκες (Χειρισμός χαρακτήρων) (Μαθηματικές συναρτήσεις) (Διάφορες συναρτήσεις) (Χειρισμός χρόνου) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 2 / 35
Δομή Διαφανειών 1 Εισαγωγή 2 Βιβλιοθήκες (Χειρισμός χαρακτήρων) (Μαθηματικές συναρτήσεις) (Διάφορες συναρτήσεις) (Χειρισμός χρόνου) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 3 / 35
Εισαγωγή Αντικείμενο της παρούσης ενότητας είναι οι συναρτήσεις βιβλιοθήκης. Θα αναφερθούμε στις βιβλιοθήκες για χειρισμό αλφαριθμητικών πως τα δημιουργούμε πώς τα διαβάζουμε πώς τα ενημερώνουμε κ.α. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 4 / 35
Δομή Διαφανειών 1 Εισαγωγή 2 Βιβλιοθήκες (Χειρισμός χαρακτήρων) (Μαθηματικές συναρτήσεις) (Διάφορες συναρτήσεις) (Χειρισμός χρόνου) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 5 / 35
Δομή Διαφανειών 1 Εισαγωγή 2 Βιβλιοθήκες (Χειρισμός χαρακτήρων) (Μαθηματικές συναρτήσεις) (Διάφορες συναρτήσεις) (Χειρισμός χρόνου) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 6 / 35
(Χειρισμός χαρακτήρων) Μερικές από τις συναρτήσεις είναι Επιστρέφει μη μηδενική τιμή όταν δεχθεί κάποιο αλφαριθμητικό χαρακτήρα (a-z, A-Z, 0-9), διαφορετικά επιστρέφει μηδέν. Επιστρέφει μη μηδενική τιμή όταν δεχθεί κάποιο χαρακτήρα (a-z, A-Z), διαφορετικά επιστρέφει μηδέν. Επιστρέφει μη μηδενική τιμή όταν δεχθεί κάποιο αριθμητικό χαρακτήρα (0-9), διαφορετικά επιστρέφει μηδέν. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 7 / 35
(Χειρισμός χαρακτήρων) Επιστρέφει μη μηδενική τιμή όταν δεχθεί χαρακτήρα διαστήματος, διαφορετικά επιστρέφει μηδέν. Επιστρέφει μη μηδενική τιμή όταν δεχθεί κάποιο πεζό χαρακτήρα (a-z), διαφορετικά επιστρέφει μηδέν. Επιστρέφει μη μηδενική τιμή όταν δεχθεί κάποιο κεφαλαίο χαρακτήρα (A-Z), διαφορετικά επιστρέφει μηδέν. Εάν δεχθεί κεφαλαίο χαρακτήρα επιστρέφει τον αντίστοιχο πεζό χαρακτήρα, διαφορετικά επιστρέφει την είσοδο. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 8 / 35
(Χειρισμός χαρακτήρων) Εάν δεχθεί πεζό χαρακτήρα επιστρέφει τον αντίστοιχο κεφαλαίο χαρακτήρα, διαφορετικά επιστρέφει την είσοδο. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 9 / 35
(Χειρισμός χαρακτήρων) - Παραδείγματα Έστω το αλφαριθμητικό το οποίο θέλουμε να μετατραπεί ως εξής. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 10 / 35
(Χειρισμός χαρακτήρων) - Παραδείγματα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 11 / 35
(Χειρισμός χαρακτήρων) - Παραδείγματα θα εμφανιστεί στην κονσόλα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 12 / 35
Δομή Διαφανειών 1 Εισαγωγή 2 Βιβλιοθήκες (Χειρισμός χαρακτήρων) (Μαθηματικές συναρτήσεις) (Διάφορες συναρτήσεις) (Χειρισμός χρόνου) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 13 / 35
(Μαθηματικές συναρτήσεις) Μερικές από τις συναρτήσεις είναι Συνάρτηση C Μαθηματική συνάρτηση a a a b a e a ln(a) log(a) sin(a) cos(a) tan(a) cot(a) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 14 / 35
(Μαθηματικές συναρτήσεις) - Παραδείγματα Να υπολογιστεί η μαθηματική παράσταση για x = 1 και y = 2. A = ( sin 2 (x) + cos 2 (x) ) + ln(e 2y ) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 15 / 35
(Μαθηματικές συναρτήσεις) - Παραδείγματα θα εμφανιστεί στην κονσόλα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 16 / 35
Δομή Διαφανειών 1 Εισαγωγή 2 Βιβλιοθήκες (Χειρισμός χαρακτήρων) (Μαθηματικές συναρτήσεις) (Διάφορες συναρτήσεις) (Χειρισμός χρόνου) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 17 / 35
(Διάφορες συναρτήσεις) Μερικές από τις συναρτήσεις είναι Επιστρέφει ένα τυχαίο αριθμό από το έως το. Αρχικοποιεί την γεννήτρια τυχαίων αριθμών. Η τιμή που χρησιμοποιείται συνήθως για την αρχικοποίηση είναι η. Δημιουργία διαστημάτων Για να δημιουργήσουμε τυχαίους ακέραιους αριθμούς σε ένα διάστημα [a, b] με b RAND_MAX = max μπορούμε να χρησιμοποιήσουμε τον τύπο [a, b] = mod ([0, max], (b a + 1)) + a Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 18 / 35
(Διάφορες συναρτήσεις) Για να δημιουργήσουμε τυχαίους πραγματικούς αριθμούς σε ένα διάστημα [a, b] με b RAND_MAX μπορούμε να χρησιμοποιήσουμε τον τύπο [a, b] = [0, max] max (b a) + a Γενικά, με τον πολλαπλασιασμό μεγαλώνουμε το εύρος του διαστήματος και με την πρόσθεση μετατοπίζουμε το διάστημα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 19 / 35
(Διάφορες συναρτήσεις) - Παραδείγματα Να δημιουργηθούν 10 τυχαίοι ακέραιοι αριθμοί στο διάστημα [10, 20] και να υπολογιστεί μέσω συνάρτησης ο μέσος όρος και να εμφανιστεί. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 20 / 35
(Διάφορες συναρτήσεις) - Παραδείγματα θα εμφανιστεί στην κονσόλα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 21 / 35
(Διάφορες συναρτήσεις) - Παραδείγματα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 22 / 35
(Διάφορες συναρτήσεις) - Παραδείγματα Να δημιουργηθούν 10 τυχαίοι πραγματικοί αριθμοί στο διάστημα [ 10, 10] και να υπολογιστούν μέσω συνάρτησης το πλήθος των θετικών, των αρνητικών και των μηδενικών και να εμφανιστούν. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 23 / 35
(Διάφορες συναρτήσεις) - Παραδείγματα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 24 / 35
(Διάφορες συναρτήσεις) - Παραδείγματα θα εμφανιστεί στην κονσόλα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 25 / 35
(Διάφορες συναρτήσεις) - Παραδείγματα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 26 / 35
Δομή Διαφανειών 1 Εισαγωγή 2 Βιβλιοθήκες (Χειρισμός χαρακτήρων) (Μαθηματικές συναρτήσεις) (Διάφορες συναρτήσεις) (Χειρισμός χρόνου) Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 27 / 35
(Χειρισμός χρόνου) Μερικές από τις συναρτήσεις είναι Επιστρέφει τον χρόνο που έχει περάσει από την έναρξη του προγράμματος σε κύκλους του επεξεργαστή. Για να μετατραπεί σε δευτερόλεπτα διαιρούμε με την σταθερά. Επιστρέφει τον αριθμό δευτερολέπτων που έχουν περάσει από τον δηλωθέντα χρόνο. Επιστρέφει την διαφορά των χρόνων και σε δευτερόλεπτα. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 28 / 35
(Χειρισμός χρόνου) - Παραδείγματα Να μετρήσετε και να εμφανίσετε τον χρόνο εκτέλεσης της αναδρομικής συνάρτησης Fibonacci για τον υπολογισμό της τιμής F 45. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 29 / 35
(Χειρισμός χρόνου) - Παραδείγματα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 30 / 35
(Χειρισμός χρόνου) - Παραδείγματα θα εμφανιστεί στην κονσόλα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 31 / 35
(Χειρισμός χρόνου) - Παραδείγματα Να μετρήσετε και να εμφανίσετε τον χρόνο εκτέλεσης της αναδρομικής και κανονικής συνάρτησης Fibonacci για τον υπολογισμό της τιμής F 45. Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 32 / 35
(Χειρισμός χρόνου) - Παραδείγματα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 33 / 35
(Χειρισμός χρόνου) - Παραδείγματα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 34 / 35
(Χειρισμός χρόνου) - Παραδείγματα Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017 35 / 35