FREEMAT Πίνακες και array.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Βασικές Έννοιες Προγραμματισμού
Advertisements

ΠΙΝΑΚΕΣ ΜΑΘΗΜΑ 6.
Βασικές Συναρτήσεις Πινάκων
ΗΜΥ 100 Εισαγωγή στην Τεχνολογία 4 Νοεμβρίου 2008 Στυλιανή Πετρούδη ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ.
ΥΠΟΛΟΓΙΣΤΙΚΑ ΦΥΛΛΑ (EXCEL)
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Πίνακες-Αλφαριθμητικά
Εισαγωγή στους Η/Υ Πίνακες.
Πινακες (Arrays) Σημασια Συνταξη Αρχικοποιηση Προσβαση Παραμετροι
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Διάλεξη 2: Πίνακες και δυναμικά δεδομένα στη FORTRAN 90 Εαρινό εξάμηνο 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ.
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
Πίνακες και επεξεργασία τους
Προγραμματισμός Ι Πίνακες •Ο πίνακας είναι μία συλλογή μεταβλητών ίδιου τύπου, οι οποίες είναι αποθηκευμένες σε διαδοχικές θέσεις μνήμης. Χρησιμοποιείται.
Παράδειγμα 2: Κινηματογράφοι Να γραφεί πρόγραμμα το οποίο:
Εκκίνηση του MATLAB.
Μάθημα 2 Εισαγωγή στην Επιστήμη των Η/Υ ΙΙ
ΜΑΘ 3122 (106) Γλώσσα προγραμματισμού
Μάθημα : Βασικά Στοιχεία της Γλώσσας Java
ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΑΔΙΚΑΣΤΙΚΟ ΠΡΟΓΡΑΜMΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ – ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ.
HY100 : ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΟΝΤΕΣ Αντώνιος Σαββίδης, Χρήστος.
ΗΜΥ 100 Εισαγωγή στην Τεχνολογία
MATrix LABoratory Εισαγωγή στο MatLab
ΑΛΓΟΡΙΘΜΟΙ.
Εισαγωγή στο Excel Σχολή Αγρονόμων Τοπογράφων Μηχανικών
ΜΕΤΑΒΛΗΤΕΣ - ΤΥΠΟΙ ΜΑΘΗΜΑ 3.
1 Ολυμπιάδα Πληροφορικής Μάθημα 5. 2 Στόχοι μαθήματος Πίνακες 2 διαστάσεων.
Σχετικά με κλασματικές παραστάσεις
Ομάδα Α. Ο υπολογιστής ως επιστημονικό εργαλείο. Λίστες - Πίνακες In[1]:=lista1={a1, 2.1, x, Sqrt[2], I, Sin[x]} Out[1]:={a1, 2.1, x, 2, I, Sin[x]} Η.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
1 ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Πίνακας Συμβόλων Symbol Table.
Περιστροφή γύρω σημείο Ο κατά γωνία φ στο πεδίο Χ,Υ
Kεφάλαιο 4 ΑΛΓΟΡΙΘΜΟΙ-ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ (αναλυτική προσέγγιση)
Εισαγωγή στην Επιστήμη των Η/Υ ΙΙ Μάθημα 3 Αρχεία δεδομένων – Διαγράμματα.
ΜΑΘ3122/106 – Γλώσσα προγραμματισμούΞενοφών Ζαμπούλης ΜΑΘ3122/106 Γλώσσα προγραμματισμού Συναρτήσεις.
Υπερφόρτωση Τελεστών (Συνέχεια) Αντικειμενοστραφής Προγραμματισμός.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
Βασικά στοιχεία της Java
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος.
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
Πίνακες στην JAVA ΕΡΓΑΣΤΗΡΙΟ AΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Διαφάνειες: ΧΟΧΟΛΗΣ ΔΙΟΝΥΣΙΟΣ Προσαρμογή 2014: Κώστας Στάμος)
Προγραμματισμός Η/Υ Δουλεύοντας με πίνακες – Βασικές εντολές και ειδικός χειρισμός Τεχνολογικό Εκπαιδευτικό Ίδρυμα Λάρισας Σχολή Τεχνολογικών Εφαρμογών.
Ε ΙΣΑΓΩΓΉ Σ ΤΟΥΣ Μ ΟΝΟΔΙΑΣΤΑΤΟΥΣ Π ΊΝΑΚΕΣ Αστρινάκη Μαρία.
ΔΠΘ-ΤΜΗΜΑ ΜΠΔ: ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ Η/Υ 1 Εισαγωγή στη γλώσσα Προγραμματισμού C ΠΙΝΑΚΕΣ (arrays)
Διάστημα εμπιστοσύνης για τη διακύμανση. Υπολογισμός Διακυμάνσεως και Τυπικής Αποκλίσεως Όταν τα δεδομένα αφορούν πληθυσμό – μ είναι ο μέσος του πληθυσμού.
ΑΣΤΡΙΝΆΚΗ ΜΑΡΊΑ Δυσδιάστατοι πίνακες. Γιατί πολυδιάστατους πίνακες; Αναλόγως με τις ανάγκες του προγράμματος, μπορεί να είναι πιο εύχρηστοι Προβλήματα.
Πολυδιάστατοι Πίνακες στην JAVA ΕΡΓΑΣΤΗΡΙΟ AΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΧΟΧΟΛΗΣ ΔΙΟΝΥΣΙΟΣ.
ΣΗΜΑΤΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ II Καθ. Πέτρος Π. Γρουμπός Διάλεξη 8η Στοχαστικά Σήματα - 1.
Δημιουργοί ΝΑΤΣΙΟΥΛΗΣ ΓΕΩΡΓΙΟΣ ΠΑΠΑΣ ΑΘΑΝΑΣΙΟΣ ΤΟΣΙΟΣ ΧΡΗΣΤΟΣ
ΜΕΤΑΒΛΗΤΕΣ-ΣΤΑΘΕΡΕΣ -ΕΚΦΡΑΣΕΙΣ
FREEMAT.
FREEMAT Επεξεργασία εικόνας.
Δεδομένα, μεταβλητές, υπολογισμοί
Πίνακες και αλφαριθμητικά
Περιεχόμενα Εισαγωγή στο Matlab, Το περιβάλλον του Matlab, Μεταβλητές,
Βελτιστοποίηση εικόνας
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ Η εντολή if if ( παράσταση) εντολή επόμενη εντολή.
MATLAB A MATrix LABoratoty
β’ εξάμηνο – εργαστήριο
Μορφές κατανομών Αθανάσιος Βέρδης.
Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος
ΓΕΜΙΣΜΑ ΜΟΝΟΔΙΑΣΤΑΤΟΥ ΠΙΝΑΚΑ (Άσκηση 1)
Τελεστές και ή όχι Για την εκτέλεση αριθμητικών πράξεων
Εντολές και δομές αλγορίθμου
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Η ΣΥΝΑΡΤΗΣΗ ψ=αχ+β 2ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ Συντελεστής διεύθυνσης
Δυναμικός Κατακερματισμός
Μεταγράφημα παρουσίασης:

