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

Σχετικά έγγραφα
Ο τελεστής ανάθεσης και οι εντολές εισόδουεξόδου

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Προγραμματισμός Η/Υ. Ενότητα 2β: Εισαγωγή στη C (Μέρος Δεύτερο)

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

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

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

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

Διδακτική της Πληροφορικής

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

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

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

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

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

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

Κλασσική Θεωρία Ελέγχου

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

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

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

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

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

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

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

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

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

Ευφυής Προγραμματισμός

Μοντέρνα Θεωρία Ελέγχου

Media Monitoring. Ενότητα 6: Δημιουργία Βάσης Δεδομένων στο SPSS. Σταμάτης Πουλακιδάκος Σχολή ΟΠΕ Τμήμα ΕΜΜΕ

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

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

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

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

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο

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

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

Μάρκετινγκ Αγροτικών Προϊόντων

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 1: Εισαγωγή

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

ΗΛΕΚΤΡΟΝΙΚΗ ΙIΙ Ενότητα 6

Λογικός Προγραμματισμός Ασκήσεις

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

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 9: Ειδικά θέματα γλώσσας C/C++. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Ενότητα 6: Ακρότατα συναρτησιακών διανυσματικών συναρτήσεων. Νίκος Καραμπετάκης Τμήμα Μαθηματικών

ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ. Λογισμός 3. Ενότητα 13: Τύπος του Taylor. Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών

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

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

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

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

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

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

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

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

Συμπεριφορά Καταναλωτή

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

ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ. Λογισμός 4. Ενότητα 1: Εισαγωγή. Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών

Φ 619 Προβλήματα Βιοηθικής

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

Ευφυής Προγραμματισμός

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

Φ 619 Προβλήματα Βιοηθικής

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

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

Κλασσική Θεωρία Ελέγχου

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

Μοντέρνα Θεωρία Ελέγχου

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

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

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

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

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

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

Επιμέλεια μεταφράσεων και εκδοτικός χώρος

Συμπεριφορά Καταναλωτή

Γεωργική Εκπαίδευση Ενότητα 9

Μάρκετινγκ Εξαγωγών. Ενότητα 3 : Το Περιβάλλον και το Διεθνές Μάρκετινγκ Κοινωνικο-Πολιτιστικό Περιβάλλον

Αγροτικός Τουρισμός. Ενότητα 9 η : Εκπαιδευτικές τεχνικές στον τουρισμό. Όλγα Ιακωβίδου Τμήμα Γεωπονίας ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Δομημένος Προγραμματισμός

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

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο

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

ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ. Λογισμός 4. Ενότητα 6: Εφαρμογές του Fubini. Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών

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

Διαγλωσσική μεταφορά και διαμεσολάβηση

ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ. Λογισμός 4. Ενότητα 5: Το Θεώρημα του Fubini. Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών

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

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

Διαγλωσσική μεταφορά και διαμεσολάβηση

Transcript:

ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ () Ενότητα 3: Ο τελεστής ανάθεσης και οι εντολές εισόδου εξόδου Νίκος Καραμπετάκης Τμήμα Μαθηματικών

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

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

Περιεχόμενα Ενότητας 1. Ο τελεστής ανάθεσης = και η βασική του διαφορά από το σύμβολο ισότητας. 2. Η εντολή ανάγνωσης μεταβλητών READ. 3. Η εντολή εκτύπωσης μεταβλητών WRITE. 4

Σκοποί Ενότητας 1. Η παρουσίαση του τελεστή ανάθεσης (=). 2. Η παρουσίαση της εντολής εισόδου READ. 3. Η παρουσίαση της εντολής εξόδου WRITE. 5

Δομή προβλημάτων που θα ασχοληθούμε Χρειαζόμαστε εντολές για είσοδο δεδομένων (READ). Χρειαζόμαστε εντολές για επεξεργασία δεδομένων (=). Χρειαζόμαστε εντολές για έξοδο δεδομένων (WRITE PRINT). ΕΙΣΟΔΟΣ ΕΠΕΞΕΡΓΑΣΙΑ ΕΞΟΔΟΣ 6

Ο τελεστής ανάθεσης Μεταβλητή=Έκφραση Παράδειγμα. Α=1 Α=Α+1 Β=Α Α 1 Α 2 7

