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

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

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

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

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

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

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

Μικροβιολογία & Υγιεινή Τροφίμων

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

Γενικά Μαθηματικά Ι. Ενότητα 15: Ολοκληρώματα Με Ρητές Και Τριγωνομετρικές Συναρτήσεις Λουκάς Βλάχος Τμήμα Φυσικής

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

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

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

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Κβαντική Επεξεργασία Πληροφορίας

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

Εφαρμοσμένη Στατιστική

Ιστορία της μετάφρασης

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

ΓΕΝΙΚΗ ΚΑΙ ΑΝΟΡΓΑΝΗ ΧΗΜΕΙΑ

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι είναι μια υπορουτίνα; με υπορουτίνα ΥΠΟΡΟΥΤΙΝΕΣ. Παράδειγμα #1: η πράξη SQ. Ποια η διαφορά συναρτήσεων και υπορουτίνων;

Εκκλησιαστικό Δίκαιο

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

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

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ. Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης

Εργαστήριο Χημείας Ενώσεων Συναρμογής

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

Εκκλησιαστικό Δίκαιο

Ηλεκτρονικοί Υπολογιστές I

Γενικά Μαθηματικά Ι. Ενότητα 14: Ολοκλήρωση Κατά Παράγοντες, Ολοκλήρωση Ρητών Συναρτήσεων Λουκάς Βλάχος Τμήμα Φυσικής

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Εργαστήριο Χημείας Ενώσεων Συναρμογής

Γενικά Μαθηματικά Ι. Ενότητα 5: Παράγωγος Πεπλεγμένης Συνάρτησης, Κατασκευή Διαφορικής Εξίσωσης. Λουκάς Βλάχος Τμήμα Φυσικής

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Προγραμματισμός και Εφαρμογές Υπολογιστών

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

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι είναι μια συνάρτηση; ΣΥΝΑΡΤΗΣΕΙΣ. Δήλωση συνάρτησης sq. Παράδειγμα συνάρτησης: υπολογισμός τετραγώνου

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

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Ιστορία της μετάφρασης

Ηλεκτρισμός & Μαγνητισμός

Γενικά Μαθηματικά Ι. Ενότητα 13: Ακτίνα Σύγκλισης, Αριθμητική Ολοκλήρωση, Ολοκλήρωση Κατά Παράγοντες. Λουκάς Βλάχος Τμήμα Φυσικής

Πληροφορική II. Ενότητα 5 : Δομές Δεδομένων και αφηρημένοι. τύποι δεδομένων. Δρ. Γκόγκος Χρήστος

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα

Γενικά Μαθηματικά Ι. Ενότητα 1: Συναρτήσεις και Γραφικές Παραστάσεις. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Εισαγωγή στους Αλγορίθμους

Προγραμματισμός και Εφαρμογές Υπολογιστών

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Γενικά Μαθηματικά Ι. Ενότητα 9: Κίνηση Σε Πολικές Συντεταγμένες. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Γενικά Μαθηματικά Ι. Ενότητα 16: Ολοκλήρωση Τριγωνομετρικών Συναρτήσεων, Γενικευμένα Ολοκληρώματα Λουκάς Βλάχος Τμήμα Φυσικής

Μαθηματικά και Φυσική με Υπολογιστές

ΓΕΝΙΚΗ ΚΑΙ ΑΝΟΡΓΑΝΗ ΧΗΜΕΙΑ

Εργαστήριο Χημείας Ενώσεων Συναρμογής

Εκκλησιαστικό Δίκαιο

Ηλεκτρισμός & Μαγνητισμός

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

1 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Κβαντική Επεξεργασία Πληροφορίας

Εισαγωγή στους Αλγορίθμους

Οικονομία των ΜΜΕ. Ενότητα 9: Εταιρική διασπορά και στρατηγικές τιμολόγησης

Αξιολόγηση μεταφράσεων ιταλικής ελληνικής γλώσσας