FREEMAT Πίνακες και array

Ορισμός και αρχικοποίηση Όπως έχουμε ήδη δει στο Freemat ακόμα και ένας αριθμός αποτελεί ένα μονοδιάστατο πίνακα [ ] (square brackets) χρησιμοποιείται για να αρχικοποιήσουμε ένα πίνακα ή ένα array. --> x=[4 5 2 1 6 0] x = 4 5 2 1 6 0 ένα άλλο παράδειγμα με 2 γραμμές είναι το παρακάτω. Χρησιμοποιούμε το σύμβολο (;) για το διαχωρισμό των γραμμών. --> x=[5 1 8 3 4 7 6;3 6 1 9 7 5 0] 5 1 8 3 4 7 6 3 6 1 9 7 5 0

Χρήση ( ) (parentheses) Χρησιμοποιούνται για να ορίσουμε ένα δείκτη του πίνακα --> x=[4 5 2 1 6 0] x = 4 5 2 1 6 0 --> x(2) ans = 5 Δεν μπορούμε να χρησιμοποιήσουμε ένα δείκτη απευθείας στον πίνακα: --> [7 1 8 5 2 3 9](3) Error: Unexpected input [7 1 8 5 2 3 9](3) ^

Ορισμός και αρχικοποίηση { } (curly braces) Τα άγκιστρα χρησιμοποιούνται για να αρχικοποιήσουμε ένα array,. Μπορούν να χρησιμοποιηθούν και στον δείκτη: --> y={'this is a test' [4 5 2 1 6 0] rand(4,4)} y = [this is a test] [1 6 double array] [4 4 double array] --> y{2} ans = 4 5 2 1 6 0 ; (semicolon) Μέσα σε κάθε array μπορούμε να ορίσουμε περισσότερες γραμμές --> y={'this is a test';[4 5 2 1 6 0];rand(4,4)} [this is a test] [1 6 double array] [4 4 double array]