Παρατηρήσεις 1. Προσοχή κατά την τοποθέτηση των παρενθέσεων. 2. Χρήση του ίδιου ονόματος μεταβλητής σε όλα τα σημεία του προγράμματος. 3. Οι μεταβλητές δεξιά του = έχουν πάρει τιμή. 4. Τα ορίσματα έχουν σωστές τιμές. 5. Ονόματα μεταβλητών σχετικά με το τι παριστούν. 6. Χρήση της PARAMETER για σταθερές. 7. Σπάσιμο πολύπλοκων εκφράσεων σε απλούστερες. 8. Χρήση των ενσωματωμένων συναρτήσεων. 8

Η εντολή εισόδου READ READ READ χωρίς FORMAT Τα δεδομένα δίνονται με κόμμα ή κενό ανάμεσα τους READ με FORMAT Τα δεδομένα δίδονται με προκαθορισμένο τρόπο που ορίζεται από την FORMAT 9

Η εντολή εισόδου READ χωρίς FORMAT Σύνταξη: READ*, λίστα μεταβλητών ή READ(n,*) λίστα μεταβλητών Όπου n=*,0 ή 5 που δηλώνει ως μονάδα εισόδου το πληκτρολόγιο. Παράδειγμα. READ*, Α, Β READ(5,*) Α,Β READ(*,*) Α,Β 10

Παράδειγμα READ χωρίς FORMAT PROGRAM TEST IMPLICIT NONE INTEGER :: A,B,Υ READ*,A,B Y=MOD(A,B) END PROGRAM TEST! Όλες οι μεταβλητές θα δηλώνονται.! Δήλωση των ακέραιων μεταβλητών! Απαιτεί την εισαγωγή 2 ακεραίων τιμών για Α,Β! Υπολογίζει το υπόλοιπο της ακέραιης διαίρεσης του Α! με το Β και το τοποθετεί στην μεταβλητή Υ 11

Παρατηρήσεις 1. Αντιστοίχιση αριθμού μεταβλητών, τύπου δεδομένων, σειράς δεδομένων. 2. Κατά την εισαγωγή δεδομένων διαχωρίζουμε τα δεδομένα με κόμμα και τα strings τα τοποθετούμε σε εισαγωγικά. 3. Τι γίνεται αν τα δεδομένα που τοποθετούμε είναι (περισσότερα, ίσα, λιγότερα) από αυτά που χρειάζεται η READ; 4. Κάθε READ διαβάζει από καινούρια γραμμή. 12

Η εντολή εξόδου PRINT WRITE WRITE WRITE χωρίς FORMAT Ο Η/Υ επιλέγει τον τρόπο με τον οποίο θα εκτυπωθούν τα δεδομένα. WRITE με FORMAT Με την FORMAT επιλέγουμε τον τρόπο με τον οποίο θέλουμε να εκτυπωθούν τα δεδομένα. 13

Η εντολή εξόδου WRITE χωρίς FORMAT Σύνταξη: PRINT*, λίστα {σταθερών, μεταβλητών ή εκφράσεων} ή WRITE(n,*) λίστα {σταθερών, μεταβλητών ή εκφράσεων} όπου n=*,0 ή 6 που δηλώνει ως μονάδα εξόδου την οθόνη. Παράδειγμα. PRINT*, A=,Α, B=, Β WRITE(6,*) A=,Α, B=,Β WRITE(*,*) A=,Α, B=,Β 14

Παράδειγμα PRINT PROGRAM TEST IMPLICIT NONE INTEGER :: A,B,Υ PRINT*, Give me two values for A,B : READ*,A,B Y=MOD(A,B) PRINT*, RESIDUE=,Y PRINT*, QUOTIENT=,(A-Y)/B END PROGRAM TEST! Όλες οι μεταβλητές θα δηλώνονται.! Δήλωση των ακέραιων μεταβλητών! Απαιτεί την εισαγωγή 2 ακεραίων τιμών για Α,Β! Υπολογίζει το υπόλοιπο της ακεραίας διαίρεσης του Α! με το Β και το τοποθετεί στην μεταβλητή Υ 15

