Π Α Ρ Α Ρ Τ Η Μ Α. Για μια Εισαγωγή στο MATLAB

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

Download "Π Α Ρ Α Ρ Τ Η Μ Α. Για μια Εισαγωγή στο MATLAB"

Transcript

1 195 Π Α Ρ Α Ρ Τ Η Μ Α Για μια Εισαγωγή στο MATLAB

2 196 Παράρτημα 1. Υπολογίζοντας στο Αλληλεπιδραστικό Περιβάλλον του MATLAB Τρέχοντας το MATLAB Το MATLAB ως υπολογιστής παραστάσεων Οι μεταβλητές του MATLAB Ενσωματωμένες Μεταβλητές και Συναρτήσεις Συναρτήσεις και Εντολές On-line Βοήθεια Πίνακες και Διανύσματα Δημιουργία Πινάκων Συμβολισμός Δεικτών για τα Στοιχεία Πινάκων Ο συμβολισμός άνω - κάτω τελεία (:) Διαγραφή Στοιχείων από Διανύσματα και Πίνακες Πράξεις με Πίνακες Μετασχηματισμός της Μορφής Πινάκων Πρόσθετοι Τύποι Μεταβλητών Μιγαδικοί Αριθμοί Αλφαριθμητικά ή Συμβολοσειρές (Strings) Πολυώνυμα Διαχείριση του Αλληλεπιδραστικού Περιβάλλοντος Ο Χώρος Εργασίας του MATLAB Δουλεύοντας με Δεδομένα από Εξωτερικά Αρχεία Σχεδίαση Διαγραμμάτων στο MATLAB Γραφικές Παραστάσεις Γραμμών Εμφάνιση Σχολίων σε Διαγράμματα Εμφάνιση Πολλών Διαγραμμάτων σε ένα Παράθυρο Γραφικές Παραστάσεις Επιφανειών Περιγράμματα (Contour Plots) Περίληψη Προγραμματίζοντας στο MATLAB Script m-files Δημιουργία m-files Παρενέργειες ενός Script Προτάσεις Σχολίων Συναρτήσεις m-files Σύνταξη Συναρτήσεων Παράμετροι Εισόδου και Εξόδου Πρωταρχικές και Δευτερεύουσες Συναρτήσεις Είσοδοι και Έξοδοι Εισαγωγή Δεδομένων κατά την εκτέλεση του Προγράμματος Κείμενο Έξοδος Έλεγχος Ροής Σχεσιακοί Τελεστές

3 Παράρτημα Τελεστής Προτεραιότητας if else Επιλογή case με την Δομή switch Βρόχοι for Βρόχοι while Η Εντολή break Η Εντολή return Διανυσματικοποίηση Χρήση Πράξεων Διανυσμάτων αντί για Βρόχους Δέσμευση Μνήμης για Διανύσματα και Πίνακες Διανυσματικοποιημένοι Δείκτες και Λογικές Συναρτήσεις Ειδικές Περιπτώσεις Μεταβλητός Αριθμός των παραμέτρων Εισόδου και Εξόδου Καθολικές μεταβλητές Η Συνάρτηση feval Αντικείμενα inline Συναρτήσεων Περίληψη

4 198 Παράρτημα 1. Υπολογίζοντας στο Αλληλεπιδραστικό Περιβάλλον του MATLAB Θα προσπαθήσουμε να περιγράψουμε αρχικά τα βασικά στοιχεία του MATLAB: εισαγωγή εντολών ορισμός και χρήση μεταβλητών δημιουργία δισδιάστατων και τρισδιάστατων γραφικών Οι λειτουργίες αυτές εκτελούνται αλληλεπιδραστικά πληκτρολογώντας μια εντολή τη φορά. Η χρήση του MATLAB με αλληλεπίδραση είναι πολύ αποδοτική, επειδή πολλές σύνθετες αριθμητικές πράξεις μπορούν να εκτελεστούν με λίγες συνοπτικές - περιεκτικές εντολές. Όλες οι αλληλεπιδραστικές εντολές μπορούν να χρησιμοποιηθούν και σε προγράμματα. Για τον λόγο αυτό, ότι περιγράφεται στο παρόν κεφάλαιο είναι απαραίτητο για κάθε χρήση του MATLAB. 1.1 Τρέχοντας το MATLAB Οι ιδιαιτερότητες της εγκατάστασης και εκκίνησης του MATLAB εξαρτώνται από τον τύπο υπολογιστή που χρησιμοποιείται. Πάντως από τη στιγμή που το MATLAB τρέξει, κατά την εκτέλεση χρησιμοποιείται ένα συνηθισμένο περιβάλλον διασύνδεσης με μπάρες επιλογών και παράθυρα μέσω των οποίων είτε εισάγονται δεδομένα, είτε εμφανίζονται τα αποτελέσματα υπολογισμών. Η χρήση των μενού, βασικά, γίνεται για τη διαχείριση των αρχείων, την επεξεργασία του παραθύρου εντολών και τον έλεγχο των αποτελεσμάτων. Το σύστημα αυτό των μενού είναι σχετικά μικρό σε σχέση με τα αντίστοιχα άλλων προγραμμάτων. Εν δυνάμει, όλοι οι αριθμητικοί υπολογισμοί στο MATLAB εκτελούνται πληκτρολογώντας εντολές και όχι μέσω της διαχείρισης των μενού. Ο καλύτερος τρόπος για να μάθει κανείς το MATLAB είναι να πειραματιστεί εισάγοντας εντολές στο παράθυρο εντολών. Θα ήταν καλή ιδέα να τρέξετε το MATLAB και καθώς διαβάζετε να εισάγετε τις εντολές που παρατίθενται στο κείμενο. Όταν ξεκινάει το MATLAB, ανοίγει ένα παράθυρο που ονομάζεται παράθυρο εντολών (command window) και εμφανίζεται η ένδειξη εισαγωγής εντολής (command prompt) >> Αν έχετε την εκπαιδευτική έκδοση του προγράμματος η ένδειξη εισαγωγής εντολής είναι EDU>

5 Παράρτημα 199 Η ένδειξη εισαγωγής εντολής σημαίνει ότι το MATLAB είναι έτοιμο για εισαγωγή δεδομένων. Η βασική διαδικασία είναι να πληκτρολογείτε εντολές και να πατάτε στο τέλος κάθε μιας το πλήκτρο επιστροφής ( ή <enter>). Ανάλογα με το είδος της εντολής το MATLAB είτε θα αποκριθεί με ένα μήνυμα κειμένου, είτε θα ανοίξει ένα νέο παράθυρο, όταν τα αποτελέσματα είναι γραφικά. Όταν εκτελεστεί η εντολή, θα εμφανιστεί ένα νέο σύμβολο ένδειξης εισαγωγής εντολής. Αυτός ο τρόπος χρήσης του MATLAB είναι αλληλεπιδραστικός (δηλ. με την εισαγωγή μιας εντολής, επιστρέφεται η απόκριση - αποτέλεσμα). Σε μερικές περιπτώσεις, η απόκριση θα είναι απλώς η εμφάνιση μιας ένδειξης εισαγωγής εντολών, δηλώνοντας ότι το MATLAB είναι έτοιμο να δεχτεί την επόμενη εντολή. Τυπογραφικές Συμβάσεις Σε όλο αυτό το κείμενο, οι εντολές θα παρουσιάζονται με γραμματοσειρά Courier New όπως στην >> help hilbert Όταν το σύμβολο ένδειξης εισαγωγής εντολής προηγείται της εντολής, τότε η σύνταξη είναι σωστή και μπορεί να εισαχθεί απευθείας και ως έχει στο παράθυρο εντολών. Όταν σκοπός του κειμένου είναι να περιγράψει τις παραμέτρους εισόδου και εξόδου μιας συνάρτησης, δεν θα εμφανίζεται το σύμβολο ένδειξης εισαγωγής εντολής και θα χρησιμοποιούνται αντιπροσωπευτικά ονόματα για τις παραμέτρους εισόδου και εξόδου. Τα ονόματα των παραμέτρων εμφανίζονται λοξά. Για παράδειγμα η ones(nrows, ncols) δηλώνει ότι η συνάρτηση ones παίρνει δύο παραμέτρους: nrows και ncols. Εφόσον, η εντολή δεν περιλαμβάνει το σύμβολο ένδειξης εισαγωγής εντολής, δεν μπορεί να εισαχθεί όπως είναι γραμμένη στο πρόγραμμα. Μια έκδοση της συνάρτησης ones που μπορεί να εισαχθεί στη γραμμή εντολών του προγράμματος είναι: >> ones(3,5) Μερικές φορές θα χρησιμοποιηθούν σχόλια για την παροχή πρόσθετης πληροφορίας για την συνάρτηση. Τα σχόλια αρχίζουν με τον χαρακτήρα (%) και εκτείνονται μέχρι το τέλος της γραμμής, όπως >> x = sqrt(-4) % το MATLAB χρησιμοποιεί μιγαδικούς αριθμούς Κατά την εισαγωγή μιας εντολής στη γραμμή εντολών του προγράμματος, τα σχόλια μπορούν να παραλειφθούν.

6 200 Παράρτημα Οι μεταβλητές (περιγράφονται στην 1.1.2) παρουσιάζονται κι αυτές με γραμματοσειρά Courier New. Αν χρησιμοποιούνται μεταβλητές σε ένα πρόγραμμα, θα δηλώνονται πρώτες, όπως: >> nr = 2 >> nc = 2 >> ones(nr, nc) Το αποτέλεσμα της εντολής εμφανίζεται αμέσως μετά από αυτήν. Η εμφάνιση των εντολών, των μεταβλητών και των αποτελεσμάτων μιμείται αυτήν της οθόνης του MATLAB, δηλαδή: >> nr = 2 nr = 2 >> nc = 3 nc = 3 >> ones(nr, nc) ans = όπου τα επιπλέον κατακόρυφα κενά διαστήματα έχουν παραλειφθεί για οικονομία χώρου Το MATLAB ως υπολογιστής παραστάσεων Το MATLAB μπορεί να χρησιμοποιηθεί για τον υπολογισμό απλών μαθηματικών παραστάσεων. Για να κάνετε έναν υπολογισμό, απλά πληκτρολογήστε τον στο παράθυρο εντολών και πατήστε το πλήκτρο επιστροφής: >> ans = 4 Η απόκριση είναι της μορφής ans =, όπου ans είναι μια αυτο-ορισμένη μεταβλητή χρησιμοποιούμενη όταν μια παράσταση δεν έχει ανατεθεί σε μια μεταβλητή ορισμένη από τον χρήστη. Προκειμένου να συνεχιστεί ένας υπολογισμός, η τιμή που έχει αποθηκευθεί στην ans μπορεί να ανακληθεί:

7 Παράρτημα 201 >> ans/2 ans = 2 Πέρα από τον απλό υπολογισμό μιας παράστασης, μπορεί κανείς να αναθέσει την τιμή της σε μια μεταβλητή, όπως >> a = 5 a = 5 >> b = 6 b = 6 >> c = b/a c = όπου η απόκριση ans = έχει αντικατασταθεί από το όνομαμεταβλητής =..., όπως θα περίμενε κανείς. Το MATLAB έχει πολλές ενσωματωμένες (built-in) συναρτήσεις και μια σειρά από προκαθορισμένες μεταβλητές. Οι κοινές τριγωνομετρικές συναρτήσεις ανήκουν στο σύνολο αυτών των συναρτήσεων. Οι εισαγόμενες παράμετροι σε όλες τις συναρτήσεις περικλείονται σε παρενθέσεις, όπως: >> sin(pi/4) ans = όπου χρησιμοποιήθηκε η ενσωματωμένη μεταβλητή pi για τον υπολογισμό του εισαχθέντος ορίσματος. Τα ορίσματα σε όλες τις τριγωνομετρικές συναρτήσεις είναι σε ακτίνια. Ένας απλός τρόπος για την εμφάνιση της τιμής μιας μεταβλητής, είτε ενσωματωμένης ή ορισμένης από τον χρήστη, είναι να εισάγετε το όνομα της μεταβλητής στη γραμμή εντολών και να πληκτρολογήσετε : >> pi ans =

