Εισαγωγή στους Η/Υ Πίνακες.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Βασικές έννοιες αλγορίθμων
Advertisements

(READ – WRITE) ΚΑΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ (INTEGER,REAL,CHAR)
7.3.8 Μεταφραστές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα.
ΠΙΝΑΚΕΣ ΜΑΘΗΜΑ 6.
Στοιχειώδεις Δομές Δεδομένων TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Τύποι δεδομένων στη Java • Ακέραιοι.
Βασικές Συναρτήσεις Πινάκων
Δομές Διακλάδωσης Μην ελπίζεις ότι θα ξεφύγεις αν κάνεις κάποιο κακό. Γιατί κι αν ξεφύγεις απ’ τη προσοχή των άλλων, θα υποπέσεις στην αντίληψη της συνείδησής.
Προγραμματισμός PASCAL
Πίνακες.
-Στοίβα-Ουρά - Πλεονεκτήματα πινάκων -Δομές δεδομένων δευτερεύουσας μνήμης -Πληροφορική και δεδομένα -Παραδείγματα-Προβλήματα ψευδοκώδικα.
ΚΕΦΑΛΑΙΟ 3 Το υλικό των υπολογιστών.
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Πίνακες-Αλφαριθμητικά
Πινακες (Arrays) Σημασια Συνταξη Αρχικοποιηση Προσβαση Παραμετροι
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Διάλεξη 2: Πίνακες και δυναμικά δεδομένα στη FORTRAN 90 Εαρινό εξάμηνο 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ.
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
ΜΑΘ3122/106 Γλώσσα Προγραμματισμού
Προγραμματισμός Ι Πίνακες •Ο πίνακας είναι μία συλλογή μεταβλητών ίδιου τύπου, οι οποίες είναι αποθηκευμένες σε διαδοχικές θέσεις μνήμης. Χρησιμοποιείται.
ΘΕΩΡΙΑ ΔΙΑΛΕΞΗ 4 Αριθμητικές εκφράσεις και πράξεις Εντολές ανάθεσης
Μάθημα : Βασικά Στοιχεία της Γλώσσας Java
ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΑΔΙΚΑΣΤΙΚΟ ΠΡΟΓΡΑΜMΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ – ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Διάλεξη 4: Δείκτες, συναρτήσεις και διαδικασίες Εαρινό εξάμηνο 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ.
24/11/2003Message Passing Interface (MPI)1 Αθήνα, Νοέμβριος 2003 Συστήματα Παράλληλης Επεξεργασίας Εργαστήριο Υπολογιστικών Συστημάτων.
ΘΠ06 - Μεταγλωττιστές Πίνακας Συμβόλων, Σημασιολογικές Ενέργειες.
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
Δρ. Παναγιώτης Συμεωνίδης
Παράδειγμα 5: Θερμοκρασίες
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Διάλεξη 3: Δείκτες Εαρινό εξάμηνο 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ι. Σαρρής, τηλ.
Γενική μορφή προγράμματος Pascal
Προγραμματισμός στο ΜatLab
Κ. Μόδη: Γεωστατιστική και Εφαρμογές της (Κεφάλαιο 5) 1 Τυχαία συνάρτηση Μία τυχαία συνάρτηση (ΤΣ) είναι ένας κανόνας με τον οποίο σε κάθε αποτέλεσμα ζ.
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
Κοντινότεροι Κοινοί Πρόγονοι α βγ θ δεζ η π ν ι κλμ ρσ τ κκπ(λ,ι)=α, κκπ(τ,σ)=ν, κκπ(λ,π)=η κκπ(π,σ)=γ, κκπ(ξ,ο)=κ ξο κκπ(ι,ξ)=β, κκπ(τ,θ)=θ, κκπ(ο,μ)=α.
Προσεγγιστικοί Αλγόριθμοι
ΙΣΧΥΣ Η χρονική συνάρτηση της στιγμιαίας ισχύος προκύπτει από τη σχέση
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Δείκτες (Pointers) – Δομές (Structs)
Ενότητα Α.4. Δομημένος Προγραμματισμός
1 ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Πίνακας Συμβόλων Symbol Table.
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Συγγραφείς Α.Βακάλη Η. Γιαννόπουλος Ν. Ιωαννίδης Χ.Κοίλιας Κ. Μάλαμας Ι. Μανωλόπουλος Π. Πολίτης Γ΄ τάξη.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών – Τμήμα Πληροφορικής και Τηλεπικοινωνιών 1 Κεφάλαιο 3 Η Σημασιολογία των Γλωσσών Προγραμματισμού Προπτυχιακό.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Τάξεις και Αφαίρεση Δεδομένων.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών – Τμήμα Πληροφορικής και Τηλεπικοινωνιών 1 Κεφάλαιο 4 Σημασιολογία μιας Απλής Προστακτικής Γλώσσας Προπτυχιακό.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Πίνακες.
Επιστημονικός Υπολογισμός Ι Πρώτο Εργαστήριο Εισαγωγή στο matlab 15 Οκτωβρίου 2010 Γιώργος Δρακόπουλος ΤΜΗΥΠ.
Οι εντολές επανάληψης Σε πολλά προβλήματα απαιτείται η επανάληψη ενός συνόλου ενεργειών προκειμένου να λυθεί το πρόβλημα. Θα αναφέρουμε δύο χαρακτηριστικά.
2η άσκηση Να γραφεί πρόγραμμα που θα ζητάει τους a,b συντελεστές και τους δύο πρώτους όρους x 1, x 2 της αναγωγικής ακολουθίας x n = ax n-1 +bx n-2 και.
Πολυδιάστατοι πίνακες α) Στατικοί πίνακες Πως δηλώνονται: π.χ. INTEGER A(3,5) REAL B(1991:2000,1:12) REAL C(4,8,12:20) ή INTEGER, DIMENSION(3,5)::A REAL,
Βασικά στοιχεία της Java
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις (μέρος δεύτερο) και Μεταβλητές.
Αναδρομικές Συναρτήσεις Σύνταξη: RECURSIVE type FUNCTION name1 (variables) RESULT (name2) IMPLICIT NONE Τμήμα δηλώσεων Εκτελέσιμες εντολές END FUNCTION.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 6: Πίνακες και Παράμετροι στην main. Διδάσκων: Νικόλαος Θ Λιόλιος,
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ «Εισαγωγή στον οντοκεντρικό προγραμματισμό (βασική εισαγωγή στο περιβάλλον εργασίας)» Ρουσσάκης Ιωάννης, ΤΕΙ Κρήτης,
Ε ΙΣΑΓΩΓΉ Σ ΤΟΥΣ Μ ΟΝΟΔΙΑΣΤΑΤΟΥΣ Π ΊΝΑΚΕΣ Αστρινάκη Μαρία.
ΑΣΤΡΙΝΆΚΗ ΜΑΡΊΑ Δυσδιάστατοι πίνακες. Γιατί πολυδιάστατους πίνακες; Αναλόγως με τις ανάγκες του προγράμματος, μπορεί να είναι πιο εύχρηστοι Προβλήματα.
ΚΕΦΑΛΑΙΟ 2ο - ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
Όγδοο μάθημα Ψηφιακά Ηλεκτρονικά.
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Ειδικά Θέματα στον Προγραμματισμό Υπολογιστών
Η Γλώσσα Pascal Υποπρογράμματα
Κάθε ένα από τα αντικείμενα λέγεται στοιχείο του πίνακα.
Τελεστές και ή όχι Για την εκτέλεση αριθμητικών πράξεων
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Μεταγράφημα παρουσίασης:

Εισαγωγή στους Η/Υ Πίνακες

ΕΙΣΑΓΩΓΗ Οι πίνακες είναι συλλογές δεδομένων που μοιράζονται τα ίδια χαρακτηριστικά Τα στοιχεία ενός πίνακα βρίσκονται σε προκαθορισμένες αριθμημένες θέσεις (indexed) Ο Η/Υ αντιλαμβάνεται τους πίνακες σαν απλές μορφές διαδοχικής καταχώρησης δεδομένων στη μνήμη του Είδη Στατικοί πίνακες: το μέγεθος δηλώνεται ρητά πριν το compilation στην περιοχή των δηλώσεων και δεν αλλάζει στην έκταση του προγράμματος Δυναμικοί πίνακες: στην περιοχή των δηλώσεων δηλώνονται ρητά οι διαστάσεις, ενώ το μέγεθος μπορεί να αλλάζει στην έκταση του προγράμματος και κατά την εκτέλεσή του. Οι πίνακες δηλώνονται ΥΠΟΧΡΕΩΤΙΚΑ !

Στη FORTRAN ένας πίνακας (array) έχει τις παρακάτω ιδιότητες Τύπο δεδομένων: (data type) integer, real, character, logical, complex Όλα τα στοιχεία ενός πίνακα έχουν τον ίδιο τύπο και τις ίδιες παραμέτρους Τάξη (rank): αριθμός διαστάσεων Μέχρι 7 διαστάσεις Συνήθως χρησιμοποιούμε τους όρους τάξη 1 Διάνυσμα (vector) τάξη 2 Πίνακας (matrix) Όρια (bounds): Το κάτω και το πάνω όριο των δεικτών σε κάθε διάσταση Οι τιμές που μπορεί να πάρει ο κάθε δείκτης (index) Μέγεθος (size): το συνολικό πλήθος των στοιχείων του πίνακα (το γινόμενο των εκτάσεων των διαστάσεων) Η έκταση (extent) σε κάθε διάσταση είναι: (πάνω όριο - κάτω όριο +1) Μορφή (shape): Ο τρόπος διάταξης των στοιχείων του πίνακα Δύο πίνακες με ίδιο σχήμα λέγονται συμμορφούμενοι (conformable)