Πως θα εμφανίζονται τα αποτελέσματα ; 1. α. οι ακέραιοι αριθμοί θα καταλαμβάνουν 11 θέσεις, β. οι πραγματικοί αριθμοί θα καταλαμβάνουν 16 θέσεις, από τις οποίες οι 6 θέσεις θα είναι για τα δεκαδικά ψηφία, γ. οι πραγματικοί αριθμοί διπλής ακρίβειας θα καταλαμβάνουν 24 θέσεις, από τις οποίες οι 15 θέσεις θα είναι για τα δεκαδικά ψηφία 2. Μεταξύ των αριθμών που θα εκτυπώνονται θα υπάρχει ένα κενό, ενώ μεταξύ αριθμών και χαρακτήρων δεν υπάρχει κενό. 3. Οι αριθμοί θα στοιχίζονται προς τα δεξιά, σε αντίθεση με τις αλυσίδες χαρακτήρων που θα έχουν αριστερή στοίχιση. 4. Η κάθε WRITE-PRINT εκτυπώνει σε διαφορετική γραμμή. 16

Προσπαθήστε να μεταφράσετε και να εκτελέσετε το παρακάτω παράδειγμα PROGRAM TEST IMPLICIT NONE INTEGER (4) REAL (4) REAL (8) CHARACTER (10) A=3 B=45.2 C=23.56 NAME= NIKOS PRINT*,A,B,C,NAME END PROGRAM TEST :: A :: B :: C :: NAME * Δυαδική μορφή του 23.56 : 10111.100011110101110000101 17

Δραστηριότητα Τι πιστεύετε ότι θα εκτυπωθεί από το παρακάτω πρόγραμμα ; PROGRAM TEST IMPLICIT NONE INTEGER REAL :: LENGTH :: HEIGHT :: NAME CHARACTER LENGTH=3 ; HEIGHT=5.2 NAME= ANASTASIA PRINT*,LENGTH, HEIGHT WRITE(6,*) NAME END PROGRAM TEST 18

Απλά προβλήματα εισόδου εξόδου (Περιγραφή) Καταθέτουμε σε μια τράπεζα στην αρχή του κάθε έτους ένα σταθερό ποσό Α. Αν η κατάθεση γίνεται με επιτόκιο Ε%, τότε το κεφάλαιο Κ μετά την νιοστή κατάθεση θα είναι : K = A 1 + E 1 + E N 1 E Να γραφεί πρόγραμμα υπολογισμού του Κ αν είναι γνωστά τα Α, Ε και Ν. Α) Περιγραφή εισόδου-εξόδου Είσοδος Το σταθερό ποσό Α, το επιτόκιο E% και τα χρόνια Ν. Έξοδος Το συνολικό κεφάλαιο Κ μετά από Ν χρόνια. 19

Απλά προβλήματα εισόδου εξόδου (Αλγόριθμος) Β) Παράδειγμα με το χέρι. Έστω Ν=1χρόνος, Ε=0.02 και Α=1000. K = 1000 1 + 0.02 1 + 0.02 1 1 0.02 Γ) Αλγόριθμος προβλήματος Βήμα 1. Διαβάζουμε τις τιμές α) του αρχικού κεφαλαίου Α, β) του επιτοκίου Ε, και γ) των χρόνων Ν. Βήμα 2. Υπολογίζουμε το συνολικό κεφάλαιο από τον τύπο που μας δόθηκε. Βήμα 3. Εκτυπώνουμε τα αποτελέσματα. 20

Απλά προβλήματα εισόδου εξόδου (Πρόγραμμα) Δ) Πρόγραμμα PROGRAM EXAMPLE31! Το πρόγραμμα αυτό υπολογίζει το τελικό κεφάλαιο Κ, μετά από!ετήσια κατάθεση ποσού Α, για Ν συνεχόμενα χρόνια και με επιτόκιο Ε! Α=ποσό ετήσιας κατάθεσης, Ε=επιτόκιο, Ν=χρόνια, Κ=τελικό ποσό! Δήλωση σταθερών, μεταβλητών IMPLICIT NONE INTEGER :: N REAL :: E,A,Κ 21

Απλά προβλήματα εισόδου εξόδου (συνέχεια)! ΒΗΜΑ 1. ΕΙΣΑΓΩΓΗ ΑΡΧΙΚΩΝ ΤΙΜΩΝ PRINT*, POSO =' READ*,A PRINT*,'RATE =' READ*,E PRINT*,'YEARS =' READ*,N! ΒΗΜΑ 2. ΥΠΟΛΟΓΙΣΜΟΣ ΤΕΛΙΚΟΥ ΠΟΣΟΥ K=A*(1+E)*((1+Ε)**N-1)/Ε! ΒΗΜΑ 3. ΕΚΤΥΠΩΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ PRINT*, TELIKO POSO=,K, EURO END PROGRAM EXAMPLE31 22