Λογισμός 3. Ενότητα 19: Θεώρημα Πεπλεγμένων (γενική μορφή) Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Παράκτια Τεχνικά Έργα

Βασικοί άξονες Μαθηματικά στην εκπαίδευση:

Διδάσκων: Καθηγητής Νικόλαος Μαρμαρίδης, Καθηγητής Ιωάννης Μπεληγιάννης

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Βασικές Αρχές Φαρμακοκινητικής

Οικονομετρία. Εξειδίκευση του υποδείγματος. Μορφή της συνάρτησης: Πολυωνυμική, αντίστροφη και αλληλεπίδραση μεταβλητών

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 6: Πίνακες [2/2] (Δισδιάστατοι)

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Ενότητα: Δακτύλιοι, Ακέραιες Περιοχές, Σώματα. Διδάσκων: Καθηγητής Μαρμαρίδης Νικόλαος - Θεοδόσιος

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

Οικονομία των ΜΜΕ. Ενότητα 7: Μορφές αγοράς και συγκέντρωση των ΜΜΕ

ΓΕΝΙΚΗ ΚΑΙ ΑΝΟΡΓΑΝΗ ΧΗΜΕΙΑ

Διπλωματική Ιστορία Ενότητα 2η:

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

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

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Β. Διαφορικός Λογισμός

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

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

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Ηλεκτρονικοί Υπολογιστές I

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Διδάσκων: Καθηγητής Νικόλαος Μαρμαρίδης, Καθηγητής Ιωάννης Μπεληγιάννης

Οδοποιία IΙ. Ενότητα 14: Υπόδειγμα σύνταξης τευχών θέματος Οδοποιίας. Γεώργιος Μίντσης ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Μηχανολογικό Σχέδιο Ι

Μαγνητικά Υλικά Υπεραγωγοί

Transcript:

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

ΥΠΟΛΟΓΙΣΤΕΣ Ι ΠΟΛΥΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Γιατί πολυδιάστατους πίνακες; Αναλόγως με τις ανάγκες του προγράμματος, μπορεί να είναι πιο εύχρηστοι Προβλήματα γραμμικής άλγεβρας Παράδειγμα: δηλώστε σε πρόγραμμα έναν πίνακα για 100 σημεία με δύο συνιστώσες το καθένα PROGRAM POINTS DOUBLE PRECISION P(2,100) εντολές 1 2 Δήλωση πολυδιάστατων πινάκων Οι επιπλέον διαστάσεις χωρίζονται με κόμμα DOUBLE PRECISION P(2,100) INTEGER I(2,2), K(3,3), M(2,2,2) DOUBLE PRECISION R(100,100,100) εντολές Στη Fortran μπορούμε να έχουμε μέχρι και 7 διαστάσεις Δήλωση πολυδιάστατων πινάκων Οι επιπλέον διαστάσεις χωρίζονται με κόμμα INTEGER N1, N2, N3 PARAMETER(N1 = 100, N2 = 2, N3 = 3) DOUBLE PRECISION P(N2,N1) INTEGER I(N2,N2), K(N3,N3), M(N2,N2,N2) DOUBLE PRECISION R(N1,N1,N1) εντολές Στη Fortran μπορούμε να έχουμε μέχρι και 7 διαστάσεις 3 4

Δισδιάστατοι πίνακες A A DOUBLE PRECISION Α(2,2) Ο πίνακας Α είναι ο: 11 21 A A δύο γραμμές δύο στήλες Τα στοιχεία του πίνακα είναι: Α(1,1) Α(1,2) Α(2,1) Α(2,2) Απευθείας ανάθεση τιμών: Παράδειγμα #1 Γράψτε πρόγραμμα που δημιουργεί τον παρακάτω 2 2 πίνακα: 30 20 40 INTEGER Α(2,2) Α(1,1) = 10 Α(2,1) = 30 Α(1,2) = 20 Α(2,2) = 40 5 6 Απευθείας ανάθεση τιμών: Παράδειγμα #2 Γράψτε πρόγραμμα που δημιουργεί τον παρακάτω 2 3 πίνακα: 40 20 50 30 60 INTEGER Α(2,3) Α(1,1) = 10 Α(1,2) = 20 Α(1,3) = 30 Α(2,1) = 40 Α(2,2) = 50 Α(2,3) = 60 Απευθείας ανάθεση τιμών: Παράδειγμα #2β Γράψτε πρόγραμμα που δημιουργεί τον παρακάτω 2 3 πίνακα: 40 20 50 30 60 INTEGER Α(2,3), I, J, T T = 0 DO I = 1, 2 DO J = 1, 3 T = T + 10 A(I,J) = T 7 8