Χρήση , (comma) ή κενό. Υπάρχουν 2 τρόποι για να ορίσουμε στήλες σε ένα array. Χωρίζοντας τα στοιχεία είτε με το κενό ή με κόμμα : (colon) Χρησιμοποιείται για να ορίσουμε ένα πεδίο τιμών --> x=1:50; --> y=cumsum(x); cumulative sum --> y(end) ans = 1275 Ή x=1:100; --> y=cumsum(x)(end) y = 5050 ή --> cumsum(1:100)(end)

Δημιουργώντας ένα ακολουθιακό array t=1:10; t=1:3:10; (1 εώς 10 με βήμα 3) Προσοχή στην εντολή linspace --> t=linspace(1,10,7) t = 1.0000 2.5000 4.0000 5.5000 7.0000 8.5000 10.0000 Τι ακριβώς κάνει;

Τυχαία array rand – δημιουργεί ένα τυχαίο αριθμό στο διάστημα 0 - 1. randbeta(alpha,beta) – δημιουργεί τυχαία μεταβλητή με με beta κατανομή. randi(low,high) – δημιουργεί ένα array τυχαίων ακεραίων μεταξύ των τιμών low και high randn – δημιουργεί ένα array τυχαίων αριθμών με την κατανομή Gauss --> x=rand(10000); --> size(x) ans = 10000 10000 ποια η διαφορά; --> x=rand(1,10000); 1 10000

Εντολή Hist --> x=rand(1,10000); --> y=hist(x) y = 1042 1020 1019 1001 977 1022 914 1005 1041 957 --> y=hist(x,10,1) 0.1042 0.1020 0.1019 0.1001 0.0977 0.1022 0.0914 0.1005 0.1041 0.0957 --> plot(y) --> ylim([0,0.2])

Οπτικοποίηση τιμών ενός πίνακα Για να δούμε τις τιμές κάθε στοιχείου ενός πινακα χρησιμοποιούμε την μορφή: x(d1,d2,...,dn) όπου x = το όνομα της μεταβλητής d1 = η πρώτη διάσταση d2 = η δεύτερη διάσταση dn = η ν-οστή διάσταση x=rand(3,3) x = 0.4421 0.9413 0.5842 0.3209 0.1061 0.7719 0.2505 0.3724 0.7086 x(1,2) ans = 0.9413 x(2,1) 0.3209

Οπτικοποίηση τιμών ενός πίνακα Για να δούμε όλες τις τιμές ενός πίνακα χρησιμοποιούμε την εντολή x(:,:) x=rand(3,3) x = 0.4421 0.9413 0.5842 0.3209 0.1061 0.7719 0.2505 0.3724 0.7086 x(:,1) ans = 0.4421 0.3209 0.2505 x(1,:)

Συνάρτηση plot Plot(x) : Κατακόρυφος άξονας οι τιμές του x και οριζόντιος άξονας αυθαίρετος Plot(x,y) : Κατακόρυφος άξονας οι τιμές του y και οριζόντιος άξονας οι τιμές του x

Άσκηση Δημιουργήστε τον πίνακα Pin = [2 3 1;4 5 8;7 8 9;12 14 8] Σχολιάστε τα αποτελέσματα των παρακάτω εντολών Pinsize=size(Pin) exp(20), cos(pi/3), tan(pi), atan(pi), sqrt(256) Apot = [ 2 2 3 3] +[1 1 2 2] + [10 10 11 11]+ [cos(0.3*pi) sin(pi/4) tan(pi/2) sqrt(9)]

Άθροισμα πινάκων x=rand(2,2) x = 0.3759 0.9134 0.0183 0.3580 y=rand(2,2) y = 0.7604 0.0990 0.8077 0.4972 x+y ans = 1.1363 1.0124 0.8260 0.8552

Άσκηση: πολλαπλασιασμός και διαίρεση πινάκων --> x=rand(3,5); --> y=rand(5,6); --> z=x*y; --> who Variable Name Type Flags Size x double [3 5] y double [5 6] z double [3 6] --> y ans = 0.9132 0.0756 0.6215 0.0204 0.3774 0.4662 0.2899 0.4398 0.1450 --> y/5 0.1826 0.0151 0.1243 0.0041 0.0755 0.0932 0.0580 0.0880 0.0290

Άσκηση: πολλαπλασιασμός πίνακα χ με τον αντίστροφο ενός πίνακα υ --> x=rand(3,3) x = 0.0603 0.4750 0.1794 0.5541 0.6298 0.6902 0.9326 0.4791 0.8172 --> y=rand(3,3) y = 0.3334 0.7200 0.3153 0.5322 0.0361 0.1913 0.2064 0.1283 0.9270 --> x/y ans = 0.6701 -0.3186 0.0313 0.7843 0.3961 0.3961 0.5233 1.2519 0.4452