Άσκηση 1 Να διαβαστούν οι κάθετες πλευρές Α, Β ενός ορθογωνίου τριγώνου και στη συνέχεια να υπολογιστεί α) η υποτείνουσα του τριγώνου C, και β) το εμβαδόν Ε του τριγώνου, από τους τύπους : C = A 2 + B 2, E = 1 2 A B 23

Η εντολή εισόδου READ με FORMAT Σύνταξη: READ f, λίστα μεταβλητών ή READ(n,f) λίστα μεταβλητών όπου n=*,0 ή 5 που δηλώνει ως μονάδα εισόδου το πληκτρολόγιο, f=ετικέτα (label) (θετικός ακέραιος αριθμός) που δηλώνει τη θέση της FORMAT που αντιστοιχεί στην συγκεκριμένη READ f FORMAT(λίστα από περιγραφές) 24

Χαρακτηριστικά της FORMAT Χαρακτηριστικό nx Iw Fw.d Ew.d Dw.d Περιγραφή N κενοί χαρακτήρες W θέσεις για ακέραιο αριθμό W θέσεις για πραγματικό από τις οποίες d θέσεις για d δεκαδικά. ±xx. xxxx w W θέσεις για πραγματικό κινητής υποδιαστολής από τις οποίες d θέσεις για δεκαδικά. ±xx. xx E ± xx w W θέσεις για πραγματικό διπλής ακρίβειας από τις οποίες d θέσεις για δεκαδικά. ±xx. xx D ± xx w d d 25

Χαρακτηριστικά της FORMAT...συνέχεια Χαρακτηριστικό A[w] Lw Περιγραφή W θέσεις για αλυσίδα χαρακτήρων W θέσεις για λογικούς χαρακτήρες 26

Παράδειγμα 1 PROGRAM TEST IMPLICIT NONE REAL :: X READ 10, X 10 FORMAT(F9.1) END PRINT*,X 2 4. 5 2 4 5 2 4 5 2 4 5 * Η υποδιαστολή κατά την είσοδο των δεδομένων έχει μεγαλύτερη ισχύ από τη FORMAT. 27

Παράδειγμα 2 PROGRAM BIRTHDAY IMPLICIT NONE INTEGER :: D,M,Y READ(5,10) D,M,Y 10 FORMAT(I2,1X,I2,1X,I4) PRINT*,D, -,M, -,Y END 28

Παράδειγμα 3 PROGRAM TEST IMPLICIT NONE CHARACTER (10) :: NAME LOGICAL CONDITION READ(5,10) NAME,CONDITION 10 FORMAT(A10,1X,L1) PRINT*,NAME,CONDITION END 29

Άσκηση 2 Να γραφεί πρόγραμμα που θα διαβάζει τα στοιχεία μιας πιστωτικής κάρτας : xxxx-xxxx-xxxx-xxxx και θα εμφανίζει τους 4 αριθμούς της πιστωτικής κάρτας. 30

Η εντολή εξόδου WRITE με FORMAT Σύνταξη: PRINT f, λίστα {σταθερών, μεταβλητών ή εκφράσεων} ή WRITE(n,f) λίστα {σταθερών, μεταβλητών ή εκφράσεων} όπου n=*,0 ή 6 που δηλώνει ως μονάδα εξόδου την οθόνη και f=το label (ετικέτα) της FORMAT που συνδέεται με την αντίστοιχη WRITE-PRINT. f FORMAT(λίστα από περιγραφές) 31

Επιπλέον χαρακτηριστικά της FORMAT για εκτύπωση Πρώτος χαρακτήρας FORMAT Περιγραφή 1 Η εκτύπωση της γραμμής θα γίνει σε νέα σελίδα. Κενό (ή 1Χ) Η εκτύπωση της γραμμής θα γίνει στην αμέσως επόμενη γραμμή. 0 Η εκτύπωση της γραμμής θα γίνει στη μεθεπόμενη γραμμή. + Η εκτύπωση της γραμμής θα γίνει στην ίδια γραμμή. * Οι υπόλοιποι χαρακτήρες ακολουθούν την ίδια δομή με αυτή της READ. 32