ΔΗΛΩΣΗ ΣΤΑΤΙΚΩΝ ΠΙΝΑΚΩΝ ΤΥΠΟΣ ΟΝΟΜΑ (έκταση) ΣΥΝΤΑΞΗ: 2-διαστάσεις 3-διαστάσεις Όρια σε κάθε διάσταση

Στοιχεία πίνακα (array elements) ΣΥΝΤΑΞΗ: Στοιχεία ενός πίνακα είναι τα βαθμωτά δεδομένα που απαρτίζουν τον πίνακα Για να αναφερθούμε σε ένα στοιχείο ενός πίνακα χρειάζεται να δηλώσουμε Το όνομα του πίνακα Τη θέση του στοιχείου (όπως στα μαθηματικά!) Κάθε στοιχείο του πίνακα κληρονομεί τον τύπο, το είδος και τις παραμέτρους του πατρικού πίνακα ΟΝΟΜΑ ΠΙΝΑΚΑ (ακέραιου τύπου έκφραση )

Αποθήκευση στη μνήμη Οι τιμές των στοιχείων του πίνακα καταχωρούνται στη μνήμη στη σειρά αλλάζοντας πρώτα τον 1ο δείκτη, μετά τον 2ο κ.ο.κ.

Πρόσβαση στα στοιχεία του πίνακα Απαιτείται το όνομα του πίνακα και η θέση του στοιχείου στον πίνακα Η θέση (δείκτες) καθορίζεται Με ρητή δήλωση Με αριθμητικές εκφράσεις Με συναρτήσεις Με στοιχεία ενός άλλου πίνακα Συνδυασμό των παραπάνω

Ανάθεση τιμών στα στοιχεία του πίνακα Απ’ ευθείας Με DO Με Read Το στοιχείο στη 1η γραμμή και 2η στήλη του πίνακα Α λαμβάνει την τιμή 1.0 Τα στοιχεία σε κάθε γραμμή του πίνακα Α λαμβάνουν την τιμή της θέσης τους Καταχωρούνται από το πληκτρολόγιο τόσες τιμές όσες και το μέγεθος του πίνακα Α. Εκτυπώνονται όλα τα στοιχεία του πίνακα Α.

Ανάθεση τιμών στα στοιχεία του πίνακα Με κατασκευαστή πίνακα (μονοδιάστατοι πίνακες) Με διανυσματικούς δείκτες Με τριάδες [όνομα_πίνακα(όριο1:όριο2:βήμα)] Τα στοιχεία του πίνακα C λαμβάνουν την τιμή 999. Στις θέσεις των στοιχείων του C που προκύπτουν από όλους τους συνδυασμούς των τιμών των στοιχείων των Α, Β (3x3=9) εκχωρείται η τιμή 2. (πρδγ.)

Τριάδες Α(3 , : )  Α(3,1:6) Α(3:4,3:4) (το βήμα υπονοείται) Α( : : 2, : : 3)  Α(1:6:2,1:6:3) (το πάνω και κάτω όριο υπονοείται) Α( : , : : 2)