Απευθείας ανάθεση τιμών: Παράδειγμα #2γ Γράψτε πρόγραμμα που δημιουργεί τον παρακάτω 2 3 πίνακα: 20 30 40 50 60 INTEGER Α(2,3), I, J, T T = 0 DO J = 1, 3 DO I = 1, 2 T = T + 10 A(I,J) = T 9 ή Ανάθεση τιμών με εντολή READ: Παράδειγμα #3α Γράψτε πρόγραμμα που δημιουργεί και διαβάζει έναν πίνακα 2 3, μια-μια τις στήλες INTEGER Α(2,3) WRITE(*,*) ΔΩΣΕ ΤΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΠΙΝΑΚΑ WRITE(*,*) ΔΩΣΕ ΜΙΑ-ΜΙΑ ΤΙΣ ΣΤΗΛΕΣ READ(*,*) A(1,1),A(2,1),A(1,2),A(2,2),A(1,3),A(2,3) INTEGER Α(2,3), I, J WRITE(*,*) ΔΩΣΕ ΤΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΠΙΝΑΚΑ WRITE(*,*) ΔΩΣΕ ΜΙΑ-ΜΙΑ ΤΙΣ ΣΤΗΛΕΣ READ(*,*) ((A(I,J), I = 1, 2), J = 1, 3) 10 ή Ανάθεση τιμών με εντολή READ: Παράδειγμα #3β Γράψτε πρόγραμμα που δημιουργεί και διαβάζει έναν πίνακα 2 3, μια-μια τις γραμμές _Β INTEGER Α(2,3) WRITE(*,*) ΔΩΣΕ ΤΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΠΙΝΑΚΑ WRITE(*,*) ΔΩΣΕ ΜΙΑ-ΜΙΑ ΤΙΣ ΓΡΑΜΜΕΣ READ(*,*) A(1,1),A(1,2),A(1,3),A(2,1),A(2,2),A(2,3) _Β INTEGER Α(2,3), I, J WRITE(*,*) ΔΩΣΕ ΤΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΠΙΝΑΚΑ WRITE(*,*) ΔΩΣΕ ΜΙΑ-ΜΙΑ ΤΙΣ ΓΡΑΜΜΕΣ READ(*,*) ((A(I,J), J = 1, 3), I = 1, 2) 11 Αποθήκευση πίνακα στη μνήμη Τελικά, τι να κάνουμε, γραμμή-γραμμή ή στήλη-στήλη; Στην μνήμη, η Fortran αποθηκεύει τους πίνακες στήληστήλη. Π.χ ο παρακάτω πίνακας αποθηκεύεται ως ΠΙΝΑΚΑΣ ΔΙΑΤΑΞΗ ΣΤΗ ΜΝΗΜΗ θέση 1: Α(1,1) 20 30 θέση 2: Α(2,1) θέση 3: Α(1,2) 40 50 60 θέση 4: Α(2,2) θέση 5: Α(1,3) θέση 6: Α(2,3) Εάν ακολουθούμε την διάταξη της μνήμης, οι πράξεις εκτελούνται πιο γρήγορα