8 202 Παράρτημα Σε μια ακολουθία εντολών, οι ενδιάμεσες τιμές μπορεί να μην είναι ενδιαφέρουσες ή η εμφάνιση/επανάληψη των τιμών στο παράθυρο εντολών μπορεί να είναι ενοχλητική. Η εμφάνιση του αποτελέσματος μιας εντολής μπορεί να αποτραπεί προσθέτοντας τον χαρακτήρα (;) στο τέλος της εντολής: >> x = 5; >> y = sqrt(59); >> z = log(y) + x^0.25 z = Το (;) δεν είναι απαραίτητο. Απλώς σημαίνει ότι δεν είναι επιθυμητή η εμφάνιση του αποτελέσματος της εντολής. Για οικονομία χώρου, πολλές παραστάσεις μπορούν να εισαχθούν σε μία γραμμή. Αυτό απαιτεί την χρήση (;) ή (,), ανάμεσα στις παραστάσεις, για τον διαχωρισμό τους. Η χρήση του (,) επιτρέπει την εισαγωγή πολλών εντολών σε μία γραμμή χωρίς να παραλείπονται τα αποτελέσματά τους: >> a = 5; b = sin(a), c = cosh(a) b = c = Οι μεταβλητές του MATLAB Όπως έδειξαν τα προηγούμενα παραδείγματα, οι μεταβλητές δημιουργούνται κατά την χρήση τους. Αν μια μεταβλητή δεν υπάρχει ήδη, δημιουργείται όποτε αυτή εμφανίζεται αριστερά του συμβόλου ισότητας (=). Η τιμή που αποθηκεύεται σε μια μεταβλητή μπορεί φυσικά να αλλάξει μέσω μιας επόμενης ανάθεσης: >> t = 5; >> t = t + 2 t = 7 Οποιαδήποτε μεταβλητή εμφανίζεται δεξιά του συμβόλου ισότητας (=) πρέπει να έχει ήδη οριστεί. Η εντολή >> x = 2 z??? Undefined function or variable z.

9 Παράρτημα 203 έχει ως αποτέλεσμα την εμφάνιση σφάλματος (στο παράδειγμα αυτό), γιατί η μεταβλητή z δεν έχει προηγουμένως οριστεί με κάποια εντολή ανάθεσης. Στο MATLAB, τα ονόματα των μεταβλητών μπορούν να είναι μέχρι 31 χαρακτήρες και έχει σημασία αν είναι κεφαλαία ή μικρά. Για παράδειγμα, οι x και X είναι δυο διαφορετικές μεταβλητές. Επίσης, πρέπει να αρχίζουν με αλφαβητικό χαρακτήρα a-z ή A-Z. Μετά τον πρώτο χαρακτήρα μπορεί να ακολουθεί οποιοσδήποτε συνδυασμός αλφαριθμητικών χαρακτήρων, συμπεριλαμβανομένης και της κάτω παύλας, ( _ ). Για παράδειγμα, οι επόμενες εντολές δείχνουν έναν γνωστό γεωμετρικό υπολογισμό που δεν χρειάζεται περαιτέρω επεξήγηση: >> radius = 5.2; >> area = pi radius^2; ΠΙΝΑΚΑΣ 1.1 ΕΝΣΩΜΑΤΩΜΕΝΕΣ ΜΕΤΑΒΛΗΤΕΣ ΤΟΥ MATLAB Μεταβλητή Σημασία ans τιμή μιας παράστασης όταν αυτή η παράσταση δεν έχει ανατεθεί σε μια μεταβλητή eps ακρίβεια αριθμού κινητής υποδιαστολής i, j φανταστικές μονάδες, i = j = 1 pi π, realmax ο μεγαλύτερος θετικός αριθμός κινητής υποδιαστολής realmin ο μικρότερος θετικός αριθμός κινητής υποδιαστολής Inf, ένας αριθμός μεγαλύτερος του realmax, το αποτέλεσμα του 1/0 NaN όχι ένας αριθμός, (π.χ. το αποτέλεσμα του 0/0) Ενσωματωμένες Μεταβλητές και Συναρτήσεις Το MATLAB χρησιμοποιεί ένα περιορισμένο πλήθος ονομάτων για τις ενσωματωμένες μεταβλητές. Ένα παράδειγμα είναι η μεταβλητή ans, που δημιουργείται αυτόματα όποτε μια μαθηματική παράσταση δεν έχει ανατεθεί σε κάποια μεταβλητή. Ο πίνακας 2.1 περιλαμβάνει τις ενσωματωμένες μεταβλητές και τη σημασία τους. Αν και είναι δυνατό να οριστούν ξανά οι μεταβλητές αυτές, αυτό δεν είναι πολύ καλή ιδέα, γιατί χρησιμοποιούνται από ενσωματωμένες συναρτήσεις. Οι ε- ξαιρέσεις στον κανόνα αυτό είναι οι μεταβλητές i και j, στις οποίες αναθέτονται ακέραιες τιμές, προκειμένου να χρησιμοποιηθούν ως δείκτες πινάκων. (βλ 1.2.2).

10 204 Παράρτημα Η ενσωματωμένη μεταβλητή eps ονομάζεται «έψιλον μηχανής» και περιγράφεται στο κεφάλαιο 5. Οι μεταβλητές realmax, realmin, Inf και NaN χρησιμοποιούνται για το χειρισμό εξαιρέσεων αριθμών κινητής υποδιαστολής. Οι τιμές realmax και realmin είναι τα μεγέθη του μεγαλύτερου και μικρότερου αριθμού, αντιστοίχως, που μπορεί να αποθηκευθούν με διπλή ακρίβεια (double precision). 1 Οι τιμές Inf και NaN εμφανίζονται όταν μια εξαίρεση αριθμού κινητής υποδιαστολής είναι αποτέλεσμα των υπολογισμών. Οι παρακάτω υπολογισμοί χειρίζονται με έναν προβλεπόμενο και αξιόπιστο τρόπο τις μεταβλητές Inf και NaN: >> x = 0; >> 5/x Warning: Divide by zero ans = Inf >> x/x Warning: Divide by zero ans = NaN Οι μεταβλητές eps, Inf, realmin και realmax περιγράφονται περαιτέρω στα Υπολογιστικά Μαθηματικά (βλ. και Help του MATLAB). Το MATLAB έχει πολλές ισχυρές ενσωματωμένες συναρτήσεις. Καλόν είναι, να αποφεύγει κανείς τη χρήση μεταβλητών με ονόματα ίδια με εκείνα ενσωματωμένων συναρτήσεων. Αυτό δεν είναι πάντα εύκολο, καθώς υπάρχουν τόσο πολλές συναρτήσεις του MATLAB. Για παράδειγμα, κάποιος μπορεί να μην σκεφτεί ότι gamma είναι μια ενσωματωμένη συνάρτηση με τύπο Μια εντολή, όπως x = x 1 t t 0 e dt. >> gamma = 1.4 η οποία δημιουργεί μια μεταβλητή με όνομα gamma, δεν είναι μη νόμιμη, απλώς στην τρέχουσα συνεδρία του MATLAB δεν υπάρχει η δυνατότητα κλήσης της gamma συνάρτησης. 1 Η ακρίβεια των αριθμών κινητής υποδιαστολής και η σχέση της με τους realmax και realmin είναι θέματα συζήτησης των Υπολογιστικών Μαθηματικών.

11 Παράρτημα Συναρτήσεις και Εντολές Είναι απαραίτητο να γίνει ένας σημασιολογικός διαχωρισμός ανάμεσα στις συναρτήσεις και τις εντολές που εισάγονται στο παράθυρο εντολών. Μια συνάρτηση έχει εισαγόμενα ορίσματα και, συνήθως, έχει και εξαγόμενα ορίσματα. Για παράδειγμα, η παράσταση >> y = sin(pi/6) χρησιμοποιεί τη συνάρτηση sin με εισαγόμενο όρισμα pi/6 και αναθέτει το α- ποτέλεσμα στη μεταβλητή y. Σε αντίθεση, η εντολή help χρησιμοποιείται με ένα κενό ανάμεσα στο όνομα της εντολής και το όρισμά της, όπως για παράδειγμα >> help sin Γενικά, οι εντολές χρησιμοποιούνται για τη διαχείριση της κατάστασης της τρέχουσας συνεδρίας του MATLAB, ενώ οι συναρτήσεις χρησιμοποιούνται για τη διαχείριση των μεταβλητών του MATLAB. Ο διαχωρισμός ανάμεσα στις εντολές και τις συναρτήσεις είναι κατά κάποιο τρόπο τεχνητός, γιατί όλες οι εντολές μπορούν να χρησιμοποιηθούν σαν συναρτήσεις αν το όρισμα της εντολής αποδοθεί ως εισαγόμενη συμβολοσειρά (string), όπως >> help('sin') Αν και οι εντολές μπορούν να χειριστούν ως συναρτήσεις, το αντίθετο δεν συμβαίνει. Η παράσταση >> sin pi ans = έχει ένα μη αναμενόμενο αποτέλεσμα. Βασικά, η χρήση του MATLAB έχει να κάνει με τη χρήση συναρτήσεων. Η διαφορά στη σύνταξη μεταξύ των συναρτήσεων και των εντολών είναι ένα έλασσον μπέρδεμα, γιατί υπάρχει μόνον ένας μικρός αριθμός εντολών και όλες αυτές έχουν να κάνουν με μη αριθμητικές δουλειές On-line Βοήθεια Τα εγχειρίδια του MATLAB παρέχουν εκτεταμένη περιγραφή όλων των ενσωματωμένων συναρτήσεων. Τα εγχειρίδια (σε HTML και PDF) μπορείτε να τα δείτε ηλεκτρονικά. Ωστόσο, σε πολλές περιπτώσεις, τα εγχειρίδια δεν είναι τόσο εύχρη-

12 206 Παράρτημα στα όσο η on-line βοήθεια που είναι άμεσα διαθέσιμη μέσω του παραθύρου εντολών του MATLAB. Η on-line βοήθεια είναι ιδιαίτερα χρήσιμη όταν χρειάζεστε πληροφορία σχετικά με τον τρόπο χρήσης μιας ενσωματωμένης συνάρτησης. Για να δείτε την on-line βοήθεια της functionname, πληκτρολογήστε help functionname ή helpwin('functionname') στη γραμμή εντολών. Η μόνη διαφορά ανάμεσα σε αυτές τις δύο εντολές είναι ο τρόπος εμφάνισης της πληροφορίας. Η help functionname εντολή εμφανίζει την πληροφορία στο ίδιο παράθυρο, το παράθυρο εντολών, ενώ η helpwin('functionname') ανοίγει ένα ξεχωριστό παράθυρο που ονομάζεται help browser. Ας υποθέσουμε, για παράδειγμα, ότι δεν μπορείτε να θυμηθείτε αν η συνάρτηση log υπολογίζει τον φυσικό λογάριθμο ή το λογάριθμο με βάση το 10. Αντί να ψάξετε το log στο εγχειρίδιο, απλώς πληκτρολογήστε >> help log και το MATLAB θα αποκριθεί με LOG X. Natural logarithm. LOG(X) is the natural logarithm of the elements of Complex results are produced if X is not positive. See also LOG2, LOG10, EXP, LOGM. Overloaded methods help sym/log.m help fints/log.m help demtseries/log.m Αυτή η περιεκτική περίληψη παρέχει την απαραίτητη πληροφορία, καθώς και α- ναφορές σε συσχετιζόμενες συναρτήσεις log2, log10, exp, logm κ.λπ.

13 Παράρτημα 207 Η εντολή lookfor βοηθά στην εύρεση συναρτήσεων σχετικών με ένα συγκεκριμένο θέμα. Είναι ιδιαίτερα χρήσιμη όταν θέλετε να μάθετε αν το MATLAB έχει κάποια συνάρτηση που εκτελεί μια συγκεκριμένη λειτουργία. Πληκτρολογώντας lookfor searchstring ξεκινάει μια αναζήτηση στις συναρτήσεις που είναι διαθέσιμες στο MATLAB. Αν το τμήμα searchstring είναι μέρος ονόματος κάποιας συνάρτησης ή των σχολίων της, τότε η πρώτη γραμμή των σχολίων εμφανίζεται στο παράθυρο εντολών. Ας υποθέσουμε, για παράδειγμα, ότι θα θέλατε να μάθετε αν το MATLAB έχει κάποια ενσωματωμένη συνάρτηση για τον υπολογισμό της συνάρτησης υπερβολικού συνημίτονου. Η χρήση της lookfor για την εύρεση του hyperbolic ή του cosine θα επιστρέψει τα ονόματα των σχετικών συναρτήσεων του MATLAB. Για παράδειγμα, >> lookfor cosine ACOS Inverse cosine. ACOSH Inverse hyperbolic cosine. COS Cosine. COSH Hyperbolic cosine. TFFUNC time and frequency domain versions of a cosine modulated Gaussian pulse. RCOSFIR Design a raised cosine FIR filter. RCOSFLT Filter the input signal using a raised cosine filter. RCOSIIR Design a raised cosine IIR filter. RCOSINE Design raised cosine filter. rcosdemo.m: %Demonstration of raised cosine functions COSINT Cosine integral function. DCT2 Compute 2-D discrete cosine transform. DCTMTX Compute discrete cosine transform matrix. DCTMTX2 Discrete cosine transform matrix. IDCT2 Compute 2-D inverse discrete cosine transform. CHIRP Swept-frequency cosine generator. DCT Discrete cosine transform. FIRRCOS Raised Cosine FIR Filter design. IDCT Inverse discrete cosine transform. ACOS Symbolic inverse cosine. ACOSH Symbolic inverse hyperbolic cosine. COS Symbolic cosine function. COSH Symbolic hyperbolic cosine. COSINT Cosine integral function. DCT Discrete cosine transform. IDCT Inverse discrete cosine transform. BLKACOS This block defines an output angle that is the arccosine of the input. BLKCOS This block defines the output as the cosine of the input. BLKCOSASIN This block defines the cosine of an angle whose sine is u. BLKCOSATAN This block defines the cosine of an angle whose tangent is u1/u2. dctold.m: %DCT Discrete cosine transform. GENCOSWIN Returns one of the generalized cosine windows. idctold.m: %IDCT Inverse discrete cosine transform.

