Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΙΝΑΚΕΣ. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Σχετικά έγγραφα
Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΙΝΑΚΕΣ. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Εισαγωγή στον Προγραμματισμό Η/Υ (Fortran 90/95/2003)

ΣΥΝΑΡΤΗΣΕΙΣ FORTRAN 90/95

Πίνακες. FORTRAN και Αντικειμενοστραφής Προγραμματισμός

Εισαγωγή στον Προγραμματισμό Η/Υ για Χημικούς Μηχανικούς

διανύσματα - Πίνακες - Struct Στατικό διάνυσμα Είσοδος Έξοδος δεδομένων Συναρτήσεις Χειρισμός σφαλμάτων ΤΕΤΑΡΤΗ ΔΙΑΛΕΞΗ

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

8 FORTRAN 77/90/95/2003

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Αρχεία Δεδομένων. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

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

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επιλογής. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Εισαγωγή στον Προγραμματισμό Η/Υ για Χημικούς Μηχανικούς

ΠΕΡΙΕΧΟΜΕΝΑ. Μονοδιάστατοι πίνακες Πότε πρέπει να χρησιμοποιούνται πίνακες Πολυδιάστατοι πίνακες Τυπικές επεξεργασίες πινάκων

Δείκτες & Πίνακες Δείκτες, Πίνακες

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

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

πινάκων Σύγχρονα Προγραματιστικά Περιβάλλοντα ΠΕΡΙΕΧΟΜΕΝΑ

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

Δομή προγράμματος στη Fortran

Υπολογισμός - Συλλογή Δεδομένων - Πίνακες

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

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

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

Fortran και Αντικειμενοστραφής προγραμματισμός.

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

Το πλήθος των δεικτών και οι µεγαλύτερες τιµές που µπορούν να πάρουν ορίζεται µε µία δηλωτική εντολή που λέγεται Dimension.

Ενδεικτικές Ερωτήσεις Θεωρίας

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

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

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

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

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

Άσκηση 1. O υπολογισμός να γίνει: α) με την τεχνική αθροίσματος σε μεταβλητή

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Δομή προγράμματος στη Fortran

Δομές Δεδομένων. Τι είναι η δομή δεδομένων; Έστω η ακολουθία αριθμών: 8, 10,17,19,22,5,12 Λογικό Επίπεδο. Φυσικό Επίπεδο RAM. Ταξινομημένος.

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

Oι εντολές COMMON και PARAMETER

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

Στόχοι και αντικείμενο ενότητας. Πέρασμα Πίνακα σε Συνάρτηση (συν.) Πέρασμα Πίνακα σε Συνάρτηση. #8.. Ειδικά Θέματα Αλγορίθμων

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

Μονοδιάστατοι πίνακες (συνέχεια)

Κεφάλαιο 5 Ανάλυση Αλγορίθμων

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ΚΑΙ Β ) ΤΕΤΑΡΤΗ 20 ΙΟΥΝΙΟΥ 2018

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

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

Προγραμματισμός Υπολογιστών Τάξη Γ Αθανασιάδης Χρήστος ΠΕ19 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Γιατί πολυδιάστατους πίνακες; ΠΟΛΥΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ. Δήλωση πολυδιάστατων πινάκων. Δήλωση πολυδιάστατων πινάκων

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ. Πίνακες και βασικές επεξεργασίες αυτών

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Fortran και Αντικειμενοστραφής προγραμματισμός.


Πίνακες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές

Ενότητα 1 Διάλεξη 3. Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού. Σιέττος Κωνσταντίνος

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο Κάθε δομή μπορεί να χρησιμοποιηθεί σε οποιοδήποτε πρόβλημα ή εφαρμογή

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

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

Πρόβλημα 37 / σελίδα 207

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ: Γ2

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Εισαγωγή στη Fortran. Μάθημα 3 ο. Ελευθερία Λιούκα

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Δρ. Ιωάννης Λυχναρόπουλος Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας

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

Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

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

Κεφάλαιο 5ο: Εντολές Επανάληψης

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

Περιεχόμενα. Δομές δεδομένων. Τεχνικές σχεδίασης αλγορίθμων. Εισαγωγή στον προγραμματισμό. Υποπρογράμματα. Επαναληπτικά κριτήρια αξιολόγησης

Δείκτες (Pointers) Ένας δείκτης είναι μια μεταβλητή με τιμή μια διεύθυνση μνήμης. 9.8

ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6)

Αλγόριθμοι Ταξινόμησης Bubble Sort Quick Sort. Αντρέας Δημοσθένους Καθηγητής Πληροφορικής Ολυμπιάδα 2012

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΥ

Παράλληλη Επεξεργασία Κεφάλαιο 2 Παραλληλισμός Δεδομένων

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος

ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ

Μονοδιάστατοι πίνακες