20 10 20 Εξαγωγή τιμών Γράψτε πρόγραμμα που δημιουργεί τον παρακάτω 2 3 πίνακα, και κατόπιν τον εξάγει στην οθόνη 30 40 στην οθόνη εμφανίζεται 30 40 50 60 50 60 INTEGER Α(2,3), I, J, T T = 0 DO J = 1, 3 DO I = 1, 2 T = T + 10 A(I,J) = T DO I = 1, 2 WRITE(*,*) (A(I,J), J = 1, 3) 13 Παράδειγμα #4: Υπολογισμός ίχνους τετραγωνικού πίνακα Το ίχνος ενός τετραγωνικού πίνακα Ν Ν είναι το άθροισμα των στοιχείων της διαγωνίου A11 A A21 A Tr { A} = Tr = A11 + A +... + A NN 14 Παράδειγμα #4: Υπολογισμός ίχνους τετραγωνικού πίνακα (1/2) Γράψτε πρόγραμμα που δημιουργεί πίνακα Ν Ν σύμφωνα με την δίπλα σχέση, και κατόπιν να εξάγει στην οθόνη τον πίνακα και το ίχνος του PROGRAM TRACE INTEGER NMAX, N, I, J PARAMETER (NMAX = 100) DOUBLE PRECISION Α(NMAX,NMAX), T, PI 2π A ij = sin i + j WRITE(*,*) ΠΟΙΑ Η ΔΙΑΣΤΑΣΗ ΤΟΥ ΠΙΝΑΚΑ; READ(*,*) Ν IF (N.GT. NMAX.OR. N.LE. 0) THEN WRITE(*,*) ΛΑΘΟΣ: ΜΕΧΡΙ, ΝΜΑΧ STOP IF ΣΥΝΕΧΙΖΕΤΑΙ... 15 Παράδειγμα #4: Υπολογισμός ίχνους τετραγωνικού πίνακα (2/2) PI = ACOS(-1.0) DO J = 1, Ν DO I = 1, Ν A(I,J) = SIN( 2*PI / (I+J) ) T = 0 DO I = 1, N T = T + A(I,I) WRITE(*,*) Ο ΠΙΝΑΚΑΣ ΠΟΥ ΔΗΜΙΟΥΡΓΗΘΗΚΕ ΕΙΝΑΙ: DO I = 1, N WRITE(*,*) (A(I,J), J = 1, N) WRITE(*,*) ΚΑΙ ΕΧΕΙ ΙΧΝΟΣ, Τ 16

Παράδειγμα #5 Αντιγραφή πίνακα από μονοδιάστατο σε δισδιάστατο Γράψτε πρόγραμμα που 1) διαβάζει μονοδιάστατο πίνακα Α(100) στοιχείων 2) τον αντιγράφει σε δισδιάστατο πίνακα Β(10,10) ως εξής: i. τα 10 πρώτα στοιχεία του Α στην πρώτη γραμμή του Β ii. τα 10 επόμενα του Α στην δεύτερη γραμμή του Β, κοκ. 3) Αντιγράφει σε δισδιάστατο πίνακα C(5,5) τις τιμές του τρίτου τεταρτημορίου (κάτω αριστερά) του Β 4) Εκτυπώνει τον πίνακα C και το ίχνος του π.χ. για Α(16), Β(4,4) και C(2,2) A = { A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A, A13, A14, A15, A16} A1 A2 A3 A4 A5 A6 A7 A8 B = A9 A10 A 9 A10 A11 A C = A13 A14 A15 A A13 A14 16 17 Παράδειγμα #5 Αντιγραφή πίνακα από μονοδιάστατο σε δισδιάστατο (1/2) PROGRAM COPY_MATRIX INTEGER N, I, J, K PARAMETER (N = 10) DOUBLE PRECISION Α(N*N), B(N,N), C(N/2,N/2), T WRITE(*,*) ΔΩΣΕ ΤΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΠΙΝΑΚΑ Α READ(*,*) (A(I), I = 1, N*N) K = 0 DO I = 1, N DO J = 1, N K = K + 1 B(I,J) = A(K) ΣΥΝΕΧΙΖΕΤΑΙ... 18 Παράδειγμα #5 Αντιγραφή πίνακα από μονοδιάστατο σε δισδιάστατο (2/2)( DO I = 1, N/2 DO J = 1, N/2 C(I,J) = B(I+N/2, J) T = 0 DO I = 1, N/2 T = T + C(I,I) WRITE(*,*) Ο ΠΙΝΑΚΑΣ ΠΟΥ ΔΗΜΙΟΥΡΓΗΘΗΚΕ ΕΙΝΑΙ: DO I = 1, N/2 WRITE(*,*) (C(I,J), J = 1, N/2) WRITE(*,*) ΚΑΙ ΕΧΕΙ ΙΧΝΟΣ, Τ 19 Παράδειγμα #5 Πολλαπλασιασμός πινάκων Έστω δύο πίνακες Α(Ν,Ν) και Β(Ν,Ν). Το γινόμενό τους Α Β είναι ένας πίνακας C(Ν,Ν), όπου το κάθε στοιχείο C ij είναι το εσωτερικό γινόμενο της i γραμμής του Α επί την j στήλη του Β π.χ. για 2 2 πίνακες: A11 A B11 B A11B = A21 A B 21 B A21B Σε «μαθηματική» γλώσσα: C = N ij k = 1 A 11 11 ik + A B + A B B kj 21 21 A A 11 21 B B + AB + A B 20