14 208 Παράρτημα Το αποτέλεσμα είναι μια λίστα συναρτήσεων (με ΚΕΦΑΛΑΙΑ) και μια μικρή περιγραφή με το τι κάνει η κάθε μια. Το πλεονέκτημα της εντολής lookfor είναι ότι δεν χρειάζεται να είναι γνωστό το όνομα της συνάρτησης. Όταν βρεθεί το ό- νομα της συνάρτησης με την lookfor, τότε με την εντολή help μπορεί κανείς να δει μια πιο λεπτομερή περιγραφή της. Για παράδειγμα, συγκεκριμένη πληροφορία για τη χρήση της συνάρτησης cosh μπορεί να βρεθεί με >> help cosh COSH Hyperbolic cosine. COSH(X) is the hyperbolic cosine of the elements of X. Overloaded methods help sym/cosh.m 1.2 Πίνακες και Διανύσματα Στα προηγούμενα παραδείγματα, οι μεταβλητές που χρησιμοποιήθηκαν ήταν α- ριθμοί ή βαθμωτά μεγέθη (scalars). Στην πραγματικότητα, όλες οι μεταβλητές στο MATLAB είναι arrays. Ένα array είναι μια συλλογή τιμών στην οποία η αναφορά γίνεται με ένα μόνο όνομα μεταβλητής. Κάθε ένα στοιχείο του πίνακα αποθηκεύεται και εξάγεται (υπολογίζεται) καθορίζοντας το δείκτη του στοιχείου με βάση την αρχή του array. Από την έκδοση 5 του MATLAB και μετά μπορούν να δημιουργηθούν arrays με οποιονδήποτε αριθμό δεικτών. Στις εφαρμογές αυτής της εισαγωγής μας στο MATLAB τα arrays θα έχουν έναν ή δύο δείκτες που περιέχουν είτε αριθμητικές, ή χαρακτήρες. (Τα arrays χαρακτήρων ή strings περιγράφονται παρακάτω, στην παράγραφο 1.3.2). Ένας πίνακας (matrix) είναι δισδιάστατο array με αριθμητικές τιμές που υπακούει στους κανόνες της γραμμικής άλγεβρας, όπως αυτοί περιγράφονται σε ένα βιβλίο Γραμμικής Άλγεβρας. Εδώ θα αναφερθούμε κυρίως σε ότι αφορά τον ορισμό και τη χρήση μεταβλητών για πίνακες του MATLAB σε απλές υπολογιστικές πράξεις. Ένα βαθμωτό μέγεθος θεωρείται ως ένας πίνακας με μια γραμμή και μια στήλη. Ένα διάνυσμα (vector) είναι ένας πίνακας είτε με μία γραμμή ή με μία στήλη. Ό- ταν εισάγεται μια μαθηματική έκφραση ή παράσταση (expression) ο διερμηνέας του MATLAB την διαπερνάει (parse) και την υπολογίζει κάνοντας χρήση των κανόνων της γραμμικής άλγεβρας. Βαθμωτές παραστάσεις όπως >> a = 2; b = 3; >> c = a*b c =

15 Παράρτημα διέπονται από αυτούς τους κανόνες. Οι αγκύλες, [ ], χρησιμοποιούνται για να οροθετήσουν διανύσματα και πίνακες κατά την εισαγωγή τους στη γραμμή εντολών. Η επόμενη παράσταση δημιουργεί ένα διάνυσμα γραμμή (row vector) με τρία στοιχεία: >> v = [7 3 9] v = Τα στοιχεία σε μια γραμμή διαχωρίζονται με κενά ή κόμματα. Τα ερωτηματικά χρησιμοποιούνται για το διαχωρισμό των γραμμών. Ένα παράδειγμα ενός διανύσματος στήλης (column vector) φαίνεται παρακάτω >> w = [2; 6; 1] w = και ένα παράδειγμα ενός 3x3 πίνακα είναι >> A = [1 2 3; 4 5 6; ] A = Όταν ένας πίνακας εισάγεται απευθείας στη γραμμή εντολών, για το διαχωρισμό των γραμμών μπορεί να χρησιμοποιηθεί το πλήκτρο >> B = [ % πληκτρολογήστε μετά την % πληκτρολόγηση του ] B = Οι διαστάσεις του πίνακα (ή διανύσματος) δεν καθορίζονται ρητά. Το MATLAB κρατάει πληροφορία για τον αριθμό των γραμμών και των στηλών, αυτόματα.