Πράξεις με πίνακες Οι πράξεις με πίνακες ακολουθούν ό,τι ισχύει και για τους διάφορους τύπους δεδομένων Οι πράξεις με πίνακες γίνονται με τρεις τρόπους Πράξεις με στοιχεία του πίνακα Κάθε στοιχείο του πίνακα χρησιμοποιείται σαν μεταβλητή Πράξεις με ολόκληρους πίνακες Χρησιμοποιούνται όλα τα στοιχεία του πίνακα Πράξεις με εγγενείς συναρτήσεις Ανάλογα με το πως ορίζεται η συνάρτηση παράδειγμα

Εγγενείς Συναρτήσεις για Πίνακες LBOUND UBOUND SIZE SHAPE ALLOCATED MINVAL MAXVAL MINLOC MAXLOC COUNT SUM PRODUCT CSHIFT EOSHIFT TRANSPOSE ANY ALL MATMUL DOT_PRODUCT MERGE RESHAPE SPREAD PACK UNPACK

Υπονοούμενη επανάληψη Η υπονοούμενη επανάληψη χρησιμοποιείται Για τον καθορισμό επανάληψης σε ένα μέρος μιας λίστας εισόδου/εξόδου Για την μεταφορά μέρους ενός πίνακα Για την μεταφορά αντικειμένων ενός πίνακα με διαφορετική σειρά από αυτή που καταχωρούνται στη μνήμη. Παραδείγματα:

Παράλληλες δομές Όπως η δομή IF Where (συνθήκη) έκφραση Where … Elsewhere … End Where Όπως η δομή DO Forall (τριάδα[,τριάδα]...); έκφραση; end forall Όπως η δομή DO WHILE Forall (τριάδα[,τριάδα]..., συνθήκη); έκφραση; end forall Ισοδύναμο του forall (…); where(…) έκφραση; end forall

ΔΟΜΗ WHERE Επηρεάζει τα στοιχεία στις θέσεις των δεικτών των πινάκων, για τις οποίες ισχύει η αντίστοιχη συνθήκη Where (συνθήκη) έκφραση Where (συνθήκη) εκφράσεις 1 Elsewhere (συνθήκη) εκφράσεις 2 Elsewhere εκφράσεις 3 End Where

ΔΟΜΗ FORALL Επηρεάζει τα στοιχεία στις θέσεις των δεικτών των πινάκων, οι οποίες προσπελαύνονται από την τριάδα της δομής Απλή μορφή (Μονοδιάστατος πίνακας) FORALL(τριάδα) έκφραση Σύνθετη μορφή (Πολυδιάστατοι πίνακες) FORALL(τριάδα1, τριάδα2, …) εκφράσεις END FORALL

ΔΟΜΗ FORALL με Συνθήκη Επηρεάζει τα στοιχεία στις θέσεις των δεικτών των πινάκων, οι οποίες προσπελαύνονται από την τριάδα της δομής ΚΑΙ για τα οποία ισχύει η αντίστοιχη συνθήκη Απλή μορφή (Μονοδιάστατος πίνακας) FORALL(τριάδα, συνθήκη) έκφραση Σύνθετη μορφή (Πολυδιάστατοι πίνακες) FORALL(τριάδα1, τριάδα2,…, συνθήκη1.ΛΤ. συνθήκη2.ΛΤ. …) έκφρασεις END FORALL (όπου .ΛΤ. : Λογικός Τελεστής)

παράρτημα

ΑΣΚΗΣΗ Μετατρέψτε τον κώδικα της πλάγιας βολής ASK2OM1.f90 Ώστε να δέχεται δεδομένα για 5 συνδυασμούς Τα δεδομένα θα εισάγονται σε πίνακες και όλοι οι υπολογισμοί που ζητούνται θα γίνονται με εγγενείς συναρτήσεις πινάκων Τα αποτελέσματα να αποθηκεύονται σε πίνακα 5 x n και να εκτυπώνονται στην οθόνη Ακολούθως δημιουργείστε ένα πίνακα με n+2 στήλες και 6 γραμμές. Η μορφή του νέου πίνακα θα έχει ως εξής 1η στήλη : αριθμός γραμμής Στήλες 2 ως n-1 : αποτελέσματα υπολογισμών Γραμμή 6 : αναγράψετε για τους συνδυασμούς όπου εντοπίζονται τα μέγιστα τον αριθμό της στήλης του μέγιστου.