Παραδείγματα PRINT και WRITE με FORMAT PRINT 10 10 FORMAT( 1, RESULTS ) WRITE(6,10) 10 FORMAT( 0, 123 ) COMPLEX :: A READ*,A WRITE(6,10) A 10 FORMAT(1X,F5.1,1X,F5.1) 33

Επιπλέον Χαρακτήρες Επιπλέον Χαρακτήρες Περιγραφή String nh Tc, TLc, TRc Εμφανίζει το αντίστοιχο string στην οθόνη. Μεταφέρει τους επόμενους n χαρακτήρες που ακολουθούν το Η στην έξοδο (πρόκειται να καταργηθεί σε επόμενες εκδόσεις). Προσδιορίζει τη στήλη στην οποία θα εκτυπωθεί αυτό που θέλουμε : θα εκτυπωθεί στη c στήλη, θα εκτυπωθεί στη c στήλη προς τα αριστερά σε σχέση με αυτήν που βρισκόμαστε τώρα, θα εκτυπωθεί στην c στήλη προς τα δεξιά σε σχέση με αυτήν που βρισκόμαστε τώρα. / Αλλάζει γραμμή. Πρέπει να ακολουθεί ο πρώτος χαρακτήρας που προσδιορίζει την κάθετη θέση της επόμενης γραμμής. \ Συνεχίζει στην ίδια γραμμή. 34

Παράδειγμα 4 WRITE(6,10) 10 FORMAT(1X,TR20, MAIN RESULTS /1X,TR10, X,TR5,4HY(Χ) 35

Παρατηρήσεις στην FORMAT 1. Πολλές READ/WRITE χρησιμοποιούν την ίδια FORMAT READ(5,10) A READ(5,10) B 10 FORMAT(1X,F5.2) 2. Μεταξύ READ/WRITE και FORMAT ισχυρότερη είναι η πρώτη WRITE(6,10) A,B,C 10 FORMAT(1Χ,F8.2,F4.1) 3. Αποτέλεσμα εκτύπωσης *** (χρησιμοποίησε Εw.d). 4. Δήλωση του πρώτου χαρακτήρα της FORMAT WRITE(6,10) 10 FORMAT( NIKOS ) 5. Προσθήκη τίτλων στα αποτελέσματα WRITE(6,10) A 10 FORMAT(1X, A=,F5.1, cm ) 36

Παράδειγμα 5 από προηγούμενο παράδειγμα! ΒΗΜΑ 2. ΥΠΟΛΟΓΙΣΜΟΣ ΤΕΛΙΚΟΥ ΠΟΣΟΥ T=A*(1+E)*((1+Ε)**N-1)/Ε! ΒΗΜΑ 3. ΕΚΤΥΠΩΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ WRITE(6,10) A,E,N,K 10FORMAT(1X, ETHSIO POSO=,F10.2, EURO & & /1Χ, EPITOKIO=,F5.2, & & /1Χ, ETH=,I3, XRONIA, & & /1Χ, TELIKO POSO=,F10.2, EURO ) END PROGRAM EXAMPLE42 37

Άσκηση 2 Να γραφεί πρόγραμμα που θα διαβάζει τα στοιχεία μιας πιστωτικής κάρτας: xxxx-xxxx-xxxx-xxxx και θα εμφανίζει τον αριθμό: xxxxxxxxxxxxxxxx 38

Άσκηση 3 Να διαβαστεί η ακτίνα ενός κύκλου R και να υπολογιστεί α) η περίμετρος P, και β) το εμβαδόν Ε του κύκλου από τους τύπους : P = 2πR, E = πr 2 όπου π = 3.14. 39

Βιβλιογραφία Ν. Καραμπετάκης, Εισαγωγή στη, 2 η Έκδοση, Θεσσαλονίκη: Εκδόσεις Ζήτη, 2011. 40

Σημείωμα Αναφοράς Copyright Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης, Καραμπετάκης Νικόλαος. «Εισαγωγή στον Προγραμματισμό H/Y (). Ο τελεστής ανάθεσης και οι εντολές εισόδου εξόδου». Έκδοση: 1.0. Θεσσαλονίκη 2014. Διαθέσιμο από τη δικτυακή διεύθυνση: http://eclass.auth.gr/courses/ocrs145/.

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/by-sa/4.0/

ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Τέλος Ενότητας Επεξεργασία: Αναστασία Γ. Γρηγοριάδου Θεσσαλονίκη, Χειμερινό Εξάμηνο 2013-2014