16 210 Παράρτημα Δημιουργία Πινάκων Στο MATLAB, μεταβλητές πινάκων μπορούν να δημιουργηθούν με οποινδήποτε από τους παρακάτω τρόπους: Απευθείας εισαγωγή (με πληκτρολόγηση) Υπολογισμός παραστάσεων πινάκων Ενσωματωμένες συναρτήσεις που επιστρέφουν πίνακες Συναρτήσεις που δημιουργούνται από το χρήστη και που επιστρέφουν πίνακες Εισάγοντας πίνακες δεδομένα από αρχεία σε δίσκο Τα προηγούμενα παραδείγματα δείχνουν πως εισάγονται πίνακες απευθείας (με πληκτρολόγηση). Για την εισαγωγή διανυσμάτων είναι σημαντικό να διακρίνουμε τα διανύσματα γραμμές από τα διανύσματα στήλες. Σύμφωνα με τους κανόνες της γραμμικής άλγεβρας, δεν είναι εναλλάξιμα τα διανύσματα στήλες με τα διανύσματα γραμμές και ο διερμηνευτής (interpreter) του MATLAB δεν επιτρέπει μη αποδεκτές παραστάσεις. Ένα διάνυσμα γραμμή μπορεί να μετατραπεί σε ένα διάνυσμα στήλη, και το αντίθετο, με τον τελεστή αναστροφής (transpose operator). Στον γνωστό από την γραμμική άλγεβρα συμβολισμό, αν v είναι ένα διάνυσμα, τότε το v Τ είναι το ανάστροφό του. Για παράδειγμα, 2 4 v = [ ] και v Τ = 1 7 Στο MATLAB ο τελεστής αναστροφής συμβολίζεται με τη μονή απόστροφο ('). Δηλ. ο ανάστροφος του πίνακα Α συμβολίζεται με Α'. Έτσι σύμφωνα με όσα προηγήθηκαν, το διάνυσμα v και το ανάστροφό του δημιουργούνται στο MATLAB με >> v = [ ] v = >> v' ans =

17 Παράρτημα 211 και ένας πίνακας Α με τον ανάστροφό του με >> A = [1 2 3; 4 5 6; 7 8 9] A = >> A' ans = Υπάρχουν πολλές ενσωματωμένες συναρτήσεις για τη δημιουργία διανυσμάτων και πινάκων. Μερικές από αυτές παρατίθενται στον Πίνακα 1.2. Η eye συνάρτηση δέχεται ένα ή δύο ορίσματα και δημιουργεί έναν πίνακα με 1 στην κύρια διαγώνιο. Η μορφή της eye συνάρτησης με ένα όρισμα δημιουργεί έναν (τετραγωνικό) μοναδιαίο πίνακα με διαστάσεις που ορίζονται από την τιμή της εισαχθείσας παραμέτρου, όπως >> C = eye(4) C = ΠΙΝΑΚΑΣ 1.2 ΜΕΡΙΚΕΣ ΕΝΣΩΜΑΤΩΜΕΝΕΣ ΣΥΝΑΡΤΗΣΕΙΣ ΓΙΑ ΤΗ ΔΗΜΙ- ΟΥΡΓΙΑ ΠΙΝΑΚΩΝ. Συνάρτηση Επιστρέφει diag πίνακα με καθορισμένα διαγώνια στοιχεία ή εξάγει τα διαγώνια στοιχεία ενός πίνακα eye μοναδιαίο πίνακα ones πίνακα με όλα τα στοιχεία = 1 rand πίνακα με στοιχεία τυχαίους αριθμούς zeros πίνακα με όλα τα στοιχεία = 0 length το πλήθος των στοιχείων ενός διανύσματος linspace διάνυσμα γραμμή με στοιχεία που αυξάνονται γραμμικά logspace διάνυσμα στήλη με στοιχεί που αυξάνονται λογαριθμικά size τις διαστάσεις του πίνακα

18 212 Παράρτημα Αν στην συνάρτηση eye εισαχθούν δύο παράμετροι, η πρώτη ορίζει το πλήθος των γραμμών και η δεύτερη το πλήθος των στηλών του πίνακα που θα δημιουργηθεί. Η διαγώνιος με i = j, όπου i είναι ο δείκτης της γραμμής ενώ j είναι ο δείκτης της στήλης, έχει στοιχεία μονάδες: >> D = eye (3,5) D = Η συνάρτηση diag είτε δημιουργεί έναν πίνακα με καθορισμένες τις τιμές της διαγωνίου ή εξάγει τα στοιχεία της διαγωνίου. Για τη δημιουργία ενός διαγώνιου πίνακα με την diag συνάρτηση, το εισαγόμενο όρισμα πρέπει να είναι διάνυσμα. Το διάνυσμα μπορεί να δημιουργηθεί ρητά, όπως >> v = [1 2 3]; >> A = diag(v) A = ή να εισαχθεί κατευθείαν ως όρισμα, όπως >> B = diag([ ]) B = Για την εξαγωγή των στοιχείων της διαγωνίου ενός πίνακα χρησιμοποιείται η ίδια συνάρτηση με τη διαφορά ότι τώρα το εισαγόμενο όρισμα είναι πίνακας και όχι διάνυσμα: >> w = diag(b) w =

19 Παράρτημα 213 Η εξάρτηση της λειτουργίας της συνάρτησης diag από το εισαγόμενο όρισμα είναι ένα σημαντικό χαρακτηριστικό το οποίο συναντάται σε πολλές συναρτήσεις του MATLAB. Για κάποιον που μαθαίνει τώρα το MATLAB, η δυνατότητα μιας συνάρτησης να εκτελεί διαφορετικές αν και σχετιζόμενες εργασίες, μπορεί να προκαλεί σύγχυση. Όταν όμως εξοικειωθεί με την δυνατότητα αυτή θα είναι ένα σημαντικό πλεονέκτημα για τον ίδιο καθώς, θα πρέπει να θυμάται λιγότερες συναρτήσεις. Οι συναρτήσεις ones και zeros είναι παρόμοιες: η ones δημιουργεί έναν πίνακα με μονάδες και η zeros έναν πίνακα με μηδενικά. Και οι δυο αυτές συναρτήσεις δαίχονται δύο ορίσματα. Το πρώτο όρισμα είναι το πλήθος των γραμμών του πίνακα και το δεύτερο είναι το πλήθος των στηλών του: >> D = ones(3,3) D = Φυσικά, ο πίνακας δεν είναι απαραίτητο να είναι τετραγωνικός. >> E = ones(2, 4) E = Βέβαια, οι ones και zeros μπορούν να χρησιμοποιηθούν για τη δημιουργία διανυσμάτων γραμμών ή στηλών: >> s = ones(1, 4) s = >> t = zeros(3, 1) t = Η συνάρτηση linspace δημιουργεί διανύσματα γραμμές με στοιχεία που διαφέρουν ισομετρικά. Χρησιμοποιείται με δύο μορφές linspace(αρχικήτιμή, τελικήτιμή)

20 214 Παράρτημα και linspace(αρχικήτιμή, τελικήτιμή, πλήθοςσημείων) όπου οι παράμετροι αρχικήτιμή και τελικήτιμή είναι η αρχική και τελική τιμή της ακολουθίας των στοιχείων και η παράμετρος πλήθοςσημείων είναι ο αριθμός των στοιχείων που είναι να δημιουργηθούν. Για παράδειγμα, μπορεί να έχουμε >> u = linspace(0.0, 0.25, 5) u = Στην μορφή με τις δύο παραμέτρους, η παράμετρος πλήθος Σημείων δέχεται εξ ορισμού την τιμή 100. Στην βασική της μορφή, η συνάρτηση linspace δημιουργεί διανύσματα γραμμή. Για την δημιουργία διανύσματος στήλη απλώς χρησιμοποιείστε τον τελεστή αναστροφής, όπως στο παρακάτω παράδειγμα >> v = linspace(0, 9, 4)' v = Η συνάρτηση logspace είναι παρόμοια με την linspace, απλώς δημιουργεί στοιχεία που διαφέρουν λογαριθμικά μεταξύ τους. Η εντολή >> logspace(αρχικήτιμή, τελικήτιμή, πλήθοςσημείων) δημιουργεί πλήθος στοιχείων ίσο με πλήθοςσημείων ανάμεσα στις τιμές 10 αρχικήτιμή και 10 τελικήτιμή, όπως στην παρακάτω εντολή: >> w = logspace(1, 4, 4) w = Αν το τρίτο όρισμα παραληφθεί, δημιουργούνται 50 στοιχεία ανάμεσα στις τιμές 10 αρχικήτιμή και 10 τελικήτιμή.

21 Παράρτημα 215 Παράδειγμα 1.1: Πίνακας Τιμών Τριγωνομετρικών Συναρτήσεων Οι εντολές του MATLAB που ακολουθούν, δημιουργούν διανύσματα που περιέχουν τιμές τριγωνομετρικών συναρτήσεων. Κατόπιν, τα διανύσματα αυτά συνδυάζονται για να σχηματίσουν τις στήλες ενός πίνακα έτσι ώστε οι τιμές να εμφανιστούν σε πινακοειδή μορφή: >> x = linspace(0, 2*pi, 6); >> s = sin(x); >> c = cos(x); >> t = tan(x); >> [x' s' c' t'] ans = Η έκφραση [x' s' c' t'] δημιουργεί έναν πίνακα του οποίου οι στήλες είναι τα ανάστροφα των διανυσμάτων x, s, c και t. Τι συμβαίνει αν παραληφθούν οι τελεστές αναστροφής; Μπορείτε να δημιουργήσετε έναν πίνακα στον οποίο η πρώτη γραμμή να περιέχει τις τιμές του x και η δεύτερη μέχρι την τέταρτη να περιέχουν τις τιμές των s, c, και t, αντιστοίχως; Συμβολισμός Δεικτών για τα Στοιχεία Πινάκων Τα στοιχεία των πινάκων αναφέρονται χρησιμοποιώντας συμβολισμό δεικτών με τρόπο παρόμοιο με αυτόν της Fortran. Αν v είναι ένα διάνυσμα γραμμή ή στήλη, το v(k) αναφέρεται στο k-οστό στοιχείο του διανύσματος. Αν Α είναι ένας πίνακας, το A(m,n) αναφέρεται στο στοιχείο της m-οστής γραμμής και n-οστής στήλης, όπως φαίνεται >> Α = 1 2 3; 4 5 6; ; >> Α(3,2) ans = 8

22 216 Παράρτημα Κατά την εξαγωγή τιμών από πίνακα, η χρήση δεικτών πέραν των διαστάσεων του πίνακα έχει σαν αποτέλεσμα σφάλμα: >> A=[1 2 3;4 5 6;7 8 9]; >> A(1,4)??? Index exceeds matrix dimensions. Ο συμβολισμός δεικτών μπορεί να χρησιμοποιηθεί για την ανάθεση τιμών σε στοιχεία πίνακα: >> A=[1 2 3;4 5 6;7 8 9]; >> A(1,1)=-2 A = Αντίθετα από την προσπάθεια εξαγωγής στοιχείου εκτός του διαστήματος δεικτών ενός πίνακα, μια πράξη ανάθεσης μπορεί, νόμιμα, να αναφέρεται σε δείκτες γραμμών και στηλών που δεν αποτελούν μέρος του πίνακα. Αν μια εντολή ανάθεσης χρησιμοποιεί έναν δείκτη μεγαλύτερο από τις τρέχουσες διαστάσεις του πίνακα το MATLAB απλώς αυξάνει το μέγεθος του πίνακα, προκειμένου να συμπεριλάβει το νέο στοιχείο(α). >> D = eye(3,5) D = >> D(4,2) = -2 D = Οι πίνακες που μεγαλώνουν αυτόματα για να ανταποκριθούν σε ανάγκες είναι ένα ισχυρό χαρακτηριστικό που ελαττώνει τη μονοτονία και την πολυπλοκότητα κάποιων διεργασιών της γραμμικής άλγεβρας. Ωστόσο, όπως πολλά από τα εξαίρετα χαρακτηριστικά στοιχεία του MATLAB, αυτό μπορεί να οδηγεί σε ολέθρια σφάλματα.

23 Παράρτημα 217 Οι συναρτήσεις length και size χρησιμοποιούνται για να προσδιορίσουν το πλήθος των στοιχείων σε διανύσματα και πίνακες. Οι συναρτήσεις αυτές είναι ι- διαίτερα χρήσιμες όταν κάποιος δουλεύει με πίνακες μεταβλητού ή αγνώστου μεγέθους, ειδικότερα δε, όταν γράφει βρόχους. (βλ ). Για παράδειγμα, οι παρακάτω εντολές δημιουργούν ένα διάνυσμα και αντικαθιστούν το τελευταίο του στοιχείο με μηδέν: >> x = 0:5 x = >> n = length(x) n = 6 >> x(n) = 0 x = Η εντολή size επιστρέφει δύο τιμές και έχει την ακόλουθη σύνταξη: [nrows,mcols] = size(matrix) όπου nrows και mcols είναι τα πλήθη των γραμμών και των στηλών, αντιστοίχως, στον πίνακα matrix. Σημειώστε ότι οι παράμετροι επιστροφής πρέπει να διαχωρίζονται με κόμμα και να περικλείονται σε αγκύλες. Παρατίθενται μερικά παραδείγματα που κάνουν χρήση της συνάρτησης size: >> A = eye(3,5); >> [nr, nc] = size(a) nr = 3 nc = 5 >> B = zeros(size(a)) B =

24 218 Παράρτημα Το δεύτερο παράδειγμα δείχνει ότι το αποτέλεσμα της συνάρτησης size μπορεί να χρησιμοποιηθεί σαν όρισμα μιας άλλης εντολής. Αυτός ο τύπος έκφρασης χρησιμοποιείται συχνά για την αρχικοποίηση ενός πίνακα έτσι ώστε να έχει το ίδιο σχήμα με κάποιον άλλο πίνακα. Φυσικά, σε αυτό το παράδειγμα, ο ορισμός του πίνακα Β θα μπορούσε να επιτευχθεί με την Β=zeros(nr,nc) όπου nr και nc ανατίθενται με την [nr,nc] = size(a) Ο συμβολισμός άνω - κάτω τελεία (:) Το MATLAB έχει μια ισχυρή και πολύ συμπαγή σύνταξη, η οποία αναφέρεται ως συμβολισμός άνω - κάτω τελεία. Ο συμβολισμός αυτός μπορεί να χρησιμοποιηθεί είτε στη δημιουργία διανυσμάτων ή, σε συνδυασμό με τον συμβολισμό δεικτών (προηγούμενη ενότητα), στην εξαγωγή πεδίων τιμών των στοιχείων πινάκων. Αν και ο συμβολισμός άνω - κάτω τελεία είναι πολύ λακωνικός και κατά κάποιο τρόπο «ξυπναδιάρικος» για να τον κατέχει κάποιος, μπορεί να χρησιμοποιηθεί παρέχοντας πολλά πλεονεκτήματα. Δύο μορφές συμβολισμού άνω - κάτω τελείας χρησιμοποιούνται για τη δημιουργία διανυσμάτων: διάνυσμα = αρχικήτιμή:τελικήτιμή διάνυσμα = αρχικήτιμή:αύξηση:τελικήτιμή Εδώ, οι τιμές αρχικήτιμή και τελικήτιμή είναι τα άκρα του διαστήματος, η τιμή αύξηση είναι η διαφορά ανάμεσα στα σημεία του διαστήματος και διάνυσμα είναι το αποτέλεσμα. Δείτε τα παραδείγματα: >> s = 1:5 s = >> t = 0:0.1:0.5 t = Το δεύτερο παράδειγμα δείχνει ότι οι τιμές αρχικήτιμή, αύξηση και τελικήτιμή δεν είναι απαραίτητο να είναι ακέραιοι. Όπως με την linspace συνάρτηση, οι παραστάσεις με άνω -κάτω τελεία δημιουργούν διανύσματα γραμμή, εξ ορισμού. Προκειμένου να δημιουργήσουμε ένα διάνυσμα στήλη, περικλείουμε την παράσταση σε παρενθέσεις και επισυνάπτουμε τον τελεστή αναστροφής: >> u = (1:5)'

25 Παράρτημα 219 u = Οι παρενθέσεις είναι απαραίτητες γιατί ο τελεστής αναστροφής έχει υψηλότερη προτεραιότητα από το σύμβολο (:). 2 Για παράδειγμα, >> v = 1:5' v = έχει σαν αποτέλεσμα ένα διάνυσμα γραμμή γιατί ο τελεστής αναστροφής εφαρμόστηκε στο βαθμωτό μέγεθος 5 πριν δημιουργηθεί το διάνυσμα. Ένα σύμβολο (:) μπορεί να χρησιμοποιηθεί σαν μπαλαντέρ για να αναφερθούμε σε μια ολόκληρη γραμμή ή στήλη: >> A=[1 2 3;4 5 6;7 8 9]; >> A(:,1) ans = >> A(2,:) ans = Εναλλακτικά, ένα πεδίο τιμών μπορεί να επιλεγεί χρησιμοποιώντας μια παράσταση με (:) στη θέση ενός απλού δείκτη: >> A = [1 2 3;4 5 6;7 8 9]; >> A(2:3,1) ans = 4 7 >> A(1:2,2:3) ans = 2 βλ για τους κανόνες προτεραιότητας τελεστών.

26 220 Παράρτημα Ο συμβολισμός άνω - κάτω τελεία μπορεί επίσης να χρησιμοποιηθεί σε πράξεις ανάθεσης τιμών. Οι παρακάτω εντολές δημιουργούν έναν πίνακα μονάδων και μετά αναθέτουν νέες τιμές στην πρώτη γραμμή: >> B = ones(3,4); >> B(1,:) = [ ] B = Η δεύτερη εντολή μπορεί να συντμηθεί περισσότερο με το σύμβολο (:) >> B = ones(3,4); >> B(1,:) = 2:2:8 B = Σε ορισμένες περιπτώσεις μπορεί κανείς να χρειαστεί να ανακτήσει την τελευταία τιμή, την προτελευταία κ.λπ. τιμή από έναν πίνακα ή διάνυσμα. Ένας τρόπος να το κάνει αυτό είναι ο ακόλουθος: x =... % ορίζει το διάνυσμα x s = x(end) % το τελευταίο στοιχείο του x t = x(end-1) % το προτελευταίο στοιχείο του x, % κ.λπ. Σε αυτό το σημείο, μπορεί να χρησιμοποιηθεί η λέξη-κλειδί end αντί να ορίσουμε μια μεταβλητή να είναι ίση με το μήκος του διανύσματος. Για παράδειγμα, θα μπορούσαμε να έχουμε >> x = rand(1,5) x = >> x(end) ans =

27 Παράρτημα 221 >> x(end-1) ans = Η λέξη-κλειδί end έχει εφαρμογή και στους πίνακες κατά έναν προφανή τρόπο: >> A = [1 2 3;4 5 6;7 8 9]; >> B = A(2:end,1:end-1) B = Διαγραφή Στοιχείων από Διανύσματα και Πίνακες Το MATLAB δίνει την δυνατότητα διαγραφής μεμονωμένων ή ομαδοποιημένων στοιχείων από διανύσματα και πίνακες αναθέτοντας στα στοιχεία αυτά τον κενό πίνακα,[ ]. Αν x είναι ένα ήδη ορισμένο διάνυσμα, η ανάθεση x = [ ] απαλείφει όλα τα στοιχεία του διανύσματος. Συγκεκριμένα στοιχεία ενός διανύσματος απαλείφονται χρησιμοποιώντας τις κατάλληλες εντολές, όπως >> x = 1:5; % δημιουργεί ένα διάνυσμα x >> x(3) = [ ] % και διαγράφει το τρίτο στοιχείο του x = Χρησιμοποιώντας τον κατάλληλο συμβολισμό μπορούμε να διαγράψουμε τμήματα στοιχείων ενός διανύσματος: >> x = 1:5; >> x(1:3) = [] % διαγράφει τα πρώτα τρία στοιχεία x = 4 5 >> x = 1:10; >> x(1:2:9) = [ ] % διαγράφει τα περιττής τάξεως στοιχεία x = >> x = 1:10; >> x(length(x)-3:length(x)) = [] % διαγράφει τα τέσσερα % τελευταία στοιχεία

28 222 Παράρτημα x = Οι προηγούμενες εντολές μπορούν να περιοριστούν χρησιμοποιώντας τη λέξηκλειδί end: >> x = 1:10; >> x(end-3:end)=[] x = Οι πράξεις απαλοιφής σε πίνακες πρέπει να αφορούν ολόκληρες γραμμές ή στήλες: >> A = [1 2 3;4 5 6;7 8 9]; >> A(:,1) = [] A = >> A = [1 2 3;4 5 6;7 8 9]; >> A(3,3) = []??? Indexed empty matrix assignment is not allowed. Το στοιχείο (3,3) δεν μπορεί να απαλοιφθεί γιατί οι πίνακες πρέπει να διατηρούν το ορθογώνιο σχήμα τους Πράξεις με Πίνακες Οι βασικές αριθμητικές πράξεις της πρόσθεσης, της αφαίρεσης και του πολλαπλασιασμού μπορούν να εφαρμοστούν άμεσα σε πίνακες μεταβλητές, υπό τον όρο ότι η συγκεκριμένη πράξη διέπεται από τους κανόνες της Γραμμικής Άλγεβρας. Για παράδειγμα, η πρόσθεση και η αφαίρεση δύο διανυσμάτων γραμμής ίσου μεγέθους είναι επιτρεπτή: >> u = [10 9 8]; % τα u και v είναι διανύσματα-γραμμές >> v = [1 2 3]; >> u + v % το άθροισμα είναι στοιχείο προς στοιχείο ans =

29 Παράρτημα 223 >> u v % η διαφορά είναι στοιχείο με στοιχείο ans = Ο τελεστής * εκτελεί τον κατάλληλο πολλαπλασιασμό πίνακα με πίνακα, πίνακα με διάνυσμα, εσωτερικό και εξωτερικό γινόμενο, ανάλογα με το είδος των τελεστέων. Δοθέντων δύο συμβατών πινάκων Α και Β, η παράσταση Α*Β του MATLAB υπολογίζει το γινόμενο των Α και Β όπως ορίζεται από τους κανόνες της Γραμμικής Άλγεβρας. Τα παρακάτω είναι παραδείγματα γινομένων πίνακα με πίνακα και πίνακα με διάνυσμα: >> A = ones(2,3); >> B = [1 2;3 4;5 6]; >> A*B ans = >> C = diag(1:3); D = ones(3,3); >> C*D ans = >> x = [1; 0; 1;]; >> A*x ans = 2 2 >> C*x ans = Το εσωτερικό γινόμενο δύο διανυσμάτων είναι αριθμός. Στην Γραμμική Άλγεβρα το εσωτερικό γινόμενο είναι αποτέλεσμα του πολλαπλασιασμού ενός διανύσματος γραμμή και ενός διανύσματος στήλης. Για παράδειγμα, το γινόμενο ενός διανύσματος γραμμή u, με τέσσερα στοιχεία, και ενός διανύσματος στήλη v, με τέσσερα στοιχεία, δίνεται από:

30 224 Παράρτημα u 1 u2 u3 u4 v v v v 1 2 uv = = u 1 v 1 + u 2 v 2 + u 3 v 3 + u 4 v Αν υ και w είναι και τα δύο διανύσματα στήλη, τότε το εσωτερικό γινόμενο τους υπολογίζεται μετατρέποντας το ένα διάνυσμα γραμμή σε διάνυσμα στήλη, έστω υ. Υποθέτοντας για λόγους ευκολίας ότι έχουμε δύο διανύσματα τεσσάρων στοιχείων, έχουμε w1 υ Τ w = w2 = υ 1 w 1 + υ 2 w 2 + υ 3 w 3 + υ 4 w 4. w 3 w4 Οι παρακάτω πράξεις υποστηρίζονται άμεσα από τον τελεστή * του MATLAB: >> u=[ ]; v=[1; 2; 3; 4]; >> u*v ans = 76 >> w=[1; 0; 1; -1] w = >> v'*w % προσέξτε τον τελεστή αναστροφής στο v ans = 0 Το εσωτερικό γινόμενο μπορεί, επίσης, να υπολογιστεί με την ενσωματωμένη συνάρτηση dot, η οποία δέχεται σαν ορίσματα δύο διανύσματα με τον ίδιο αριθμό στοιχείων. Σε αντίθεση με την χρήση του τελεστή *, η χρήση της συνάρτησης dot γίνεται ανεξάρτητα από το είδος των διανυσμάτων, αν είναι δηλαδή και τα δύο διανύσματα, διανύσματα γραμμή ή διανύσματα στήλη:

31 Παράρτημα 225 >> dot(u,v) ans = 76 >> dot(v,w) ans = 0 Η συνάρτηση dot είναι κατά κάποιο τρόπο λιγότερο αποτελεσματική από τον τελεστή (*) γιατί εκτελεί κάποιους επιπλέον ελέγχους συμβατότητας και επανασχηματισμού. Διανυσματικοποίηση και Τελεστές Πινάκων Όλες οι ενσωματωμένες συναρτήσεις στο MATLAB είναι «διανυσματικοποιημένες», πράγμα που σημαίνει ότι, δοθέντος ενός διανύσματος ως εσωτερικού ορίσματος, η πράξη που σημειώνεται με το όνομα της συγκεκριμένης συνάρτησης εφαρμόζεται σε όλα τα στοιχεία του διανύσματος. Η διανυσματικοποίηση έχει ως αποτέλεσμα οι πράξεις να εκτελούνται με μια συνοπτική σύνταξη. Ωστόσο, περισσότερο σημαντικό είναι το κέρδος από την απόδοση των υπολογισμών, όποτε χρησιμοποιούνται διανυσματικοποιημένες πράξεις αντί για βρόχους 3 (αλληλουχία επαναλαμβανόμενων εντολών) που διαπερνούν όλα τα στοιχεία ενός πίνακα ή διανύσματος. Θεωρείστε, για παράδειγμα, τη συνάρτηση cos: >> x = 0:pi/4:pi x = >> y = cos(x) y = Κατά τον υπολογισμό της παράστασης y = cos(x), ο διερμηνευτής του MATLAB διαπιστώνει ότι το x είναι διάνυσμα. Αυτό είναι ένα ιδιαίτερα χρήσιμο χαρακτηριστικό που έχει ως αποτέλεσμα κομψές παραστάσεις του MATLAB. Παρατηρήστε τι θα έπρεπε να εκτελεστεί στη Fortran προκειμένου να γίνουν οι προηγούμενοι υπολογισμοί: real x(5), y(5) pi = dx = pi/4.0 3 Οι βρόχοι περιγράφονται στις παραγράφους και

32 226 Παράρτημα do 10 i = 1,5 x(i) = (i-1)*dx y(i) = cos(x(i)) 10 continue Προς υποστήριξη της διανυσματικοποίησης, το MATLAB ορίζει νέα αριθμητικά σύμβολα που ονομάζονται array operators, που εκτελούν πράξεις στοιχείο με στοιχείο σε ένα ζεύγος πινάκων (ή διανυσμάτων) με ίσο αριθμό γραμμών και στηλών. Το αποτέλεσμα μιας πράξης στοιχείο με στοιχείο ανάμεσα σε δυο πίνακες, είναι ένας άλλος πίνακας της αυτής μορφής. Στη Γραμμική Άλγεβρα δεν υπάρχει άμεσα ισοδύναμο σε κάποιες από τις πράξεις αυτές. Οι πράξεις αυτές (στοιχείο με στοιχείο) θεωρούν τους πίνακες σαν δομές δεδομένων, όχι σαν μαθηματικές οντότητες. Τα σύμβολα των array operators είναι ο συνδυασμός μιας τελείας (.) και ενός συνήθους τελεστή από τους *, / και ^. Ο στοιχείο με στοιχείο πολλαπλασιασμός ε- κτελείται με τον τελεστή.* και η στοιχείο με στοιχείο διαίρεση εκτελείται με τον τελεστή./ : >> w = [1 2 3]; x = [4 5 6]; >> y = w.*x y = >> z = w./x z = Οι στοιχείο με στοιχείο πράξεις εφαρμόζονται σε πίνακες αλλά και σε διανύσματα: >> A = [1 2 3;4 5 6;7 8 9]; >> B = [9 8 7;6 5 4;3 2 1]; >> A.*B ans = Παρατηρήστε ότι το αποτέλεσμα Α.*Β δεν είναι το ίδιο με το Α*Β. Ο τελεστής στοιχείο με στοιχείο εκθετοποίησης,.^, υψώνει όλα τα στοιχεία ενός πίνακα σε μια δύναμη: >> A = [1 2 3;4 5 6;7 8 9];

33 Παράρτημα 227 >> A.^2 ans = >> A.^(1/2) ans = Η σύνταξη των array operators απαιτεί την με προσοχή σωστή τοποθέτηση ενός μικρού τυπογραφικού συμβόλου, μιας τελείας (.), σε ένα, μάλλον, σύνθετο τύπο. Αν και το MATLAB θα εντοπίσει τα συντακτικά λάθη, είναι πιθανό, να γίνουν υ- πολογιστικά σφάλματα με νόμιμες πράξεις. Για παράδειγμα, Α.^2 και Α^2 είναι και τα δυο νόμιμα, αλλά όχι ισοδύναμα. Στην Γραμμική Άλγεβρα, η πρόσθεση και η αφαίρεση πινάκων ή διανυσμάτων είναι στοιχείο με στοιχείο πράξεις. Για τον λόγο αυτό, δεν υπάρχουν ειδικοί τελεστές για την πρόσθεση και την αφαίρεση Μετασχηματισμός της Μορφής Πινάκων Μερικές φορές χρειάζεται αναδιοργάνωση των δεδομένων που είναι αποθηκευμένα σε έναν πίνακα χωρίς να μετασχηματισθούν μαθηματικά. Για παράδειγμα, για να κάνουμε έναν υπολογισμό πιο αποτελεσματικά, μπορεί να πρέπει να μετατρέψουμε έναν πίνακα σε διάνυσμα. Αν η οπτική εικόνα του πίνακα είναι ένα ορθογώνιο, τότε η μετατροπή πίνακα σε διάνυσμα περιλαμβάνει αλλαγή του σχήματος του πίνακα από ένα κανονικό ορθογώνιο σχήμα σε ένα στενόμακρο ορθογώνιο σχήμα. Για την εκτέλεση της πράξης αυτής χρησιμοποιείται η συνάρτηση reshape. Σε άλλες περιπτώσεις, είναι πιο κατάλληλο να χρησιμοποιείται ένα τέχνασμα με το συμβολισμό της ανω κάτω τελείας (:). Η συνάρτηση reshape έχει τρία εισερχόμενα ορίσματα: ΕξόδουΠίνακας= reshape(εισόδουπίνακας,νέεςγραμμές,νέεςστήλες) όπου εισόδουπίνακας είναι ο πίνακας που θα επανασχηματιστεί και νέεςγραμμές, νέεςστήλες είναι ο αριθμός γραμμών και στηλών, αντιστοίχως, του εξόδουπίνακας που δημιουργούνται από τα στοιχεία του

34 228 Παράρτημα εισόδουπίνακας. Δεν επιτρέπεται μια μερικώς συμπληρωμένη τελευταία στήλη. Οι επόμενες εντολές παρουσιάζουν την reshape συνάρτηση: >> A = [1 5 9; ; ; ] A = >> B = reshape(a,2,6) B = >> s = reshape(a,1,12) s = Τα στοιχεία του πίνακα Α είναι επιλεγμένα για να επισημάνουν πώς η reshape συνάρτηση αναδιοργανώνει τον εισόδουπίνακας κατά στήλες. Επειδή ένα διάνυσμα γραμμή ή στήλη είναι πίνακας, η reshape συνάρτηση μπορεί να χρησιμοποιηθεί για τη δημιουργία πινάκων ορθογώνιου σχήματος, από διανύσματα: >> t = 1:6; >> C = reshape(t,2,3) C = Είναι επίσης πιθανό να αλλάξει το σχήμα ενός πίνακα επί τόπου (δηλ., χωρίς την αντιγραφή του σε άλλο πίνακα): >> D = [1 2 3; 1 2 3; 1 2 3] D = >> D = reshape(d,1,9)

35 Παράρτημα 229 D = Ο τελεστής (:) μπορεί να χρησιμοποιηθεί στον επανασχηματισμό ενός πίνακα σε διάνυσμα στήλη. Η εντολή έχει την μάλλον ασυνήθιστη σύνταξη στήληδιάνυσμα = πίνακας(:) όπου το αποτέλεσμα είναι πάντα ένα διάνυσμα γραμμή και ο πίνακας που βρίσκεται στα δεξιά μπορεί να έχει οποιονδήποτε αριθμό γραμμών ή στηλών: >> E = [1 4; 2 5; 3 6] E = >> v = E(:) v = Δεν είναι και περιοριστικό το ότι η χρήση του συμβόλου (:) έχει σαν αποτέλεσμα διάνυσμα στήλη. Αν απαιτείται ένα διάνυσμα γραμμή, απλώς, προσθέστε τον τελεστή αναστροφής: >> E = [1 4; 2 5; 3 6]; >> w = E(:)' w = Όπως με την reshape, η μέθοδος με την χρήση του συμβόλου (:) μπορεί να ε- φαρμοστεί άμεσα σε ένα διάνυσμα: >> y = 1:5; >> y = y(:) y = 1 2

36 230 Παράρτημα Ο επανασχηματισμός με τη χρήση του συμβόλου (:) είναι ιδιαίτερα χρήσιμος όταν το εισερχόμενο όρισμα μιας διαδικασίας πρέπει να είναι ένα διάνυσμα στήλη ή γραμμή. Ο τελεστής αναστροφής απλώς μετατρέπει ένα διάνυσμα γραμμή σε ένα διάνυσμα στήλη και αντιστρόφως. Σε αντίθεση, η πράξη με την (:), x(:), παράγει πάντα ένα διάνυσμα στήλη. Οι πράξεις επανασχηματισμού επωφελούνται των ενσωματωμένων δυνατοτήτων διανυσματικοποίησης του MATLAB. Ως αποτέλεσμα, οι πράξεις επανασχηματισμού είναι πολύ πιο αποδοτικές από την αλγοριθμικά ισοδύναμη διαδικασία αντιγραφής στοιχείων, ένα κάθε φορά, σε έναν πίνακα του επιθυμητού σχήματος. 1.3 Πρόσθετοι Τύποι Μεταβλητών Για την επίλυση των περισσότερων αριθμητικών προβλημάτων, οι μεταβλητές στο MATLAB θα παίρνουν είτε αριθμητικές είτε αλφαριθμητικές (string) τιμές. Τα αλφαριθμητικά χρησιμοποιούνται κυρίως σε ετικέτες διαγραμμάτων ή σε ονόματα συναρτήσεων ορισμένων από τον χρήστη. Οι αριθμητικές τιμές μπορεί να είναι είτε πραγματικές ή μιγαδικές. Σ αυτήν την ενότητα περιγράφονται ενσωματωμένα χαρακτηριστικά του MATLAB που υποστηρίζουν τη χρήση μιγαδικών αριθμών και αλφαριθμητικών. Επίσης, περιγράφεται μια ομάδα συναρτήσεων που για τον χειρισμό πολυωνύμων. Στο MATLAB οι μεταβλητές που ορίζονται από τον χρήστη είναι αντικείμενα που περιλαμβάνουν αρκετά ξεχωριστά κομμάτια δεδομένων. Τμήμα του αντικειμένου περιλαμβάνει αλφαριθμητικά ή αριθμητικά δεδομένα που νοούνται ως αποθηκευμένα στην μεταβλητή. Ένα άλλο τμήμα κρατάει το μέγεθος του αντικειμένου (δηλ. το πλήθος των γραμμών και στηλών του πίνακα). Επιπροσθέτως, κάθε αντικείμενο περιλαμβάνει μια λίστα χαρακτηριστικών (attributes)που χρησιμοποιούνται εσωτερικά από το MATLAB. Ένα τέτοιο χαρακτηριστικό είναι μια σημαία ή δείκτης (flag) που δείχνει αν στο αντικείμενο είναι αποθηκευμένοι φανταστικά δεδομένα (φανταστικοί αριθμοί). Οι χρήστες δεν χρειάζεται να νοιάζονται για τα συγκαλυμμένα χαρακτηριστικά. αποτελούν μέρος του μηχανισμού στον οποίο οφείλεται η ευκολία του να δουλεύει κανείς με τις μεταβλητές του MATLAB.

37 Παράρτημα Μιγαδικοί Αριθμοί Η αριθμητική των μιγαδικών είναι ολοκληρωμένη πλήρως στο MATLAB. Όλες οι μεταβλητές μπορούν να θεωρούνται ότι είναι μιγαδικές και οι τελεστές +, -, * και /, εκτελούν αυτόματα τους κατάλληλους χειρισμούς με τα πραγματικά και φανταστικά μέρη των βαθμωτών και διανυσματικών μεταβλητών και των μεταβλητών πινάκων. Οι φανταστικές μονάδες i = j = 1 προαναθέτονται στις μεταβλητές i και j. Η χρήση των i και j σε πράξεις ανάθεσης επιτρέπουν την δημιουργία μεταβλητών με μιγαδικές τιμές κατά φυσικό και προφανή τρόπο: >> x = 1 + 2*i x = i >> y = 1 2*i y = i >> z = x*y z = 5 Στις παραπάνω εντολές, αντί του i μπορεί να χρησιμοποιηθεί το j. Ανεξάρτητα από το ποιο σύμβολο (i ή j) χρησιμοποιήθηκε για την αναπαράσταση του φανταστικής μονάδας στην είσοδο, το MATLAB πάντα χρησιμοποιεί το i για την εμφάνιση μιγαδικών τιμών: >> x = 1 + 2*j x = i ΠΙΝΑΚΑΣ 1.3 ΕΝΣΩΜΑΤΩΜΕΝΕΣ ΣΥΝΑΡΤΗΣΕΙΣ ΓΙΑ ΜΙΓΑΔΙΚΟΥΣ ΑΡΙΘ- ΜΟΥΣ. Συνάρτηση Λειτουργία abs Υπολογίζει το μέτρο ενός αριθμού (δηλ. abs(z) ισούται με sqrt(real(z)^2 + imag(z)^2) angle Όρισμα ενός μιγαδικού αριθμού conj Μιγαδικός συζυγής ενός αριθμού imag Εξάγει το φανταστικό μέρος ενός μιγαδικού αριθμού real Εξάγει το πραγματικό μέρος ενός μιγαδικού αριθμού

38 232 Παράρτημα Στην ανάθεση μιγαδικών τιμών, σταθερά βαθμωτά πολλαπλάσια του i ή του j μπορούν να δείχνονται με ή χωρίς τον τελεστή (*). Με άλλα λόγια οι >> x = 1 + 2*i και >> x = 1 + 2i είναι ισοδύναμες. Η παράληψη του * επιτρέπεται στην περίπτωση που οι φανταστικές μονάδες βρίσκονται στο τέλος μιας υποπαράστασης. Δηλαδή, η ανάθεση x = 1 + i2 δεν είναι επιτρεπτή. Η συντομογραφία δεν δουλεύει με τις μεταβλητές επειδή ο συμβολισμός είναι διφορούμενος: >> w = 2; >> x = 1 + wi??? Undefined function or variable 'wi'. Σημειώστε ότι i και j είναι απλά μεταβλητές του MATLAB στις οποίες έχει προανατεθεί η τιμή 1. Αν ξαναανατεθεί οποιαδήποτε από τις δύο μεταβλητές, τότε το αποτέλεσμα των παραπάνω εντολών θα είναι διαφορετικό. Θεωρείστε τον επόμενο υπολογισμό: >> i = 5; t = 8; u =sqrt(t-i) u = Η ανάθεση i = 5 αντικαθιστά οποιαδήποτε προηγούμενη τιμή που είναι αποθηκευμένη στην μεταβλητή με όνομα i, έτσι ώστε η t-i έχει σαν αποτέλεσμα την τιμή 3 και όχι 8 1. Το ενδεχόμενο σύγχυσης αποφεύγεται εύκολα ακολουθώντας τον ακόλουθο κανόνα: Κατά τη χρήση μιγαδικών α- ριθμών κρατήστε είτε το i ή το j για την τιμή της 1. Σε άλλες γλώσσες προγραμματισμού τα σύμβολα i και j χρησιμοποιούνται συχνά σαν δείκτες πινάκων. Αυτό είναι επιτρεπτό στο MATLAB αλλά απαιτείται ο προηγούμενος επαναπροσδιορισμός του i ή j: >> A = [1 2; 3 4]; >> i = 2;

39 Παράρτημα 233 >> A(i,i) = 1 A = Μιγαδικοί αριθμοί μπορούν να χρησιμοποιηθούν σε οποιονδήποτε υπολογισμό, αρκεί η ύπαρξη ενός φανταστικού μέρους να έχει νόημα. Ο Πίνακας 1.3 περιέχει τις ενσωματωμένες συναρτήσεις που είναι χρήσιμες στον χειρισμό των μιγαδικών αριθμών. φανταστικοί iy ζ z = ζe iθ θ Σχήμα 1.1 Συμβολισμός του Euler για μιγαδικούς αριθμούς. x πραγματικοί Η συνάρτηση exp υποστηρίζει τη χρήση μιγαδικών αριθμών κατά τον συμβολισμό του Euler: z =ζe iθ, όπου ζ είναι το μέτρο και θ είναι η γωνία στην αναπαράσταση του z με πολικές συντεταγμένες. Το Σχήμα 1.3 δείχνει έναν μιγαδικό αριθμό κατά τον συμβολισμό του Euler και κατά τον συμβολισμό με καρτεσιανές συντεταγμένες στο μιγαδικό επίπεδο. Οι εντολές για την περιγραφή ενός μιγαδικού α- ριθμού με ζ = 5 και θ = n/3 είναι, για παράδειγμα, >> zeta = 5; theta = pi/3; z = zeta*exp(i*theta) z = i >> abs(z) ans = 5 >> angle(z)*180/pi ans =

40 234 Παράρτημα Φυσικά, θα μπορούσε να εισαχθεί ο z με καρτεσιανές συντεταγμένες αντί με συμβολισμό του Euler. Οι συναρτήσεις real, imag, conj, abs και angle απλοποιούν τη μετατροπή μεταξύ αυτών των αναπαραστάσεων. Οι πράξεις του πολλαπλασιασμού και της διαίρεσης μπορούν, αυτόματα, να χειριστούν τους συνδυασμούς των μιγαδικών και πραγματικών μερών: >> s = 3*exp(i*pi/3); t = 3*exp(i*2*pi/3); >> s-t ans = >> s+t ans = i >> s*t ans = i >> s/t ans = i Οι υπολογισμοί που ακολουθούν, περιλαμβάνουν πίνακες με μιγαδικά στοιχεία: >> A = [1 2; 3 4] + i*[1 2; 3 4] A = i i i i >> B = abs(a) B = >> C = A*A' C = >> D = A'*A D =

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

Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στη MATLAB ΔΙΔΑΣΚΩΝ: ΓΕΩΡΓΙΟΣ ΑΚΡΙΒΗΣ ΒΟΗΘΟΙ: ΔΗΜΗΤΡΙΑΔΗΣ ΣΩΚΡΑΤΗΣ, ΣΚΟΡΔΑ ΕΛΕΝΗ E-MAIL: SDIMITRIADIS@CS.UOI.GR, ESKORDA@CS.UOI.GR Τι είναι Matlab Είναι ένα περιβάλλον

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

Τυπικές χρήσεις της Matlab

Τυπικές χρήσεις της Matlab Matlab Μάθημα 1 Τι είναι η Matlab Ολοκληρωμένο Περιβάλλον Περιβάλλον ανάπτυξης Διερμηνευμένη γλώσσα Υψηλή επίδοση Ευρύτητα εφαρμογών Ευκολία διατύπωσης Cross platform (Wintel, Unix, Mac) Τυπικές χρήσεις

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

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

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ. Παράδειγμα #1. Πράξεις μεταξύ ακεραίων αριθμών ΥΠΟΛΟΓΙΣΤΕΣ Ι ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΠΡΑΞΕΙΣ Τύποι δεδομένων Οι παρακάτω τύποι δεδομένων υποστηρίζονται από τη γλώσσα προγραμματισμού Fortran: 1) Ακέραιοι αριθμοί (INTEGER). 2) Πραγματικοί αριθμοί απλής ακρίβειας

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

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

Εισαγωγή στη Matlab Βασικές Συναρτήσεις Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής με Εφαρμογές στη Βιοϊατρική Εργαστήριο Γραμμικής Άλγεβρας Εισαγωγή στη Matlab Βασικές Συναρτήσεις 2016-2017 Εισαγωγή στη Matlab Matlab

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

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

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

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

3 ο Εργαστήριο Μεταβλητές, Τελεστές

3 ο Εργαστήριο Μεταβλητές, Τελεστές 3 ο Εργαστήριο Μεταβλητές, Τελεστές Μια μεταβλητή έχει ένα όνομα και ουσιαστικά είναι ένας δείκτης σε μια συγκεκριμένη θέση στη μνήμη του υπολογιστή. Στη θέση μνήμης στην οποία δείχνει μια μεταβλητή αποθηκεύονται

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

Ο ΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ MATLAB

Ο ΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ MATLAB Ο ΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ MATLAB (το παρόν αποτελεί τροποποιηµένη έκδοση του οµόνυµου εγχειριδίου του κ. Ν. Μαργαρη) 1 ΠΡΑΓΜΑΤΙΚΟΙ ΑΡΙΘΜΟΙ 1.1 ΠΡΑΞΕΙΣ ΜΕ ΠΡΑΓΜΑΤΙΚΟΥΣ ΑΡΙΘΜΟΥΣ 1.1.1 ΠΡΟΣΘΕΣΗ» 3+5 8 % Το σύµβολο

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

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

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

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

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

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

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

Εισαγωγή στο GNU Octave/MATLAB

Εισαγωγή στο GNU Octave/MATLAB Εισαγωγή στο GNU Octave/MATLAB Δρ. Βασίλειος Δαλάκας Καλώς ήρθατε στο εργαστήριο Σημάτων και Συστημάτων με το λογισμικό Octave (Οκτάβα). Οι σημειώσεις αυτές έχουν βασιστεί στις σημειώσεις του εργαστηρίου

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

Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων

Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Γρήγορες προσθέσεις αριθμών Γρήγορες συγκρίσεις αριθμών Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων Σχετικά γρήγορη μετάδοση και πρόσληψη

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

Εργαστήρια Αριθμητικής Ανάλυσης Ι. 4 ο Εργαστήριο. Διανύσματα-Πίνακες 1 ο Μέρος

Εργαστήρια Αριθμητικής Ανάλυσης Ι. 4 ο Εργαστήριο. Διανύσματα-Πίνακες 1 ο Μέρος Εργαστήρια Αριθμητικής Ανάλυσης Ι 4 ο Εργαστήριο Διανύσματα-Πίνακες 1 ο Μέρος 2017 Εισαγωγή Όπως έχουμε προαναφέρει σε προηγούμενα εργαστήρια. Ο βασικός τύπος δεδομένων στο Matlab είναι οι πίνακες. Ένα

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

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

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

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

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

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

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται

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

1. ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB... 13

1. ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB... 13 ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ 1. ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB... 13 1.1. Τι είναι το Matlab... 13 1.2. Περιβάλλον εργασίας... 14 1.3. Δουλεύοντας με το Matlab... 16 1.3.1. Απλές αριθμητικές πράξεις... 16 1.3.2. Σχόλια...

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

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ,

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ, Εισαγωγή στο MATLAB Κολοβού Αθανασία, ΕΔΙΠ, akolovou@di.uoa.gr Εγκατάσταση του Matlab Διανέμεται ελεύθερα στα μέλη του ΕΚΠΑ το λογισμικό MATLAB με 75 ταυτόχρονες (concurrent) άδειες χρήσης. Μπορείτε να

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

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

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

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

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

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ 1 Τύποι δεδομένων Η γλώσσα προγραμματισμού C++ υποστηρίζει τους παρακάτω τύπους δεδομένων: 1) Ακέραιοι αριθμοί (int). 2) Πραγματικοί αριθμοί διπλής ακρίβειας

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