9.1. Προσδοκώμενα αποτελέσματα

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

Πίνακες. (i) FORTRAN και Αντικειµενοστραφής Προγραµµατισµός

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

ΚΕΦΑΛΑΙΑ 3 & 9 (ΠΙΝΑΚΕΣ)

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

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

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή

Εισαγωγή στην πληροφορική

I. ΑΛΓΟΡΙΘΜΟΣ II. ΠΡΑΞΕΙΣ - ΣΥΝΑΡΤΗΣΕΙΣ III. ΕΠΑΝΑΛΗΨΕΙΣ. 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι:

Μονοδιάστατοι πίνακες

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19)

Transcript:

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΙΝΑΚΕΣ Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

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

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

ΔΗΛΩΣΗ ΣΤΑΤΙΚΩΝ ΠΙΝΑΚΩΝ ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ[::] ΟΝΟΜΑ (έκταση) Παραδείγματα δηλώσεων integer:: A(3) real B(10,4) real,dimension(10,4)::b,c character(10)::s(20) integer:: A(3,6,8) Ο σωστός τρόπος δήλωσης στατικού πίνακα: integer,parameter:: N=5,M=7 real:: A(N,M) Δήλωση ορίων σε κάθε διάσταση

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

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

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

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

Ανάθεση τιμών στα στοιχεία του πίνακα Με εκxώρηση Integer:: Β(10,4), A(4,9) B=5! Όλα τα στοιχεία του πίνακα B παίρνουν την τιμή 5 A(2,4)=8! To στοιχείο στην 2 η γραμμή και 4 η στήλη του Α παίρνει την τιμή 8 Με επανάληψη DO Τα στοιχεία σε κάθε γραμμή του πίνακα Α λαμβάνουν την τιμή της θέσης τους Με Read Με χρήση της random_number integer::a(3,4); real::x(3,4) call random_number(x) A=nint(X*10)+20 Καταχωρούνται από το πληκτρολόγιο τόσες τιμές όσες και το μέγεθος του πίνακα Α. Εκτυπώνονται όλα τα στοιχεία του πίνακα Α.

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

Παραδείγματα εξόδου Δισδιάστατου Πίνακα Έστω ο πίνακας integer::a(5,3) Τότε οι παρακάτω τρόποι έχουν το ίδιο ακριβώς αποτέλεσμα: Α. Με Do Do i=1,5 print (3i4),A(I,:) End do Β. Με διπλή υπονοούμενη επανάληψη Print (3i4), ((A(i,j),j=1,3),i=1,5) Γ. Με απλή υπονοούμενη επανάληψη Print (3i4), (A(i,:),i=1,5)

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

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

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

Δυναμικοί Πίνακες Στους Δυναμικούς Πίνακες δεν γνωρίζουμε το μέγεθός τους εκ των προτέρων, αλλά αυτό καθορίζεται κατά την εκτέλεση του προγράμματος. Κατ τον τρόπο αυτό επιτυγχάνουμε βέλτιστη χρήση της διαθέσιμης μνήμης, επειδή εκμηδενίζονται τα κενά στοιχεία. Παράδειγμα: Δήλωση δυναμικών πινάκων. Integer,allocatable::A(:,:),B(:) Πρέπει να δηλώσουμε την τάξη Integer::N,M,st τους, αλλά όχι το μέγεθος τους Read*,N M=2*N Allocate(A(N,M),B(N),stat=st) Δημιουργία δυναμικών πινάκων If (st/=0) then print*, Sfalma! Παρουσιάστηκε σφάλμα π.χ. μη επαρκής μνήμη stop End if! Εντολές επεξεργασίας των πινάκων Deallocate(A,B) Καταστροφή δυναμικών πινάκων. (Γίνεται αυτόματα με το τέλος του προγράμματος)

Επεξεργασία Στοιχείων Δισδιάστατου Πίνακα Έστω ο πίνακας A ΝxM Κατά γραμμές Do i=1,n Do j=1,m <Επεξεργασία του στοιχείου A(i,j)> End Do End Do Κατά στήλες Do j=1,m Do i=1,n <Επεξεργασία του στοιχείου A(i,j)> End Do End Do

Τμήματα Τετραγωνικού Πίνακα NxN i=j i+j=n+1 i<j i+j<n+1 i>j i+j>n+1 Κύρια Διαγώνιος Δευτερεύουσα Διαγώνιος

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

Βασικές Λειτουργίες Πινάκων Αναζήτηση Σειριακή Δυαδική Ταξινόμηση Ευθείας Ανταλλαγής ή Bubble Sort Με επιλογή ή Selection Sort Με εισαγωγή ή Insertion Sort Quick Sort (Είναι αναδρομική διαδικασία) Συγχώνευση Πινάκων

Εφαρμογή: Αριθμητική Ολοκλήρωση (Κανόνας Τραπεζίου)