Παράδειγμα #6: Πολλαπλασιασμός πινάκων (1/2) Γράψτε πρόγραμμα που διαβάζει δύο πίνακες Ν Ν και υπολογίζει και τυπώνει το γινόμενό τους PROGRAM MULTIPLY INTEGER NMAX, N, I, J, K PARAMETER (NMAX = 1000) DOUBLE PRECISION Α(NMAX,NMAX), B(NMAX,NMAX), & C(NMAX,NMAX), WRITE(*,*) ΠΟΙΑ Η ΔΙΑΣΤΑΣΗ ΤΩΝ ΠΙΝΑΚΩΝ; READ(*,*) Ν IF (N.GT. NMAX.OR. N.LE. 0) THEN WRITE(*,*) ΛΑΘΟΣ: ΜΕΧΡΙ, ΝΜΑΧ STOP IF WRITE(*,*) ΔΩΣΕ ΤΟΥΣ ΠΙΝΑΚΕΣ ΣΤΗΛΗ-ΣΤΗΛΗ; READ(*,*) ((A(I,J), I = 1, N), J = 1, N) Παράδειγμα #6: Πολλαπλασιασμός πινάκων (2/2) DO J = 1, N DO I = 1, N C(I,J) = 0 DO K = 1, N C(I,J) = C(I,J) + A(I,K) * B(K,J) WRITE(*,*) ΤΟ ΓΙΝΟΜΕΝΟ Α ΕΠΙ Β ΕΙΝΑΙ Ο ΠΙΝΑΚΑΣ: DO I = 1, N WRITE(*,*) (C(I,J), J = 1, N) DΟ READ(*,*) ((B(I,J), I = 1, N), J = 1, N) 21

Χρηματοδότηση Τέλος Ενότητας Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Ιωαννίνων» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Σημείωμα Ιστορικού Εκδόσεων Έργου Σημειώματα Το παρόν έργο αποτελεί την έκδοση 1.0. Έχουν προηγηθεί οι κάτωθι εκδόσεις: Έκδοση 1.0 διαθέσιμη εδώ. http://ecourse.uoi.gr/course/view.php?id=1154.

Σημείωμα Αναφοράς Σημείωμα Αδειοδότησης Copyright Πανεπιστήμιο Ιωαννίνων, Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης. «Υπολογιστές Ι. Πολυδιάστατοι πίνακες». Έκδοση: 1.0. Ιωάννινα 2014. Διαθέσιμο από τη δικτυακή διεύθυνση: http://ecourse.uoi.gr/course/view.php?id=1154. Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά Δημιουργού - Παρόμοια Διανομή, Διεθνής Έκδοση 4.0 [1] ή μεταγενέστερη. [1] https://creativecommons.org/licenses/by-sa/4.0/.