Πρόβλημα 29 / σελίδα 28

Πρόβλημα 29 / σελίδα 28 Πρόβλημα 29 / σελίδα 28 Πρόβλημα 30 / σελίδα 28 Αντιμετάθεση / σελίδα 10 Να γράψετε αλγόριθμο, οποίος θα διαβάζει τα περιεχόμενα δύο μεταβλητών Α και Β, στη συνέχεια να αντιμεταθέτει τα περιεχόμενά τους

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

1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή

1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΗΠΕΙΡΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. Εργαστήριο Επεξεργασία Εικόνας & Βίντεο 1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή Νικόλαος Γιαννακέας Άρτα 2018 1 Εισαγωγή Το Matlab

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

Εισαγωγή στο Περιβάλλον Επιστημονικού Προγραμματισμού MATLAB-Simulink. Δημήτριος Τζεράνης Λεωνίδας Αλεξόπουλος

Εισαγωγή στο Περιβάλλον Επιστημονικού Προγραμματισμού MATLAB-Simulink. Δημήτριος Τζεράνης Λεωνίδας Αλεξόπουλος Εισαγωγή στο Περιβάλλον Επιστημονικού Προγραμματισμού MATLAB-Simulink Δημήτριος Τζεράνης Λεωνίδας Αλεξόπουλος 1 Τι είναι τα Matlab και Simulink? Το Matlab (MATrix LABoratory) είναι ένα περιβάλλον επιστημονικού

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

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

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Δυνατότητα ανάπτυξης, μεταγλώττισης και εκτέλεσης προγραμμάτων στη PASCAL. Κατανόηση της σύνταξης των προτάσεων της PASCAL. Κατανόηση της εντολής εξόδου για

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

Έναρξη Τερματισμός του MatLab

Έναρξη Τερματισμός του MatLab Σύντομος Οδηγός MATLAB Β. Χ. Μούσας 1/6 Έναρξη Τερματισμός του MatLab Η έναρξη της λειτουργίας του MatLab εξαρτάται από το λειτουργικό σύστημα. Στα συστήματα UNIX πληκτρολογούμε στη προτροπή του συστήματος

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

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση)

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση) TETY Εφαρμοσμένα Μαθηματικά Ενότητα ΙΙ: Γραμμική Άλγεβρα Ύλη: Διανυσματικοί χώροι και διανύσματα, μετασχηματισμοί διανυσμάτων, τελεστές και πίνακες, ιδιοδιανύσματα και ιδιοτιμές πινάκων, επίλυση γραμμικών

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

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

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

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟ MATHLAB Α ΜΕΡΟΣ

ΕΙΣΑΓΩΓΗ ΣΤΟ MATHLAB Α ΜΕΡΟΣ ΕΙΣΑΓΩΓΗ ΣΤΟ MATHLAB Α ΜΕΡΟΣ ΕΙΣΑΓΩΓΗ ΠΙΝΑΚΩΝ ΣΤΟ MATHLAB Αν θέλουμε να εισάγουμε έναν πίνακα στο mathlab και να προβληθεί στην οθόνη βάζουμε τις τιμές του σε άγκιστρα χωρίζοντάς τις με κόμματα ή κενό

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

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

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

ΑΕΝ / ΑΣΠΡΟΠΥΡΓΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΑΥΤΟΜΑΤΙΣΜΟΥ. Σημειώσεις για τη χρήση του MATLAB στα Συστήματα Αυτομάτου Ελέγχου

ΑΕΝ / ΑΣΠΡΟΠΥΡΓΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΑΥΤΟΜΑΤΙΣΜΟΥ. Σημειώσεις για τη χρήση του MATLAB στα Συστήματα Αυτομάτου Ελέγχου ΑΕΝ / ΑΣΠΡΟΠΥΡΓΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΑΥΤΟΜΑΤΙΣΜΟΥ Σημειώσεις για τη χρήση του MATLAB στα Συστήματα Αυτομάτου Ελέγχου Κ. ΝΑΣΟΠΟΥΛΟΣ - Α. ΧΡΗΣΤΙ ΟΥ Κ. ΝΑΣΟΠΟΥΛΟΣ - Α. ΧΡΗΣΤΙ ΟΥ Οκτώβριος 011 MATLAB

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

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

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

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

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

1. Εισαγωγή στο Sage.

1. Εισαγωγή στο Sage. 1. Εισαγωγή στο Sage. 1.1 Το μαθηματικό λογισμικό Sage Το Sage (System for Algebra and Geometry Experimentation) είναι ένα ελεύθερο (δωρεάν) λογισμικό μαθηματικών ανοιχτού κώδικα που υποστηρίζει αριθμητικούς

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

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα

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

Πρώτη επαφή με το μαθηματικό πακέτο Mathematica

Πρώτη επαφή με το μαθηματικό πακέτο Mathematica Πρώτη επαφή με το μαθηματικό πακέτο Mathematica Με δύο λόγια, μπορούμε να πούμε ότι η Mathematica είναι ένα πρόγραμμα που το χρησιμοποιούμε για να κάνουμε αναλυτικούς και αριθμητικούς υπολογισμούς αλλά

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

Χρονικές σειρές 4 o μάθημα: ΠΙΝΑΚΕΣ ΚΑΙ ΔΙΑΝΥΣΜΑΤΑ

Χρονικές σειρές 4 o μάθημα: ΠΙΝΑΚΕΣ ΚΑΙ ΔΙΑΝΥΣΜΑΤΑ Χρονικές σειρές 4 o μάθημα: ΠΙΝΑΚΕΣ ΚΑΙ ΔΙΑΝΥΣΜΑΤΑ Εαρινό εξάμηνο 2018-2019 Τμήμα Μαθηματικών ΑΠΘ Διδάσκουσα: Αγγελική Παπάνα Μεταδιδακτορική Ερευνήτρια Πολυτεχνική σχολή, Α.Π.Θ. & Οικονομικό Τμήμα, Πανεπιστήμιο

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

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

Συναρτήσεις στη Visual Basic 6.0 Προγραμματισμός & Εφαρμογές Υπολογιστών Μάθημα 4ο Συναρτήσεις στη Visual Basic 6.0 Κ. Κωστοπούλου Σειρά εκτέλεσης των πράξεων Όταν ορίζετε μια ακολουθία αριθμητικών πράξεων είναι δυνατόν να προκύψει αμφισημία.

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

Μιγαδική ανάλυση Μέρος Α Πρόχειρες σημειώσεις 1. Μιγαδικοί αριθμοί. ΤΕΤΥ Εφαρμοσμένα Μαθηματικά Μιγαδική Ανάλυση Α 1

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

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

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr I ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ i e ΜΕΡΟΣ Ι ΟΡΙΣΜΟΣ - ΒΑΣΙΚΕΣ ΠΡΑΞΕΙΣ Α Ορισμός Ο ορισμός του συνόλου των Μιγαδικών αριθμών (C) βασίζεται στις εξής παραδοχές: Υπάρχει ένας αριθμός i για τον οποίο ισχύει i Το σύνολο

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

Συστήματα Αναμονής (Queuing Systems)

Συστήματα Αναμονής (Queuing Systems) ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ - ΕΜΠ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧ. ΥΠΟΛΟΓΙΣΤΩΝ Τομέας Επικοινωνιών, Ηλεκτρονικής & Συστημάτων Πληροφορικής Εργαστήριο Διαχείρισης & Βέλτιστου Σχεδιασμού Δικτύων Τηλεματικής

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

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

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

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

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

Pascal, απλοί τύποι, τελεστές και εκφράσεις Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το

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

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 7 η Πίνακες Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης Χριστοδούλου

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

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Εργαστήριο 3: 3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Η C++, όπως όλες οι γλώσσες προγραμματισμού, χρησιμοποιεί τελεστές για να εκτελέσει τις αριθμητικές και λογικές λειτουργίες.

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

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

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 4 η Τελεστές Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης

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

Περιεχόμενα. 1.1 Εισαγωγή Τυπογραφικές συμβάσεις Τι νέο υπάρχει στο MATLAB Τι περιέχει το βιβλίο...17

Περιεχόμενα. 1.1 Εισαγωγή Τυπογραφικές συμβάσεις Τι νέο υπάρχει στο MATLAB Τι περιέχει το βιβλίο...17 Περιεχόμενα Πρόλογος... 13 1 Ξεκίνημα... 15 1.1 Εισαγωγή...15 1.2 Τυπογραφικές συμβάσεις...16 1.3 Τι νέο υπάρχει στο MATLAB 7...16 1.4 Τι περιέχει το βιβλίο...17 2 Βασικά χαρακτηριστικά... 19 2.1 Απλές

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

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

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

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

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ Ενότητα 2 : Ζωγραφίζοντας με το ΒΥΟΒ -1- Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα α. Θέση και προσανατολισμός της μορφής Η θέση της κάθε μορφής στο σκηνικό προσδιορίζεται

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

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

Εισαγωγή στην Tcl. Τί είναι η Tcl; 1 Εισαγωγή στην Tcl Τί είναι η Tcl; Το αρκτικόλεξο Tcl προέρχεται από τις λέξεις «Tool Control Language». Η Tcl είναι μια γλώσσα προγραμματισμού για scripts γενικής χρήσεως, τα οποία επίσης μπορούν να

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

Συστήματα συντεταγμένων

Συστήματα συντεταγμένων Συστήματα συντεταγμένων Χρησιμοποιούνται για την περιγραφή της θέσης ενός σημείου στον χώρο. Κοινά συστήματα συντεταγμένων: Καρτεσιανό (x, y, z) Πολικό (r, θ) Καρτεσιανό σύστημα συντεταγμένων Οι άξονες

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

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

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ ) Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ. 147 159) Για τις γλώσσες προγραμματισμού πρέπει να έχουμε υπόψη ότι: Κάθε γλώσσα προγραμματισμού σχεδιάζεται για συγκεκριμένο σκοπό, δίνοντας ιδιαίτερη

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

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

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο

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

Εισαγωγή στο Matlab Μέρος Α. Κυριακίδης Ιωάννης 2011

Εισαγωγή στο Matlab Μέρος Α. Κυριακίδης Ιωάννης 2011 Εισαγωγή στο Matlab Μέρος Α Κυριακίδης Ιωάννης 2011 Εισαγωγή στο Matlab Το όνομα του προέρχεται από τα αρχικά γράμματα των λέξεων MATtrix LABoratory (εργαστήριο πινάκων). To MATLAB (MathWorks Inc.) παρέχει

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

ΣΥΝΑΡΤΗΣΕΙΣ. Η σύνταξη μιας συνάρτησης σ ένα κελί έχει την γενική μορφή: =όνομα_συνάρτησης(όρισμα1; όρισμα2;.)

ΣΥΝΑΡΤΗΣΕΙΣ. Η σύνταξη μιας συνάρτησης σ ένα κελί έχει την γενική μορφή: =όνομα_συνάρτησης(όρισμα1; όρισμα2;.) ΣΥΝΑΡΤΗΣΕΙΣ Συνάρτηση είναι ένας έτοιμος τύπος ο οποίος δέχεται σαν είσοδο τιμές ή συνθήκες και επιστρέφει ένα αποτέλεσμα, το οποίο μπορεί να είναι μια τιμή αριθμητική, αλφαριθμητική, λογική, ημερομηνίας

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

1 Πίνακες 1.1 Συνοπτική θεωρία

1 Πίνακες 1.1 Συνοπτική θεωρία 1 Πίνακες Σε αυτήν την ενότητα θα εξοικειωθείτε με την έννοια των πινάκων στον προγραμματισμό (χωρίς τον ιδιαίτερο τρόπο χειρισμού των πινάκων στο MATLAB), και συγκεκριμένα θα δείτε: πώς ορίζεται ένας

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

Εντολές της LOGO (MicroWorlds Pro)

Εντολές της LOGO (MicroWorlds Pro) Εντολές της LOGO (MicroWorlds Pro) Εντολές εμφάνισης (εξόδου) και αριθμητικές πράξεις δείξε Εμφανίζει στην οθόνη έναν αριθμό, το αποτέλεσμα πράξεων, μια λέξη ή μια λίστα (ομάδα) λέξεων. δείξε 200 200 δείξε

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

Πίνακες >>A = [ 1,6; 7, 11]; Ή τον πίνακα >> B = [2,0,1; 1,7,4; 3,0,1]; Πράξεις πινάκων

Πίνακες >>A = [ 1,6; 7, 11]; Ή τον πίνακα >> B = [2,0,1; 1,7,4; 3,0,1]; Πράξεις πινάκων Πίνακες Ένας πίνακας είναι μια δισδιάστατη λίστα από αριθμούς. Για να δημιουργήσουμε ένα πίνακα στο Matlab εισάγουμε κάθε γραμμή σαν μια ακολουθία αριθμών που ξεχωρίζουν με κόμμα (,) ή κενό (space) και

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

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

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

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

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 07-08 Πεπερασμένες και Διαιρεμένες Διαφορές Εισαγωγή Θα εισάγουμε την έννοια των διαφορών με ένα

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

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με:

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με: Αλγόριθμοι 2.2.1. Ορισμός: Αλγόριθμος είναι μια πεπερασμένη σειρά εντολών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Τα κυριότερα χρησιμοποιούμενα

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

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

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

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

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

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

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

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

επιµέλεια Θοδωρής Πιερράτος Βασικές έννοιες προγραµµατισµού Η ύλη που αναπτύσσεται σε αυτό το κεφάλαιο είναι συναφής µε την ύλη που αναπτύσσεται στο 2 ο κεφάλαιο. Όπου υπάρχουν διαφορές αναφέρονται ρητά. Προσέξτε ιδιαίτερα, πάντως,

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

Εισαγωγή στη Matlab Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής

Εισαγωγή στη Matlab Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής Εισαγωγή στη Matlab Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής email: dzavanti@cs.uoi.gr Περιεχόμενα Τι είναι η Matlab; Ιστορικά Χρήσεις και στοιχεία της Matlab

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

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα. i Π Ρ Ο Λ Ο Γ Ο Σ Το βιβλίο αυτό αποτελεί μια εισαγωγή στα βασικά προβλήματα των αριθμητικών μεθόδων της υπολογιστικής γραμμικής άλγεβρας (computational linear algebra) και της αριθμητικής ανάλυσης (numerical

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

Πληροφορική. Ενότητα 1: Α. Οργάνωση μαθήματος. Β. Στοιχεία Προγραμματισμού -Προγραμματιστικές Δομές, Πρόγραμμα, Γλώσσες.

Πληροφορική. Ενότητα 1: Α. Οργάνωση μαθήματος. Β. Στοιχεία Προγραμματισμού -Προγραμματιστικές Δομές, Πρόγραμμα, Γλώσσες. ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Πληροφορική Ενότητα 1: Α. Οργάνωση μαθήματος. Β. Στοιχεία Προγραμματισμού -Προγραμματιστικές Δομές, Πρόγραμμα, Γλώσσες. Κωνσταντίνος Καρατζάς

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

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

Εργαστήρια Αριθμητικής Ανάλυσης Ι. 1 ο Εργαστήριο. Εισαγωγή στο Matlab Εργαστήρια Αριθμητικής Ανάλυσης Ι 1 ο Εργαστήριο Εισαγωγή στο Matlab 2017 Εισαγωγή Στα εργαστήρια θα ασχοληθούμε με την υλοποίηση των αριθμητικών μεθόδων που βλέπουμε στο θεωρητικό μέρος του μαθήματος,

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

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

Εισαγωγή στους Υπολογιστές Εισαγωγή στους Υπολογιστές Ενότητα #4: Πίνακες στο MATLAB Καθ. Δημήτρης Ματαράς Πολυτεχνική Σχολή Τμήμα Χημικών Μηχανικών Πίνακες στο MATLAB MATLAB Fundamentals Α. Καλαμπούνιας Επισκόπιση: Scalars και

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

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

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ Κεφαλαία και μικρά γράμματα ελληνικού αλφαβήτου: Α Ω και α ω Κεφαλαία και μικρά γράμματα λατινικού αλφαβήτου: A Z και a z Αριθμητικά ψηφία: 0 9 Ειδικοί χαρακτήρες: + - * / =. ( ),! & κενός

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

Μαθηματικά Γ Γυμνασίου

Μαθηματικά Γ Γυμνασίου Α λ γ ε β ρ ι κ έ ς π α ρ α σ τ ά σ ε ι ς 1.1 Πράξεις με πραγματικούς αριθμούς (επαναλήψεις συμπληρώσεις) A. Οι πραγματικοί αριθμοί και οι πράξεις τους Διδακτικοί στόχοι Θυμάμαι ποιοι αριθμοί λέγονται

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

Μαθηµατικοί Υπολογισµοί στην R

Μαθηµατικοί Υπολογισµοί στην R Κεφάλαιο 3 Μαθηµατικοί Υπολογισµοί στην R Ενα µεγάλο µέρος της ανάλυσης δεδοµένων απαιτεί διάφορους µαθηµατικούς υπολογισµούς. Αυτό το κεφάλαιο εισαγάγει τον αναγνώστη στις διάφορες δυνατότητες που έχει

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

8 FORTRAN 77/90/95/2003

8 FORTRAN 77/90/95/2003 ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 1: Εισαγωγή... 17 1.1. Ανασκόπηση της ιστορίας των υπολογιστών... 18 1.2. Πληροφορία και δεδομένα... 24 1.3. Ο Υπολογιστής... 26 1.4. Δομή και λειτουργία του υπολογιστή... 28 1.5.

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

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ 9.1 Εντολές Εισόδου/εξόδου Στην Pascal, 1. Tα δεδομένα των προγραμμάτων λαμβάνονται: είτε από το πληκτρολόγιο είτε από ένα αρχείο με τη χρήση των διαδικασιών read και readln,

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

MATLAB Desktop (Επιφάνεια Εργασίας MATLAB) [1.]

MATLAB Desktop (Επιφάνεια Εργασίας MATLAB) [1.] Εισαγωγή στο MATLAB Το MATLAB αποτελεί ένα εμπορικό εργαλείο το οποίο προσφέρει ένα διαδραστικό προγραμματιστικό περιβάλλον στον χρήστη και χρησιμοποιείται σε ένα μεγάλο εύρος εφαρμογών. Ενσωματώνει μια

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

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων 1 Είσοδος/Έξοδος Είσοδος/Έξοδος ανάλογα με τον τύπο του προγράμματος Πρόγραμμα

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

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

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

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

Κεφάλαιο 2. Διανύσματα και Συστήματα Συντεταγμένων

Κεφάλαιο 2. Διανύσματα και Συστήματα Συντεταγμένων Κεφάλαιο 2 Διανύσματα και Συστήματα Συντεταγμένων Διανύσματα Διανυσματικά μεγέθη Φυσικά μεγέθη που έχουν τόσο αριθμητικές ιδιότητες όσο και ιδιότητες κατεύθυνσης. Σε αυτό το κεφάλαιο, θα ασχοληθούμε με

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

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

Εισαγωγή στο Πρόγραμμα Maxima Εισαγωγή στο Πρόγραμμα Maxima Το Maxima είναι ένα πρόγραμμα για την εκτέλεση μαθηματικών υπολογισμών, συμβολικών μαθηματικών χειρισμών, αριθμητικών υπολογισμών και γραφικών παραστάσεων. Το Maxima λειτουργεί

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

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

Εισαγωγή στους Υπολογιστές Εισαγωγή στους Υπολογιστές Ενότητα #2: Αναπαράσταση δεδομένων Αβεβαιότητα και Ακρίβεια Καθ. Δημήτρης Ματαράς Πολυτεχνική Σχολή Τμήμα Χημικών Μηχανικών Αναπαράσταση δεδομένων (Data Representation), Αβεβαιότητα

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

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

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

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

Στοιχειώδης προγραμματισμός σε C++

Στοιχειώδης προγραμματισμός σε C++ Στοιχειώδης προγραμματισμός σε C++ Σύντομο Ιστορικό. Το πρόγραμμα Hello World. Ο τελεστής εξόδου. Μεταβλητές και δηλώσεις τους. Αντικείμενα, μεταβλητές, σταθερές. Ο τελεστής εισόδου. Θεμελιώδεις τύποι.

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

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος 2012-13 Κων/νος Φλώρος Απλοί τύποι δεδομένων Οι τύποι δεδομένων προσδιορίζουν τον τρόπο παράστασης των

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

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι Εισαγωγή Στον Προγραµµατισµό «C» Πίνακες Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Πίνακες στη C Ένας πίνακας στη C είναι

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

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Οι εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙI: Οι εντολές ελέγχου της ροής ενός προγράμματος 31 Εντολές ελέγχου της ροής Στο παρόν κεφάλαιο ασχολούμαστε με την σύνταξη των εντολών της C οι οποίες εισάγουν λογική και ελέγχουν την ροή εκτέλεσης

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

ΕΠΑΝΑΛΗΠΤΙΚΗ ΕΞΕΤΑΣΗ (14/9/2012)

ΕΠΑΝΑΛΗΠΤΙΚΗ ΕΞΕΤΑΣΗ (14/9/2012) Φτιάξε ένα πρόγραµµα FORTRAN που θα βρίσκει αν ο ακέραιος N που θα εισάγει ο χρήστης είναι άρτιος ή περιττός. Φτιάξε ένα πρόγραµµα FORTRAN που να προσδιορίζει και να τυπώνει την θέση των στοιχείων ενός

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 5 ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 5 Σημειώσεις βασισμένες στο βιβλίο Το MATLAB στην Υπολογιστική Επιστήμη και Τεχνολογία Μια Εισαγωγή Πίνακες (Arrays) [1/2] Δομές δεδομένων για την αποθήκευση δεδομένων υπό

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 2.4 Βασικές συνιστώσες/εντολές ενός αλγορίθμου 2.4.1 Δομή ακολουθίας ΚΕΦΑΛΑΙΟ 7 7.1 7.9 Σταθερές (constants): Προκαθορισμένες τιμές που παραμένουν

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

ΘΕΩΡΙΑ Β ΓΥΜΝΑΣΙΟΥ. Μια παράσταση που περιέχει πράξεις με μεταβλητές (γράμματα) και αριθμούς καλείται αλγεβρική, όπως για παράδειγμα η : 2x+3y-8

ΘΕΩΡΙΑ Β ΓΥΜΝΑΣΙΟΥ. Μια παράσταση που περιέχει πράξεις με μεταβλητές (γράμματα) και αριθμούς καλείται αλγεβρική, όπως για παράδειγμα η : 2x+3y-8 ΘΕΩΡΙΑ Β ΓΥΜΝΑΣΙΟΥ Άλγεβρα 1 ο Κεφάλαιο 1. Τι ονομάζουμε αριθμητική και τι αλγεβρική παράσταση; Να δώσετε από ένα παράδειγμα. Μια παράσταση που περιέχει πράξεις με αριθμούς, καλείται αριθμητική παράσταση,

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

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

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

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

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός

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

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

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

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

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

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

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

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

Εργαστήριο 9 Συναρτήσεις στη PASCAL. Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός Εργαστήριο 9 Συναρτήσεις στη PASCAL Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός 7.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Η έννοια της συνάρτησης ως υποπρογράμματος είναι τόσο βασική σε όλες τις γλώσσες προγραμματισμού,

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

5 &6. Τύποι δεδομένων, τελεστές και

5 &6. Τύποι δεδομένων, τελεστές και Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 5 &6. Τύποι δεδομένων, τελεστές και αριθμητικές εκφράσεις Ιωάννης Κατάκης Σήμερα o Τύποι δεδομένων int, char, float, double o Τελεστές = + - * / % o Αριθμητικές

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

4 η ΕΝΟΤΗΤΑ Μητρώα και συνθήκες στο MATLAB

4 η ΕΝΟΤΗΤΑ Μητρώα και συνθήκες στο MATLAB ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ΕΠΙΛΥΣΗΣ ΜΕ Η/Υ 4 η ΕΝΟΤΗΤΑ Μητρώα και συνθήκες στο MATLAB Ν.Δ. Λαγαρός Μ. Φραγκιαδάκης Α. Στάμος Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες Χρήσης

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

Πρόσθεση, αφαίρεση και πολλαπλασιασμός φυσικών αριθμών

Πρόσθεση, αφαίρεση και πολλαπλασιασμός φυσικών αριθμών Πρόσθεση, αφαίρεση και πολλαπλασιασμός φυσικών αριθμών TINΑ ΒΡΕΝΤΖΟΥ www.ma8eno.gr www.ma8eno.gr Σελίδα 1 Πρόσθεση, αφαίρεση και πολλαπλασιασμός φυσικών αριθμών Στους πραγματικούς αριθμούς ορίστηκαν οι

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

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

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Εκφράσεις και Λίγες Εντολές Οι εκφράσεις της C Τελεστές Απλές και σύνθετες εντολές Εντολές ελέγχου (επιλογής) Εισαγωγή σε

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