ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΗΛΕΚΤΡΟΝΙΚΟ ΥΠΟΛΟΓΙΣΤΗ Ι
|
|
- Μενέλαος Παπακωνσταντίνου
- 9 χρόνια πριν
- Προβολές:
Transcript
1 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΗΛΕΚΤΡΟΝΙΚΟ ΥΠΟΛΟΓΙΣΤΗ Ι Γιαννόπουλος Πλούταρχος Κανιτάκη Ειρήνη - Μαργαρίτα Λάππα Γερτρούδη -Μαρία ΑΘΗΝΑ 2003
2 ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή στους υπολογιστές και στον προγραμματισμό 2 2. Διαγράμματα ροής και ονοματολογία 5 3. Σταθερές και μεταβλητές 7 4. Είσοδος εντολών προγράμματος της Fortran και δεδομένων στον υπολογιστή Εντολές εισόδου Εντολές εξόδου Ένα πλήρες πρόγραμμα Αρχεία Αριθμητικές εντολές Εντολές μεταφοράς Πιo προχωρημένες εντολές εισόδου και εξόδου 62
3 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 2 ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 1.1 Ο ΥΠΟΛΟΓΙΣΤΗΣ Σχηματική παράσταση ενός τυπικού υπολογιστή δίνεται στο Σχ Τα κύρια τμήματα του υπολογιστή είναι η Kεντρική Mονάδα Eπεξεργασίας (entral Processing Unit PU), η Μονάδα Μνήμης, και η Μονάδα Εισόδου / Εξόδου KENTΡIKH MONAΔA EΠEΞEΡΓAΣIAΣ Η κεντρική μονάδα επεξεργασίας (PU) είναι η καρδιά οποιουδήποτε υπολογιστή. Χωρίζεται στη Μονάδα Ελέγχου (ontrol Unit), στην Αριθμητική - Λογική Μονάδα (Arithmetic Logic Unit ALU) και στην Εσωτερική Μνήμη (Internal Memory). H μονάδα ελέγχου μέσα στην κεντρική μονάδα επεξεργασίας ελέγχει όλα τα άλλα τμήματα του υπολογιστή, και η αριθμητική - λογική μονάδα εκτελεί τις μαθηματικές πράξεις. Η εσωτερική μνήμη μέσα στην κεντρική μονάδα επεξεργασίας αποτελείται από μια σειρά από καταχωρητές μνήμης (memory registers) που χρησιμοποιούνται για την προσωρινή αποθήκευση ενδιάμεσων αποτελεσμάτων κατά την εκτέλεση των υπολογισμών. Η μονάδα ελέγχου της κεντρικής μονάδας επεξεργασίας διεκπεραιώνει τις εντολές του προγράμματος. Η μονάδα ελέγχου παίρνει τιμές δεδομένων από τις μονάδες εισόδου ή την κύρια μνήμη, τις αποθηκεύει στους καταχωρητές μνήμης, και επίσης στέλνει τιμές δεδομένων από τους καταχωρητές μνήμης στις μονάδες εξόδου ή στην κύρια μνήμη. Για παράδειγμα, εάν ένα πρόγραμμα δίνει την εντολή να προστεθούν δύο αριθμοί και να σωθεί το αποτέλεσμα, η μονάδα ελέγχου θα πάρει τους δύο αριθμούς από την κύρια μνήμη και θα τους αποθηκεύσει στους καταχωρητές. Στη συνέχεια θα στείλει τους αριθμούς στην αριθμητική μονάδα με την εντολή να τους προσθέσει και να αποθηκεύσει το αποτέλεσμα σε έναν άλλον καταχωρητή. Τελικά, θα πάρει το αποτέλεσμα από αυτόν τον καταχωρητή και θα το αποθηκεύσει πίσω στην κύρια μνήμη ΜΟΝΑΔΑ ΜΝΗΜΗΣ Η μνήμη ενός υπολογιστή χωρίζεται σε δύο κύριους τύπους μνήμης: την κύρια και τη δευτερεύουσα μνήμη. Η κύρια μνήμη είναι πολύ γρήγορη και σχετικά ακριβή. Δεδομένα αποθηκευμένα στην κεντρική μνήμη μπορούν να μεταφερθούν για χρήση σε 100 nsecs ή λιγότερο (μερικές φορές και σε πολύ λιγότερο) σ ένα σύγχρονο υπολογιστή. Επειδή είναι τόσο γρήγορη, η κεντρική μνήμη χρησιμοποιείται για την προσωρινή αποθήκευση του προγράμματος που εκτελείται εκείνη τη στιγμή από τον υπολογιστή, καθώς και των δεδομένων που χρειάζεται το πρόγραμμα. Η κύρια μνήμη δεν χρησιμοποιείται για την μόνιμη αποθήκευση προγραμμάτων και δεδομένων. Το μεγαλύτερο κομμάτι της κύριας μνήμης σβήνεται οποτεδήποτε κλείσει ο υπολογιστής. Λόγω του ότι η κύρια μνήμη είναι ακριβή, αγοράζουμε μόνο τόση μνήμη όση χρειάζεται για να χωρέσει το μεγαλύτερο πρόγραμμα που θα εκτελεστεί
4 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 3 οποιαδήποτε στιγμή. Η δευτερεύουσα μνήμη αποτελείται από μονάδες που είναι πιο αργές και φθηνότερες από την κύρια μνήμη. Μπορούν να αποθηκεύσουν πολύ περισσότερες πληροφορίες για πολύ λιγότερα χρήματα απ ότι η κύρια μνήμη. Επιπρόσθετα, οι περισσότερες μονάδες δευτερεύουσας μνήμης μπορούν να κρατήσουν τα προγράμματα και τα δεδομένα που έχουν αποθηκευθεί σ αυτές οποτεδήποτε κλείσει ο υπολογιστής. Τυπικές μονάδες δευτερεύουσας μνήμης είναι οι σκληροί δίσκοι (hard disks), οι δισκέτες (diskettes), οι ταινίες (tapes) και οι οπτικοί δίσκοι (D ompact Disks). Οι μονάδες δευτερεύουσας μνήμης χρησιμοποιούνται βασικά για την αποθήκευση προγραμμάτων και δεδομένων που δεν χρειάζονται αυτήν τη στιγμή αλλά μπορούν να χρειαστούν κάποια άλλα στιγμή στο μέλλον ΜΟΝΑΔΑ ΕΙΣΟΔΟΥ / ΕΞΟΔΟΥ Τα δεδομένα εισάγονται στον υπολογιστή και εξάγονται από αυτόν μέσω μιας μονάδας εισόδου / εξόδου. Η πιο συνήθης μονάδα εισόδου σ ένα σύγχρονο υπολογιστή είναι το πληκτρολόγιο. Μπορούμε να χρησιμοποιήσουμε το πληκτρολόγιο για το γράψιμο προγραμμάτων και δεδομένων στον υπολογιστή. Άλλες μονάδες εισόδου είναι το ποντίκι (mouse), τα μικρόφωνα, οι σαρωτές (scanners) και oι ψηφιοποιητές (digitizers). Οι μονάδες εξόδου μας επιτρέπουν τη χρήση των δεδομένων που είναι αποθηκευμένα στον υπολογιστή. Οι πιο συνηθισμένες μονάδες εξόδου στους σημερινούς υπολογιστές είναι οι οθόνες και οι εκτυπωτές. Άλλοι τύποι μονάδων εξόδου είναι οι σχεδιογράφοι (plotters) και τα μεγάφωνα. Καταχωρητές Μνήμης Μονάδα Μνήμης Μονάδα Ελέγχου Μονάδα Εισόδου / Εξόδου Περιφερειακές Μονάδες Αριθμητική - Λογική Μονάδα Κεντρική Μονάδα Επεξεργασίας Σχ. 1-1 Σχηματική παράσταση ενός τυπικού υπολογιστή
5 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Βασική Διαδικασία Πρόβλημα Μέθοδος επίλυσης Μέθοδος επίλυσης προσαρμοσμένη στον υπολογιστή Διαγράμματα ροής, Ονοματολογία Τεμαχισμός προγράμματος σε τμήματα Κωδικοποίηση τμημάτων σε γλώσσα υπολογιστή Έλεγχος τμημάτων ξεχωριστά Ένωση ελεγμένων τμημάτων και επανέλεγχος ΠΛΗΡΕΣ ΠΡΟΓΡΑΜΜΑ
6 ΚΕΦΑΛΑΙΟ 2 ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΚΑΙ ΟΝΟΜΑΤΟΛΟΓΙΑ 5 ΚΕΦΑΛΑΙΟ 2 - ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΚΑΙ ΟΝΟΜΑΤΟΛΟΓΙΑ 2.1. ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ Τα διαγράμματα ροής δείχνουν την ακολουθία των εντολών που εκτελεί ο υπολογιστής. Έτσι διευκολύνεται η κατανόηση του τρόπου επίλυσης του προβλήματος. Συμβολισμοί γενικά αποδεκτοί (της American Standards Association) για την κατανόηση των διαγραμμάτων ροής: είσοδος έξοδος To ορθογώνιο χρησιμοποιείται για να περιέχει ομάδα εντολών χωρίς μεταφορά ελέγχου είσοδος ΝΑΙ έξοδος O ρόμβος χρησιμοποιείται για να περιέχει ομάδα εντολών μεταφοράς με όρους ΟΧΙ έξοδος είσοδος έξοδος Αυτό το σχήμα χρησιμοποιείται για να περιέχει εντολές μεταφοράς χωρίς όρους είσοδος έξοδος To τραπέζιο χρησιμοποιείται για να περιέχει εντολές διαβάσματος δεδομένων και εκτυπώσεως αποτελεσμάτων
7 ΚΕΦΑΛΑΙΟ 2 ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΚΑΙ ΟΝΟΜΑΤΟΛΟΓΙΑ ΟΝΟΜΑΤΟΛΟΓΙΑ Μνημονικά: π.χ. MAX DIST AVDIST NV urrent MAXimum (τρέχων μέγιστος) DISTance (απόσταση) ΑVerage DISTance (μέση απόσταση) Number of Values (αριθμός τιμών) Στοιχεία μιας λίστας ή ενός πίνακα: π.χ. άλγεβρα v i v 6 t i,j Fortran V(I) V(6) T(I,J)
8 ΚΕΦΑΛΑΙΟ 3 ΣΤΑΘΕΡΕΣ ΚΑΙ ΜΕΤΑΒΛΗΤΕΣ 7 ΚΕΦΑΛΑΙΟ 3 - ΣΤΑΘΕΡΕΣ ΚΑΙ ΜΕΤΑΒΛΗΤΕΣ 3.1. Η ΑΛΦΑΒΗΤΟΣ ΤΗΣ FORTRAN Oι χαρακτήρες που χρησιμοποιούνται στην FORTRAN είναι τριών κατηγοριών: Τα κεφαλαία γράμματα A B D E F G H I J K L Μ N O P Q R S T U V W X Y Z Oι αριθμοί Oι ειδικοί χαρακτήρες + - * / = ( ) '., $ : Παρατήρηση: Για να αποφευχθεί κάθε αμφιβολία συνιστάται η προσεκτική γραφή με το χέρι των ακόλουθων χαρακτήρων της FORTRAN: γράμμα αριθμός 0 Ø Ι 1 Ζ 2 Τ 7 S ΣΤΑΘΕΡΕΣ Σταθερή είναι ένας αριθμός που δεν μεταβάλλεται κατά την διάρκεια εκτέλεσης του προγράμματος. Πιο συγκεκριμένα: Οι χαρακτήρες είναι σταθερές. Οποιοσδήποτε συνδυασμός αυτών των χαρακτήρων με ή χωρίς δεκαδικό σημείο είναι σταθερή, π.χ Ο πρώτος χαρακτήρας των σταθερών μπορεί να είναι το πρόσημο + ή -. Το + είναι προαιρετικό για θετικές σταθερές, ενώ το - είναι υποχρεωτικό για αρνητικές σταθερές. Κανένας άλλος χαρακτήρας από τους παραπάνω δεν επιτρέπεται στις σταθερές. Στη FORTRAN γίνεται διάκριση μεταξύ σταθερών χωρίς δεκαδικό σημείο, που καλούνται ακέραιες σταθερές, και σταθερών με δεκαδικό σημείο, που καλούνται πραγματικές σταθερές. Αυτή η διάκριση οφείλεται στο ότι οι δύο τύποι των σταθερών αποθηκεύονται στη μνήμη του υπολογιστή κατά τελείως διαφορετικό τρόπο και η αριθμητική τους επεξεργασία γίνεται επίσης κατά διαφορετικό τρόπο.
9 ΚΕΦΑΛΑΙΟ 3 ΣΤΑΘΕΡΕΣ ΚΑΙ ΜΕΤΑΒΛΗΤΕΣ 8 Παραδείγματα ακέραιων σταθερών: Παραδείγματα πραγματικών σταθερών: Ένας άλλος τρόπος παράστασης πραγματικών σταθερών, που απλοποιεί το γράψιμο πολύ μεγάλων ή πολύ μικρών αριθμών, είναι ο ακόλουθος: +yen +y 10 n δηλαδή ο αριθμός y με ή χωρίς δεκαδικά ψηφίο ακολουθείται από το γράμμα Ε (για "εκθέτη") και από μια ακέραια σταθερή n (μονοψήφια η διψήφια) ως δύναμη του 10, των οποίων το γινόμενο +y 10 n δίνει την σταθερή. Παραδείγματα: 5.0Ε-12-8Ε Ε11 -.2Ε0 13Ε04 Η ελάχιστη και η μέγιστη τιμή των σταθερών εξαρτάται από τον τύπο του υπολογιστή ΜΕΤΑΒΛΗΤΕΣ Μεταβλητή είναι ένα όνομα που περιέχει μια ποσότητα που μπορεί να μεταβάλλεται κατά την διάρκεια εκτέλεσης του προγράμματος. Στη FORTRAN, όπως και στην άλγεβρα, δίνονται ονόματα στις μεταβλητές ποσότητες. Στη FORTRAN όμως επιπρόσθετα: Σε κάθε απλό όνομα προσδιορίζεται αυτόματα μια "θέση" μνήμης από το σύστημα του υπολογιστή. Ο τύπος του ονόματος δηλώνει εάν είναι ακέραιος ή πραγματικός ο αριθμός στην δεδομένη "θέση" μνήμης. Το όνομα των μεταβλητών στη FORTRAN ακολουθεί τους εξής κανόνες: Κάθε όνομα μεταβλητής αποτελείται από αλφαριθμητικούς χαρακτήρες που ανήκουν στους A B D E F G H I J K L M N O P Q R S T U V W X Y Z Άλλοι χαρακτήρες όπως., ( ) $ κλπ. δεν επιτρέπονται. Επιτρέπονται μέχρι 6 χαρακτήρες σ' ένα όνομα. Ο πρώτος χαρακτήρας του ονόματος πρέπει να είναι αλφαβητικός, και χρησιμοποιείται, για τον καθορισμό του τύπου της μεταβλητής. Εάν ο πρώτος χαρακτήρας είναι ένα από τα γράμματα I, J, Κ, L, Μ και Ν, τότε το όνομα της μεταβλητής αντιστοιχεί σε ακέραιη τιμή και ονομάζεται ακέραια μεταβλητή. Εάν ο πρώτος χαρακτήρας του ονόματος είναι οποιοδήποτε άλλο γράμμα εκτός από ένα από τα προηγούμενα έξι γράμματα, τότε το όνομα αντιστοιχεί σε πραγματική μεταβλητή. Παράδειγμα ακέραιων μεταβλητών: I JMAX KOUNT JAR ΜAXNUM N103 Κ123ΚΚ
10 ΚΕΦΑΛΑΙΟ 3 ΣΤΑΘΕΡΕΣ ΚΑΙ ΜΕΤΑΒΛΗΤΕΣ 9 Παράδειγμα πραγματικών μεταβλητών: A SUM REAL R2345 OUNT P123XX Κενά ενδιάμεσα στους χαρακτήρες ενός ονόματος επιτρέπονται αλλά δεν λογαριάζουν στο μέτρημα των 6 χαρακτήρων.
11 ΚΕΦΑΛΑΙΟ 3 ΣΤΑΘΕΡΕΣ ΚΑΙ ΜΕΤΑΒΛΗΤΕΣ 10 ΑΣΚΗΣΕΙΣ KEΦΑΛΑΙΟΥ 3 Άσκηση 3.1 Ποιές από τις ακόλουθες σταθερές είναι ακέραιες, ή πραγματικές, ή λάθος; Λύση 1) πραγματική 2) ακέραιη 3). 152.Ο λάθος (Ο είναι γράμμα) 4) πραγματική 5). 1,205,672 λάθος (δύο,) 6). -15 ακέραιη 7) πραγματική 8) λάθος (δύο τελείες) 9). 0 ακέραιη 10). 0.0 πραγματική 11) πραγματική 12) ,529,6 λάθος (δύο,) Άσκηση 3.2 Ποιές από τις ακόλουθες μεταβλητές είναι ακέραιες, ή πραγματικές, ή λάθος; Λύση 1). BOLTS πραγματική 2). RATE πραγματική 3). NΟ ακέραιη 4). TYPE 2 πραγματική 5). 14TH λάθος (πρώτος χαρακτήρας) 6). JOB NO ακέραιη (αγνοούνται τα κενά) 7). J3 ακέραιη 8). OST. λάθος (τελεία) 9). SAVINGS λάθος (7 χαρακτήρες) 10). PENE πραγματική 11). A1B23 πραγματική 12). K ακέραιη Άσκηση 3.3 Ποιές από τις ακόλουθες σταθερές είναι ακέραιες, ή πραγματικές, ή λάθος; 1) ) ). 5.2E2.5 4). 6E10 5). 4.0E121 6) ). E+17 8) )
12 ΚΕΦΑΛΑΙΟ 3 ΣΤΑΘΕΡΕΣ ΚΑΙ ΜΕΤΑΒΛΗΤΕΣ 11 10) ). 1,205, ). 721Ε-2 13). 10,00 14) ). 7E ). 9.81E 17) Άσκηση 3.4 Ποιές από τις ακόλουθες μεταβλητές είναι ακέραιες, ή πραγματικές, ή λάθος; 1). L1.3 2). AB 3). A B 4). STRAIN2 5). 1PAY 6). A3,T 7). I123 8). XRAY 9). I2+1 10). FORTRAN 11). A1B2 12). $300 13). L55L 14). Y-BAR Άσκηση 3.5 Ποιές από τις ακόλουθες σταθερές έχουν την ίδια τιμή; 1) Ε-2 2) ). 1Ε-2 4) Ε-12 5). 100.Ε-4 6). 1.Ε-2 7) Ε-4 8) Ε+03 9)..0001Ε+2 10) Ε+04 11). 0.1Ε0 12) Ε-06
13 ΚΕΦΑΛΑΙΟ 4 ΕΙΣΟΔΟΣ ΕΝΤΟΛΩΝ ΠΡΟΓΡΑΜΜΑΤΟΣ ΤΗΣ FORTRAN ΚΑΙ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ 12 ΚΕΦΑΛΑΙΟ 4 - ΕΙΣΟΔΟΣ ΕΝΤΟΛΩΝ ΠΡΟΓΡΑΜΜΑΤΟΣ ΤΗΣ FORTRAN ΚΑΙ ΔEΔOMENΩN ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ 4.1. ΕΙΣΟΔΟΣ ΤΩΝ ΕΝΤΟΛΩΝ ΤΗΣ FORTRAN ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ Η γλώσσα FORTRAN αρχικά σχεδιάστηκε για να χρησιμοποιείται με διάτρητες κάρτες σαν μέσο είσοδο στον υπολογιστή. Για να διευκολύνουν τον ompiler (μεταφραστή) να αναγνωρίζει τα διαφορετικά είδη εντολών της FORTRAN, οι αρχικοί σχεδιαστές της FORTRAN προσδιόρισαν διάφορα τμήματα επάνω στην ογδοντάστηλη κάρτα όπου μπορούσε να γραφτεί μια εντολή. Οι σχετικοί κανόνες είναι οι ακόλουθοι: Οι 80 στήλες της κάρτας χωρίζονται σε τέσσερα τμήματα (Σχ. 4.1), το καθένα με διαφορετικό σκοπό: Στήλες 1-5 Αριθμός εντολής. Η στήλη 1 χρησιμοποιείται και για το δείκτη σχολίου () Στήλη 6 Δείκτης συνέχισης της εντολής της προηγούμενης γραμμής Στήλες 7-72 Εντολή της FORTRAN Στήλες Αρίθμηση καρτών προγράμματος Σχήμα 4.1 Κάρτα εντολών της FORTRAN με 80 στήλες και 4 τμήματα Γενικές διευκρινίσεις των παραπάνω θα δοθούν εδώ, ενώ περισσότερες λεπτομέρειες δίνονται κατά την περιγραφή των διαφόρων εντολών στα επόμενα κεφάλαια αυτών των Σημειώσεων. Ο αριθμός μιας εντολής χρησιμεύει σαν τρόπος αναγνωρίσεως της εντολής, στην οποία γίνεται αναφορά κάπου αλλού στο πρόγραμμα και είναι προαιρετικός, εφόσον δεν γίνεται αναφορά στη συγκεκριμένη εντολή σε κάποιο άλλο σημείο του προγράμματος. Ο αριθμός αυτός δεν πρέπει να χρησιμοποιηθεί και ως αριθμός άλλων εντολών στο
14 ΚΕΦΑΛΑΙΟ 4 ΕΙΣΟΔΟΣ ΕΝΤΟΛΩΝ ΠΡΟΓΡΑΜΜΑΤΟΣ ΤΗΣ FORTRAN ΚΑΙ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ 13 συγκεκριμένο πρόγραμμα. Οι αριθμοί εντολών δεν απαιτείται να βρίσκονται σε κάποια σειρά (π.χ. ο αριθμός εντολής 10 μπορεί να ακολουθεί τον αριθμό εντολής 90), αλλά αριθμοί εντολών σε αύξουσα σειρά είναι ευκολότεροι στην παρακολούθηση τους. Ο αριθμός εντολής μπορεί να είναι οποιοσδήποτε από 1 μέχρι και μπορεί να τοποθετηθεί οπουδήποτε στο πεδίο των στηλών 1-5. Κενά μεταξύ των ψηφίων του αριθμού και μηδενικά πριν τον αριθμό αγνοούνται, αλλά καλόν είναι να μην χρησιμοποιούνται. Η πληκτρολόγηση ενός "" στη στήλη 1 μιας γραμμής ενός προγράμματος σημαίνει ότι οτιδήποτε έχει διατρηθεί στις στήλες 2-72 δεν λαμβάνεται υπόψη από τον υπολογιστή κατά την εκτέλεση του προγράμματος αλλά αποτελεί σχόλιο του προγραμματιστή και εκτυπώνεται μαζί με όλες τις άλλες εντολές της FORTRAN. Αυτή η πληροφορία γράφεται από τον προγραμματιστή για να περιγράψει συνοπτικά τι κάνουν οι επόμενες εντολές της FORTRAN έτσι ώστε η παρακολούθηση της λογικής του προγράμματος να είναι πιο εύκολη. Αυτό είναι πολύ χρήσιμο για τον έλεγχο ή την εντόπιση λαθών ενός προγράμματος καθώς επίσης και για την επέκταση ενός προγράμματος στο μέλλον από τον ίδιο ή άλλους προγραμματιστές. Για τους λόγους αυτούς συνιστάται η χρήση γραμμών με σχόλια σε διάφορα σημεία του προγράμματος. Μια γραμμή σχολίων μπορεί να τοποθετηθεί οπουδήποτε μεταξύ της αρχής και του τέλους ενός προγράμματος εκτός μεταξύ των γραμμών μιας εντολής που επεκτείνεται σε περισσότερες από μια γραμμές. Μια γραμμή σχολίων δεν μπορεί να επεκτείνεται σε άλλες γραμμές μέσω του δείκτη συνέχισης της στήλης 6, αλλά πρέπει κάθε γραμμή σχολίων να αρχίζει με το γράμμα. Στις στήλες 7 έως 72 πληκτρολογούνται οι εντολές της FORTRAN. Μια εντολή της FORTRAN μπορεί να είναι μερικές φορές πολύ μεγάλη για να χωρέσει σε μια γραμμή, δηλαδή στις στήλες Σ' αυτή την περίπτωση το υπόλοιπο τμήμα της εντολής μπορεί να πληκτρολογηθεί σε μια ή περισσότερες γραμμές αρχίζοντας από τη στήλη 7, ή σε οποιαδήποτε επόμενη στήλη. Για να δηλωθεί ότι μια γραμμή είναι συνέχεια της προηγούμενης γραμμής, αρκεί να πληκτρολογηθεί οποιοσδήποτε χαρακτήρας εκτός από το μηδέν στη στήλη 6 αυτής της γραμμής. Παράδειγμα: ----!----!----!----!----!----!----!----!----!---- (μετρητής στηλών) WRITE(6,1000) STYN,LTYK,ABE,Κ125,DLMA,DMA,XTY,VAL,SISA,LDYK, 1 MAX,ΜΙΝ,STAT,PEN,BONUS,FIR,MEAN,TABLE,FLOR,ΜΧ12. 2 ΜΧ34 Οι στήλες 73 έως 80 δεν θεωρούνται τμήμα του προγράμματος, αλλά στο παρελθόν που το γράψιμο των προγραμμάτων γινόταν σε κάρτες, προαιρετικά μπορούσαν να χρησιμοποιηθούν οι στήλες αυτές ως αρίθμηση του πακέτου των καρτών ενός προγράμματος. Αυτό ήταν χρήσιμο για παράδειγμα όταν ένα πακέτο από κάρτες έπεφτε στο πάτωμα, οπότε μπορούσαν εύκολα να τοποθετηθούν πάλι στη σωστή σειρά βάσει της αρίθμησης τους. Στις στήλες 73 έως 80 επιτρεπόταν να χρησιμοποιηθούν οποιοιδήποτε αλφαριθμητικοί χαρακτήρες. Γινόταν η σύσταση όμως στις στήλες να χρησιμοποιούνται αλφαβητικοί χαρακτήρες που είχαν σχέση με το όνομα του προγράμματος και στις στήλες αριθμοί.
15 ΚΕΦΑΛΑΙΟ 4 ΕΙΣΟΔΟΣ ΕΝΤΟΛΩΝ ΠΡΟΓΡΑΜΜΑΤΟΣ ΤΗΣ FORTRAN ΚΑΙ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ 14 Παράδειγμα: !----!----!----!----!----!----!----! (μετρητής στηλών) NAME0010 NAME0020 Σήμερα οι διάτρητες κάρτες έχουν καταργηθεί, και δεν αποτελούν το μέσον εισόδου ενός προγράμματος στον υπολογιστή, αλλά υπάρχουν άλλα μέσα εισόδου (βλέπε 4.4, Κεφ. 5 και Κεφ. 8). Για παράδειγμα στην περίπτωση ενός προσωπικού υπολογιστή το πρόγραμμα εισάγεται απ' ευθείας στον υπολογιστή πληκτρολογώντας τις εντολές, μια ανά γραμμή. Οι μόνες διαφορές από τις κάρτες είναι ότι: Η αρίθμηση των στηλών 73 έως 80 δεν έχει νόημα τώρα και πληκτρολογούνται μόνο οι στήλες 1 έως 72. Η πληκτρολόγηση του περιεχόμενου κάθε μιας γραμμής ολοκληρώνεται πατώντας το πλήκτρο Enter. Όταν μια εντολή του προγράμματος είναι μικρή σε μήκος και υπάρχουν κενά μεταξύ του τέλους της και της στήλης 72, τότε δεν χρειάζονται να πληκτρολογηθούν και τα κενά αυτά. Απλώς πληκτρολογείται μόνο η εντολή και μετά πατιέται το πλήκτρο Enter. Οι σχετικοί κανόνες για τις ογδοντάστηλες κάρτες ισχύουν μέχρι και σήμερα σ όλες τις παραλλαγές (π.χ. FORTRAN I, FORTRAN II, FORTRAN IV, FORTRAN 66, FORTRAN 77, Fortran 90 και Fortran 95) της αρχικής μορφής της FORTRAN, με τη διαφορά ότι σήμερα αντί για κάρτες με στήλες έχουμε γραμμές με στήλες. Όλα αυτά τα χρόνια υπήρξε συνεχής εξέλιξη της γλώσσας και οι διάφορες εκδόσεις της είναι οι ακόλουθες: FORTRAN I (1954) FORTRAN II (1958) FORTRAN IV (πρότυπο του ASA [American Standards Association] το 1962) FORTRAN 66 (πρότυπο του ANSI [American Νational Standards Institute] το 1966) FORTRAN 77 (πρότυπο του ANSI το 1966) Fortran 90 (πρότυπο του ANSI το 1992) Fortran 95 (πρότυπο του ANSI το 1997) Mε την Fortran 90/95 υπήρξε δραματική βελτίωση των προηγούμενων εκδόσεων της γλώσσας. Μεταξύ των πολλών άλλων δεν υπάρχει πλέον η απαίτηση συμμόρφωσης με τους κανόνες των στηλών (free-source format). Οι συντάκτες της Fortran 90 και Fortran 95 ήταν προσεκτικοί να κάνουν τις εκδόσεις αυτές συμβατές με την FORTRAN 77 και τις προηγούμενες εκδόσεις. Έτσι ένα παλαιό πρόγραμμα γραμμένο στην FORTRAN 77, ή σε προηγούμενες εκδόσεις, τρέχει εν γένει με την Fortran 90/95, ενώ το αντίστροφο δεν ισχύει. Σήμερα το καλύτερο είναι να χρησιμοποιεί κάποιος την Fortran 95, αλλά να ξέρει και την FORTRAN 77 γιατί υπάρχει διαθέσιμος πολύ μεγάλος αριθμός χρήσιμων προγραμμάτων σε FORTRAN 77.
16 ΚΕΦΑΛΑΙΟ 4 ΕΙΣΟΔΟΣ ΕΝΤΟΛΩΝ ΠΡΟΓΡΑΜΜΑΤΟΣ ΤΗΣ FORTRAN ΚΑΙ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ ΕΙΣΟΔΟΣ ΤΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΟΝ ΥΠΟΠΟΓΙΣΤΗ Εκτός από τις εντολές της FORTRAN που πρέπει να πληκτρολογηθούν σύμφωνα με τους κανόνες που προαναφέρθηκαν, και τα δεδομένα ενός προγράμματος μπορούν να πληκτρολογηθούν για είσοδο στον υπολογιστή. Στην περίπτωση όμως των δεδομένων δεν ισχύουν οι κανόνες σχετικά με τις στήλες, αλλά επιτρέπεται η πληκτρολόγηση των δεδομένων σε οποιαδήποτε από τις στήλες. Οι μόνοι κανόνες που πρέπει να ακολουθούνται σχετικά με τις θέσεις των δεδομένων πάνω σε κάθε γραμμή, είναι ότι πρέπει να συμφωνούν με τις θέσεις που δίνονται στις εντολές της FORTRAN για διάβασμα δεδομένων (εντολές READ και FORMAT που αναπτύσσονται στο Κεφ. 5) ΠΡΑΚΤΙΚΗ ΠΡΟΕΤΟΙΜΑΣΙΑ ΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΓΙΑ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ Η επίλυση ενός προβλήματος από τον υπολογιστή συνήθως αρχίζει με τη σύνταξη ενός διαγράμματος ροής (Κεφ. 2). Στη συνέχεια το διάγραμμα ροής πρέπει να κωδικοποιηθεί σε γλώσσα FORTRAN (ή οποιαδήποτε άλλη γλώσσα) σαν μια σειρά εντολών της γλώσσας αυτής. Το σύνολο των εντολών αυτών αποτελεί το πρόγραμμα. Αυτό πρέπει να εισαχθεί στον υπολογιστή, να εκτελεσθεί και να βγουν τα αποτελέσματα. Ένα παράδειγμα προετοιμασίας ενός στοιχειώδους προγράμματος για είσοδο στον υπολογιστή δίνεται στο κεφάλαιο 7. Το διάγραμμα ροής του προγράμματος δίνεται στο Σχ. 7.1, και η κωδικοποίησή του σε γλώσσα FORTRAN, μαζί με τα δεδομένα και τα αποτελέσματα, δίνεται στο Σχ Το ίδιο πρόγραμμα, με τα δεδομένα και τα αποτελέσματα, γραμμένα σε αρχεία δίνεται στο Κεφ. 8 (Άσκηση 8.1). Η ακριβής ερμηνεία των εντολών του προγράμματος δεν θα είναι προς το παρόν πλήρως κατανοητή, γιατί απαιτούνται οι γνώσεις των κεφαλαίων 5 και 6. Πάντως η γενική μορφή των εντολών και η θέση τους πάνω στις στήλες των γραμμών ακολουθούν όσα αναπτύχθηκαν σ' αυτό το κεφάλαιο ΤΡΟΠΟΙ ΕΙΣΟΔΟΥ ΠΡΟΓΡΑΜΜΑΤΩΝ ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ Παλαιότερα η είσοδος προγραμμάτων και δεδομένων στον υπολογιστή γινόταν μέσω διάτρητων καρτών που διαβάζονταν από την περιφερειακή συσκευή ανάγνωσης καρτών. Σήμερα η χρήση καρτών έχει καταργηθεί και τα προγράμματα και δεδομένα πληκτρολογούνται από τον χρήστη και αποθηκεύονται σε αρχεία (Κεφ. 8). Ο χρήστης μπορεί να δει και επεξεργαστεί αυτά τα αρχεία και να τα συνδυάσει καταλλήλως για εκτέλεση από τον υπολογιστή. Τα αρχεία μπορεί να αποθηκευθούν στη δευτερεύουσα μνήμη του υπολογιστή, που συνήθως αποτελείται από σκληρούς δίσκους (hard disks), οπτικούς δίσκους (compact disks), ταινίες (tapes) και δισκέτες (diskettes).
17 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 16 ΚΕΦΑΛΑΙΟ 5 - ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 5.1. ΕΙΣΑΓΩΓΗ Η αριθμητική τιμή μιας μεταβλητής σ ένα πρόγραμμα μπορεί να ορισθεί χρησιμοποιώντας την ακόλουθη εντολή όνομα μεταβλητής = αριθμητική τιμή της μεταβλητής π.χ. X = Αποτέλεσμα αυτής της εντολής είναι να δημιουργηθεί μια θέση μνήμης στον υπολογιστή με ονομασία Χ και να αποθηκευθεί στη μνήμη αυτή η τιμή Έχουμε επομένως δημιουργία δεδομένων μέσα στο πρόγραμμα κατά άμεσο τρόπο. Ένα μειονέκτημα όμως αυτής της εντολής είναι ότι ορίζει μια συγκεκριμένη τιμή σε μια μεταβλητή, χωρίς ο χρήστης να μπορεί να την τροποποιήσει κατά τη διάρκεια εκτέλεσης του προγράμματος. Για να το κάνει αυτό, πρέπει ο προγραμματιστής αφενός να μπει πάλι με τον Επεξεργαστή (Εditοr) στο αρχείο του προγράμματος και να αλλάξει την τιμή της μεταβλητής και αφετέρου να χρησιμοποιήσει τον Μεταφραστή (ompiler) για τη μετάφραση (ompilation) του προγράμματος από γλώσσα FORTRAN σε γλώσσα μηχανής (βλέπε Κεφ. 4). Όλα αυτά βέβαια είναι αρκετά χρονοβόρα. Υπάρχει όμως, ένας εναλλακτικός τρόπος εισαγωγής τιμής στη μεταβλητή Χ του προηγούμενου παραδείγματος, μέσω της εντολής READ που αναπτύσσεται παρακάτω, όπως και σε κάθε άλλη μεταβλητή του προγράμματος, χρησιμοποιώντας δεδομένα που μεταφέρονται στο πρόγραμμα κατά τη διάρκεια της εκτέλεσής του. Η είσοδος των δεδομένων στον υπολογιστή γίνεται μέσω των Μονάδων Εισόδου. Μια τέτοια μονάδα είναι το πληκτρολόγιο, το οποίο χρησιμοποιείται ευρύτατα για την εισαγωγή δεδομένων. Τα δεδομένα μπορούν να εισαχθούν στον υπολογιστή και από άλλες Μονάδες Εισόδου, όπως π.χ. Μονάδα Μαγνητικών Δισκετών, Μονάδα D, κλπ. διαβάζοντας αρχεία, όπως αναλυτικά περιγράφεται στο Κεφ Η ΕΝΤΟΛΗ READ ΜΕ FORMAT Οι πληροφορίες που χρειάζεται ο υπολογιστής για να μπορέσει να διαβάσει αριθμούς, δηλαδή να μεταφέρει αριθμούς από το μέσον εισόδου (π.χ. πληκτρολόγιο) στη μνήμη του υπολογιστή, είναι οι ακόλουθες: 1. Εντολή να διαβαστούν αριθμοί. 2. Πού βρίσκονται οι αριθμού (π.χ. στην αμέσως επόμενη γραμμή ή γραμμές δεδομένων που θα εισαχθούν από το πληκτρολόγιο). 3. Πού να αποθηκευθεί κάθε αριθμός στη μνήμη του υπολογιστή. 4. Πόσοι αριθμοί να διαβαστούν. Όλες οι παραπάνω πληροφορίες 1. μέχρι 4. δίνονται στη FORTRAN μέσω της εντολής READ, η γενική μορφή της οποίας είναι η ακόλουθη:
18 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 17 READ (αρ. μονάδας, αρ. FORMAT) Vl, V2,..., Vn όπου αριθμός μονάδας είναι ένας ακέραιος που ορίζει τη μονάδα όπου βρίσκονται οι αριθμοί για διάβασμα από τον υπολογιστή. Θα έχει την τιμή 5 αν τα δεδομένα δίνονται από τη βασική μονάδα εισόδου, που είναι το πληκτρολόγιο. Αντί του 5 μπορεί να χρησιμοποιηθεί ένα αστεράκι (*). Περισσότερα για άλλες μονάδες δίνονται στο Κεφ. 8. αριθμός FORMAT είναι ένας αριθμός που επιλέγεται από τον προγραμματιστή και αναφέρεται σε μια συγκεκριμένη εντολή FORMAT. Vl, V2,..,Vn είναι τα ονόματα μεταβλητών των οποίων η τιμή θα διαβαστεί από τον υπολογιστή και θα αποθηκευθεί στη μνήμη του. Παράδειγμα βασική μονάδα εισόδου (πληκτρολόγιο) READ(*,1000) ISIZE, IWIDT, IHEIGH ονόματα μεταβλητών αριθμός FORMAT Η παραπάνω εντολή READ στον υπολογιστή μπορεί να ερμηνευθεί ως εξής: Διάβασε τρεις αριθμούς από μια ή περισσότερες γραμμές και αποθήκευσε αυτούς τους τρεις αριθμούς σε θέσεις μνήμης με ονόματα ISIZE, IWIDT, IHEIGH αντίστοιχα. Περισσότερες πληροφορίες για το πώς είναι γραμμένοι οι αριθμοί στις γραμμές δίνονται στην εντολή FORMAT με αριθμό Εκτός από τις πληροφορίες 1. έως 4. (που αναφέρθηκαν παραπάνω) και που παρέχονται μέσω της εντολής READ, ο υπολογιστής χρειάζεται τις ακόλουθες επιπρόσθετες πληροφορίες για να μπορέσει να διαβάσει τους αριθμούς: 5. Πόσοι αριθμοί είναι σε κάθε γραμμή. 6. Πόσους χαρακτήρες (ψηφία) έχει κάθε αριθμός. 7. Ποιός είναι ο τύπος κάθε αριθμού - ακέραιος ή πραγματικός. 8. Πόσα είναι τα δεκαδικά ψηφία κάθε πραγματικού αριθμού. 9. Πόσα κενά υπάρχουν μεταξύ διαδοχικών αριθμών σε κάθε γραμμή. 10. Το ότι οι πληροφορίες αναφέρονται στις πληροφορίες Οι παραπάνω πληροφορίες 5. έως 9. αφορούν τον τρόπο εισαγωγής των αριθμών στον υπολογιστή μέσω του πληκτρολόγιου (ή γενικότερα τον τρόπο γραφής των αριθμών στο μέσον εισόδου) και όλες αυτές οι πληροφορίες δίνονται μέσω της εντολής FORMAT. Η πληροφορία 10. συνδέει τις πληροφορίες 1. έως 4. με τις πληροφορίες 5. έως 9. και δίνεται μέσω του αριθμού FORMAT που περιγράφεται στη συνέχεια. Η γενική μορφή της εντολής FORMAT είναι η ακόλουθη:
19 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 18 αριθμός FORMAT (f1, f2,...fn) όπου αριθμός είναι ένας αριθμός που επιλέγεται από τον προγραμματιστή και αναφέρεται στη συγκεκριμένη εντολή FORMAT. Μέσω αυτού του αριθμού παρέχεται η πληροφορία 10., δηλαδή συνδέεται μια εντολή READ (πληροφορίες 1. έως 4.) με μια συγκεκριμένη εντολή FORMAT (πληροφορίες 5. έως 9.). Ο αριθμός αυτός μπορεί να έχει οποιαδήποτε ακέραια τιμή μεταξύ 1 και 9999 αλλά δεν πρέπει να είναι ίδιος με τον αριθμό οποιασδήποτε άλλης εντολής. Η εντολή FORMAT μπορεί να τοποθετηθεί οπουδήποτε μέσα στο πρόγραμμα. Μερικοί προγραμματιστές προτιμούν να τοποθετούν όλες τις εντολές FORMAT στην αρχή ή στο τέλος του προγράμματος τους ενώ άλλοι προτιμούν να τις τοποθετούν αμέσως μετά την αντίστοιχη εντολή READ. fl, f2,..., fn είναι κώδικες που δίνουν τις πληροφορίες 5. έως 9. για όλες τις μεταβλητές V1, V2,..., Vn που αναφέρονται στην εντολή READ. Υπάρχουν διάφοροι τύποι κωδίκων δεδομένων, οι συνηθέστεροι από αυτούς περιγράφονται στην συνέχεια: α) Τύπος Ι: αναφέρεται σε ακέραιους αριθμούς β) Τύπος F: αναφέρεται σε πραγματικούς αριθμούς γ) Τύπος Χ: αναφέρεται στα κενά μεταξύ αριθμών α) Κώδικας τύπου Ι Ο κώδικας αυτός αναφέρεται σε ακέραιους αριθμούς και η γενική μορφή του είναι η εξής: όπου Ιw Ι δηλώνει ότι πρόκειται να διαβαστεί ακέραιος (Integer) αριθμός w δηλώνει το πλάτος του πεδίου τoυ ακέραιου, δηλαδή το μέγιστο αριθμό συνολικών χαρακτήρων (ψηφίων, προσήμων, κενών) του ακέραιου π.χ πλάτος πεδίου = πλάτος πεδίου = 6 bb143 = 143 πλάτος πεδίου = 5 143b = 1430 πλάτος πεδίου = 4 όπου b = κενό (blank) Κενά μέσα στο πεδία του αριθμού, πριν ή μεταξύ ή μετά τα ψηφία του αριθμού, θεωρούνται σαν μηδενικά. Επομένως ο αριθμός πρέπει να τοποθετείται στο δεξιά άκρο του πεδίου.
20 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 19 Παράδειγμα με I !----! (μετρητής στηλών) = = Παράδειγμα Εντολές FORTRAN ----!----!----!----!----! (μετρητής στηλών) READ(5,1000) Ι,J,K 1000 FORMAT (I4,II,Ι2) READ(*,2000) L,Μ,Ν 1000 FORMAT (I4,II,Ι2) Δεδομένα ----!----! (μετρητής στηλών) Τιμές στη μνήμη I = 315 J = 4 K = 56 L = 450 M = 0 N = -7 Κάθε μια από τις παραπάνω δύο εντολές READ προσδιορίζει ότι πρόκειται να διαβαστούν τρεις αριθμοί και θα τοποθετηθούν σε θέσεις μνήμης με ονόματα I, J, K, και L, M, Ν αντίστοιχα. Η εντολή FORMAT έχει τρεις κώδικες δεδομένων, που σημαίνει ότι τρεις αριθμοί θα διαβαστούν από μια γραμμή. Κενά στο πεδίο των αριθμών θεωρούνται σαν μηδενικά. Το θετικό πρόσημο αριθμών περιττεύει. β) Κώδικας τύπου F Ο κώδικας αυτός αναφέρεται σε πραγματικούς αριθμούς και η γενική μορφή του είναι η εξής: όπου Fw.d F δηλώνει ότι πρόκειται να διαβαστεί πραγματικός αριθμός w δηλώνει το πλάτος του πεδίου του αριθμού (στο οποίο συμπεριλαμβάνονται το πρόσημο, τα ψηφία, το δεκαδικό σημείο του αριθμού) d δηλώνει τον αριθμό των δεκαδικών ψηφίων (ψηφία δεξιά από το δεκαδικό σημείο) Παράδειγμα με F !----! (μετρητής στηλών)
21 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 20 Επιτρέπεται ο συνδυασμός πραγματικών και ακέραιων μεταβλητών σε μια εντολή READ. Χρειάζεται μόνο προσοχή κάθε μεταβλητή να αντιστοιχεί σε σωστό κώδικα δεδομένων στη FORMAT, δηλαδή ακέραιες μεταβλητές να αντιστοιχούν σε Ιw και πραγματικές σε Fw.d, αλλιώς ο υπολογιστής θα δώσει μήνυμα λάθους και θα διακόψει την εκτέλεση του προγράμματος. Παράδειγμα Εντολές FORTRAN ----!----!----!----!----!----! (μετρητής στηλών) READ(*,1000) X,L,Y,M 1000 FORMAT (F3.1,I3,F5.0,I3) Δεδομένα ----!----!----! (μετρητής στηλών) Τιμές στη μνήμη X = 25.0 L = 50 Y = 0. M = 14 γ) Κώδικας τύπου Χ Ο κώδικας αυτός δεν αναφέρεται σε αριθμούς αλλά στα κενά μεταξύ αριθμών και η γενική μορφή του είναι η εξής: nχ όπου n είναι ένας ακέραιος θετικός αριθμός που προσδιορίζει τον αριθμό των κενών μεταξύ των πεδίων δύο αριθμών. Παράδειγμα Εντολές FORTRAN ----!----!----!----!----!----!----! (μετρητής στηλών) READ(*,1000) A,L,N 1000 FORMAT (3X,F3.1,2X,I2,3X,I1) Δεδομένα ----!----!----! (μετρητής στηλών) Τιμές στη μνήμη A = 5.2 L = 20 N = 8
22 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 21 Μια εντολή FORMAT μπορεί να συνδέεται με περισσότερες από μία εντολές READ. Παράδειγμα Εντολές FORTRAN ----!----!----!----!----!----!----! (μετρητής στηλών) READ(*,1000) A1,L1,K FORMAT (F6.3,I4,3X,I5) READ(*,1000) A2,L2,K2 Δεδομένα ----!----!----! (μετρητής στηλών) Τιμές στη μνήμη A1 = L1 = 1672 K1 = A2 = L2 = 437 K2 = Η ΕΝΤΟΛΗ READ XΩΡΙΣ FORMAT Καθώς φάνηκε από την 5.2, οι τιμές των μεταβλητών που διαβάζονται από την εντολή READ πρέπει να πληκτρολογούνται σε ορισμένες στήλες που ορίζονται στην FORMAT. Αυτό αποτελεί πηγή σφαλμάτων και για την αποφυγή τους απαιτείται προσοχή και χρόνος. Μια εναλλακτική μορφή της εντολής READ είναι η ακόλουθη: READ (αρ. μονάδας, *) Vl, V2,..., Vn όπου αριθμός μονάδας είναι ένας ακέραιος που ορίζει την μονάδα όπου βρίσκονται οι αριθμού για διάβασμα από τον υπολογιστή. Θα έχει την τιμή 5 ή ένα αστεράκι (*) αν τα δεδομένα δίνονται από τη βασική μονάδα εισόδου, που είναι το πληκτρολόγιο. Στην περίπτωση αυτή μπορεί να παραλείπεται ο αριθμός μονάδας. Τότε η εντολή παίρνει την ακόλουθη μορφή: READ *, Vl, V2,..., Vn Περισσότερα για άλλες μονάδες δίνονται στο Κεφ. 8. το αστεράκι (*), μετά τον αρ. μονάδας, εννοεί ότι η εισαγωγή δεδομένων θα γίνει με ελεύθερο τρόπο (free FORMAT), δηλαδή χωρίς να χρειάζεται να ακολουθήσουμε ιδιαίτερο τρόπο γραφής των δεδομένων (π.χ. με τόσα δεκαδικά ψηφία, κλπ.). Με άλλα λόγια οι πληροφορίες 5. έως 10. της 5.2 δεν χρησιμοποιούνται. Οι αριθμοί δεν πληκτρολογούνται σε ορισμένες στήλες, αλλά ελεύθερα ο ένας μετά τον άλλο με ένα κόμμα ή με ένα διάστημα μεταξύ τους. Η εισαγωγή των αριθμών χωρίς να προσέχουμε τις στήλες, τα πλάτη των πεδίων και τα δεκαδικά απλοποιεί πολύ την εισαγωγή των δεδομένων. Vl, V2,..,Vn είναι τα ονόματα μεταβλητών των οποίων η τιμή θα διαβαστεί από
23 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 22 Παράδειγμα τον υπολογιστή και θα αποθηκευθεί στη μνήμη του. Εντολές FORTRAN ----!----!----!----!----! (μετρητής στηλών) READ(5,*) ISIZE,IWIDT,IHEIGH ή READ(*,*) ISIZE,IWIDT,IHEIGH ή READ *, ISIZE,IWIDT,IHEIGH Δεδομένα 6,7,8 [Enter] ή [Enter] δηλαδή πληκτρολογούνται οι αριθμοί με ένα κόμμα, ή με ένα κενό, μεταξύ τους και αμέσως μετά πατιέται το πλήκτρο [Enter] Τιμές στη μνήμη ISIZE = 6 IWIDT = 7 IHEIGH = 8 Παράδειγμα Εντολές FORTRAN ----!----!----!----!----! (μετρητής στηλών) READ(*,*) Ι,J,K READ *, L,Μ,Ν Δεδομένα +315,4, Τιμές στη μνήμη I = 315 J = 4 K = 56 L = 450 M = 0 N = -7
24 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 23 ΑΣΚΗΣΕΙΣ KEΦΑΛΑΙΟΥ 5 Άσκηση 5.1 Μια γραμμή περιέχει τους τέσσερις αριθμούς ----!----!----!----!----!----! (μετρητής στηλών) που αρχίζουν στις στήλες 1, 8,14 και 23 αντίστοιχα. Γράψτε τις αναγκαίες εντολές READ και FORMAT για να διαβάσει ο υπολογιστής αυτές τις τιμές στις θέσεις Μ, Ν, Χ και Υ αντίστοιχα. Λύση ----!----!----!----!----!----!----!----! (μετρητής στηλών) READ(5,1000) M,N,X,Y 1000 FORMAT (I5,2X,I3,3X,F7.4,2X,F8.4) Άσκηση 5.2 Περιγράψτε τη μορφή της γραμμής δεδομένων που διαβάζεται από τις εντολές ----!----!----!----!----!----!----!----! (μετρητής στηλών) READ(5,2000) AB,S12,NAME 2000 FORMAT (6X,F7.2,7X,F8.4,2X,I6) Ποιές είναι οι μεγαλύτερες δυνατές θετικές τιμές που μπορούν να διαβαστούν στις τρεις θέσεις AB, X12 ΚΑΙ NAME; Λύση Στήλες 1-6 αγνοούνται (6Χ) 7-13 χρησιμοποιούνται για το σχηματισμό ενός πραγματικού αριθμού με 2 δεκαδικές θέσεις που αποθηκεύεται στο ΑΒ (F7.2) αγνοούνται (7Χ) χρησιμοποιούνται για το σχηματισμό ενός πραγματικού αριθμού με 4 δεκαδικές θέσεις που αποθηκεύεται στο S12 (F8.4) αγνοούνται (2Χ) χρησιμοποιούνται για το σχηματισμό ενός ακέραιου αριθμού που αποθηκεύεται στο ΝΑΜΕ (Ι6) Οι μεγαλύτερες τιμές που μπορούν να διαβαστούν είναι: για το ΑΒ, για το S12, και για το ΝΑΜΕ. Άσκηση 5.3 Ζητείται να βρείτε 4 πιθανά λάθη στις εντολές Λύση ----!----!----!----!----!----!----! (μετρητής στηλών) READ(5,2000) AΧ,NEXT.NUMBER,REAL 2000 FORMAT (3X,I4,I6,7X,F7.2,F8.1
25 ΚΕΦΑΛΑΙΟ 5 ΕΝΤΟΛΕΣ ΕΙΣΟΔΟΥ 24 Λάθος 1: Λάθος 2: Λάθος 3: Λάθος 4: H τελεία μεταξύ NEXT και NUMBER θα έπρεπε να ήταν κόμμα. Ένας αριθμός διαβάζεται στην πραγματική θέση ΑΧ χρησιμοποιώντας προδιαγραφή για ακέραιο Ι4. Υποθέτοντας ότι έχει διορθωθεί το Λάθος 1, ένας αριθμός διαβάζεται στην ακέραιη θέση ΝUMBER χρησιμοποιώντας προδιαγραφή για πραγματικό F7.2. Λείπει η δεξιά παρένθεση.
26 ΚΕΦΑΛΑΙΟ 6 ΕΝΤΟΛΕΣ ΕΞΟΔΟΥ 25 ΚΕΦΑΛΑΙΟ 6 - ΕΝΤΟΛΕΣ ΕΞΟΔΟΥ 6.1. Η ΕΝΤΟΛΗ WRΙΤΕ ΜΕ FORMAT Στο προηγούμενο κεφάλαιο περιγράφτηκαν οι εντολές READ και FORMAT για το διάβασμα δεδομένων από το μέσον εισόδου (π.χ. πληκτρολόγιο) στη μνήμη του υπολογιστή. Το αντίθετο του διαβάσματος δεδομένων είναι το γράψιμο δεδομένων ή αποτελεσμάτων, δηλαδή η μεταφορά δεδομένων ή αποτελεσμάτων από τη μνήμη του υπολογιστή στο μέσον εξόδου (output μονάδα - π.χ. οθόνη). Για να γίνει αυτό χρειάζεται ο υπολογιστής πληροφορίες ανάλογες με εκείνες για τις εντολές εισόδου και οι οποίες είναι οι ακόλουθες: 1. Εντολή να γραφτούν αριθμοί. 2. Πού θα γραφτούν οι αριθμοί (π.χ. στην οθόνη). 3. Πού βρίσκεται κάθε αριθμός στη μνήμη του υπολογιστή. 4. Πόσοι αριθμοί να γραφτούν. 5. Πόσοι αριθμοί να γραφτούν σε κάθε γραμμή. 6. Πόσους χαρακτήρες (ψηφία) έχει κάθε αριθμός. 7. Ποιος είναι ο τύπος κάθε αριθμού (ακέραιος ή πραγματικός). 8. Πόσα είναι τα δεκαδικά ψηφία κάθε πραγματικού αριθμού. 9. Πόσα κενά χρειάζονται μεταξύ διαδοχικών αριθμών. 10. Ότι οι πληροφορίες αναφέρονται στις πληροφορίες Οι πληροφορίες 1. έως 4. παρέχονται μέσω της εντολής WRITE, και οι πληροφορίες 5. έως 9. μέσω της εντολής FORMAT. Η πληροφορία 10. αφορά τη σύνδεση των WRITE και FORMAT. Η γενική μορφή της εντολής WRITE είναι η ακόλουθη: WRITE (αρ. μονάδας, αρ. FORMAT) V1, V2,..., Vn όπου αριθμός μονάδας είναι ένας ακέραιος που ορίζει τη μονάδα όπου θα γραφτούν οι αριθμοί. Θα έχει την τιμή 6 αν οι αριθμοί γραφτούν στη βασική μονάδα εξόδου, που είναι η οθόνη. Αντί του 6 μπορεί να χρησιμοποιηθεί ένα αστεράκι (*). Περισσότερα για άλλες μονάδες δίνονται στο Κεφ. 8. αριθμός FORMAT είναι ο αριθμός μιας εντολής FORMAT που θα χρησιμοποιηθεί για την περιγραφή της μορφής των αριθμών που θα γραφτούν. V1, V2,..., Vn είναι τα ονόματα μεταβλητών, των οποίων η τιμή, που είναι αποθηκευμένη στη μνήμη του υπολογιστή, ζητείται να γραφτεί στη μονάδα εξόδου.
27 ΚΕΦΑΛΑΙΟ 6 ΕΝΤΟΛΕΣ ΕΞΟΔΟΥ 26 Παράδειγμα βασική μονάδα εξόδου (οθόνη) WRITE(*,1000) ISIZE, IWIDT, IHEIGH ονόματα μεταβλητών αριθμός FORMAT Η παραπάνω εντολή WRITE στον υπολογιστή μπορεί να ερμηνευθεί ως εξής: στείλε το περιεχόμενα των θέσεων μνήμης με ονόματα ISIZE, IWIDT, IHEIGH στην οθόνη και εμφάνισε αυτά σύμφωνα με τις οδηγίες που δίνονται στην εντολή FORMAT με αριθμό Η μορφή της FORMAT που συνδυάζεται με εντολή WRITE είναι ίδια με αυτήν που συνδυάζεται με εντολή READ, που περιγράφτηκε στην 5.2, με μόνη διαφορά τον πρώτο χαρακτήρα της FORMAT που περιγράφεται στην επόμενη παράγραφο. Οι τύποι κωδίκων δεδομένων I, F και X για FORMAT που συνδυάζονται με εντολές READ, ισχύουν και για FORMAT που συνδυάζονται με εντολές WRITE. Οι περισσότεροι εκτυπωτές χρησιμοποιούν τον πρώτο χαρακτήρα κάθε γραμμής εκτύπωσης σαν χαρακτήρα ελέγχου που ορίζει που θα εκτυπωθεί η γραμμή σχετικά με την προηγούμενη γραμμή που εκτυπώθηκε. Ο πρώτος δε αυτός χαρακτήρας δεν εκτυπώνεται. Προς το παρόν θα χρησιμοποιείται ένας κενός χαρακτήρας στην FORMAT, δηλ. FORMAT(1X, ), και θα ερμηνεύεται σαν η εντολή: τύπωσε αυτή τη γραμμή στην αμέσως επόμενη γραμμή εκτύπωσης. Περισσότεροι χαρακτήρες ελέγχου της κατακόρυφης κίνησης του χαρτιού στην εκτύπωση θα δοθούν στο Κεφ. 11. Παράδειγμα Εντολές FORTRAN ----!----!----!----!----!----!----!----!----! (μετρητής στηλών) READ(*,1000) NL,WIDTH,ΙHIGH 1000 FORMAT (I3,F8.2,I4) WRITE(*,2000) NL,WIDTH,ΙHIGH 2000 FORMAT (1X,I3,5X,F8.2,5X,I4) Δεδομένα ----!----!----! (μετρητής στηλών) Αποτελέσματα ----!----!----!----!----!----! (μετρητής στηλών) Οι αριθμοί που εκτυπώνονται θα πρέπει να έχουν αρκετά κενά μεταξύ τους έτσι ώστε να αναγνωρίζονται εύκολα από τον χρήστη. Ένας τρόπος για να γίνει αυτό είναι να δοθούν κενά μεταξύ των κωδίκων Ι και F, όπως φαίνεται στο παραπάνω παράδειγμα. Ένας άλλος τρόπος είναι να αυξηθούν τα πεδία των κωδίκων Ι και F, π.χ. για το προηγούμενο παράδειγμα η FORMAT του WRITE θα μπορούσε να γραφτεί και σαν ----!----!----!----!----!----!----!----!----! (μετρητής στηλών) 2000 FORMAT (1X,I3,F13.2,I9)
28 ΚΕΦΑΛΑΙΟ 6 ΕΝΤΟΛΕΣ ΕΞΟΔΟΥ 27 Μια εντολή FORMAT μπορεί να συνδέεται με περισσότερες από μία εντολές WRITE. Παράδειγμα Εντολές FORTRAN ----!----!----!----!----!----!----! (μετρητής στηλών) READ(*,1000) A1,L1,K FORMAT (F6.3,I4,3X,I5) READ(*,1000) A2,L2,K2 WRITE(*,2000) A1,L1,K FORMAT (1X,F6.3,3X,I4,3X,I5) WRITE(*,2000) A2,L2,K2 Δεδομένα ----!----!----! (μετρητής στηλών) Τιμές στη μνήμη A1 = L1 = 1672 K1 = A2 = L2 = 437 K2 = 91 Αποτελέσματα ----!----!----!----!----! (μετρητής στηλών) Υπάρχουν πολλές περιπτώσεις όπου τα δεδομένα ή αποτελέσματα έχουν τον ίδιο κώδικα, με ίδιο εύρος πεδίου και δεκαδικών. Στην περίπτωση αυτή μπορεί να χρησιμοποιηθεί κατάλληλος πολλαπλασιαστής του κώδικα. Παράδειγμα ή ή Εντολές FORTRAN ----!----!----!----!----!----!----! (μετρητής στηλών) READ(*,1000) A1,A2,A3,A4,A FORMAT (F10.3, F10.3, F10.3, F10.3, F10.3) 1000 FORMAT (5F10.3) WRITE(*,2000)A1,A2,A3,A4,A FORMAT (1X, F10.3,3X, F10.3,3X, F10.3,3X, F10.3,3X, F10.3,3X) 2000 FORMAT (1X,5(F10.3,3X)) 6.2. Η ΕΝΤΟΛΗ WRITE XΩΡΙΣ FORMAT Κατ αντιστοιχία της εντολής READ χωρίς FORMAT, που αναπτύχθηκε στην 5.3, υπάρχει και η εντολή WRITE χωρίς FORMAT. Η μορφή της εντολής είναι η ακόλουθη:
29 ΚΕΦΑΛΑΙΟ 6 ΕΝΤΟΛΕΣ ΕΞΟΔΟΥ 28 WRITE (αρ. μονάδας, *) Vl, V2,..., Vn όπου αριθμός μονάδας είναι ένας ακέραιος που ορίζει τη μονάδα όπου θα γραφτούν οι αριθμοί. Θα έχει την τιμή 6 ή ένα αστεράκι (*) αν οι αριθμοί γραφτούν στη βασική μονάδα εξόδου, που είναι η οθόνη. Τότε η εντολή παίρνει την ακόλουθη μορφή: WRITE (*,*) Vl, V2,..., Vn ή PRINT *, Vl, V2,..., Vn Περισσότερα για άλλες μονάδες δίνονται στο Κεφ. 8. το αστεράκι (*), μετά τον αρ. μονάδας, εννοεί ότι η έξοδος των αποτελεσμάτων θα γίνει με ελεύθερο τρόπο (free FORMAT) που καθορίζει ο ίδιος ο υπολογιστής. Εμείς απλά δεχόμαστε τη μορφή εμφάνισης των αποτελεσμάτων που θέλει ο υπολογιστής, χωρίς δυνατότητα παρέμβασης. Λόγω αυτού του μειονεκτήματος η εντολή αυτή δεν χρησιμοποιείται τόσο συχνά όσο η αντίστοιχη της εντολή READ. H εντολή χρησιμοποιείται κυρίως σε ενδιάμεσες εκτελέσεις προγραμμάτων και εκτυπώσεων όπου δεν μας ενδιαφέρει πολύ η ποιότητα της εμφάνισης των αποτελεσμάτων. V1, V2,..., Vn είναι τα ονόματα μεταβλητών, των οποίων η τιμή, που είναι αποθηκευμένη στη μνήμη του υπολογιστή, ζητείται να γραφτεί στη μονάδα εξόδου. Παράδειγμα Εντολές FORTRAN ----!----!----!----!----!----!----!----! (μετρητής στηλών) READ(*,*) NL,WIDTH,ΙHIGH WRITE(*,*) NL,WIDTH,ΙHIGH ή PRINT*, NL,WIDTH,ΙHIGH Δεδομένα Αποτελέσματα
30 ΚΕΦΑΛΑΙΟ 6 ΕΝΤΟΛΕΣ ΕΞΟΔΟΥ 29 ΑΣΚΗΣΕΙΣ KEΦΑΛΑΙΟΥ 6 Άσκηση 6.1 Οι ακόλουθες μεταβλητές έχουν τις εξής τιμές DIST BRED IOUNT 20 FRAT Δώστε τις αναγκαίες εντολές WRITE και FORMAT για γράψιμο αυτών των τιμών με εύρος πεδίου 10 στηλών και 10 κενά μεταξύ των πεδίων. Λύση ----!----!----!----!----!----!----!----! (μετρητής στηλών) WRITE(*,1000) DIST,BRED,IOUNT,FRAT 1000 FORMAT (1X,F10.2,10X,F10.3,10X,I10,10X,F10.3) Άσκηση 6.2 Δώστε τη γραμμή εκτύπωσης των ακόλουθων εντολών ----!----!----!----!----!----!----!----! (μετρητής στηλών) WRITE(*,1000) M,X,N,Y 1000 FORMAT (3X,I5,3X,F8.4,2X,I6,4X,F8.3) όπου οι μεταβλητές Μ, Χ, Ν, Υ έχουν τις εξής τιμές Μ Χ Ν 280 Υ Λύση ----!----!----!----!----!----!----!----! (μετρητής στηλών) Άσκηση 6.3 Εάν I = 1, J = -53, K = 1024, X = 1.5, Y = , Z = τι θα τυπωθεί για κάθε μια από τις ακόλουθες περιπτώσεις: (α) ----!----!----!----!----!----! (μετρητής στηλών) WRITE(*,1000) I,Z,J,K 1000 FORMAT (1X,I4,F10.4,2I5) Λύση ----!----!----!----!----!----! (μετρητής στηλών)
31 ΚΕΦΑΛΑΙΟ 6 ΕΝΤΟΛΕΣ ΕΞΟΔΟΥ 30 (β) ----!----!----!----!----!----!----! (μετρητής στηλών) WRITE(*,1000) J,Y,I,X,K,Z 1000 FORMAT (1X,I4,F7.2) Λύση ----!----!----!----!----!----! (μετρητής στηλών) (γ) ----!----!----!----!----!----! (μετρητής στηλών) WRITE(*,1000) I,X WRITE(*,1000) J,Y 1000 FORMAT (1X,I4,F7.2) Λύση ----!----!----!----!----!----! (μετρητής στηλών) (δ) ----!----!----!----!----!----! (μετρητής στηλών) WRITE(*,1000) I,X,J,K 1000 FORMAT (1X,I10) Λύση ----!----!----!----!----!----! (μετρητής στηλών) Μήνυμα λάθους
32 ΚΕΦΑΛΑΙΟ 7 ΕΝΑ ΠΛΗΡΕΣ ΠΡΟΓΡΑΜΜΑ 31 ΚΕΦΑΛΑΙΟ 7 - ΕΝΑ ΠΛΗΡΕΣ ΠΡΟΓΡΑΜΜΑ Έχοντας καλύψει την απλή μορφή των εντολών READ, WRITE και FORMAT είμαστε τώρα σχεδόν σε θέση να γράψουμε τα πρώτο μας πλήρες πρόγραμμα που θα τρέξει επιτυχώς στον υπολογιστή. Εκείνο που ακόμη χρειαζόμαστε είναι το πως θα δηλώνουμε στον υπολογιστή την αρχή ενός προγράμματος, τα ενδιάμεσα σημεία όπου απαιτείται από το πρόγραμμα να τερματίζεται η εκτέλεσή του, και το τέλος του προγράμματος. Η αρχή του προγράμματος ορίζεται από την εντολή PROGRAM που η μορφή της είναι PROGRAM όνομα Όνομα είναι το όνομα του προγράμματος και ακολουθεί τους κανόνες των μεταβλητών της FORTRAN, δηλαδή αποτελείται από 6 το πολύ αλφαριθμητικούς χαρακτήρες από τους οποίους ο πρώτος πρέπει να είναι γράμμα. Το όνομα αυτό θα πρέπει να είναι διαφορετικό από οποιοδήποτε άλλο όνομα στο πρόγραμμα Η εντολή δεν είναι υποχρεωτική, αλλά συνιστάται να χρησιμοποιείται για να ξεχωρίζει το πρόγραμμα από άλλα κομμάτια προγραμμάτων, όπως υποπρογράμματα. Εάν χρησιμοποιηθεί η εντολή αυτή τότε πρέπει να είναι η πρώτη εντολή του προγράμματος. Η πρώτη γραμμή του προγράμματος αποτελεί και την αρχή του προγράμματος και όλες οι επόμενες εντολές εκτελούνται με την σειρά που δίνονται στο πρόγραμμα η μία μετά την άλλη, εκτός εάν υπάρχει κάποια συγκεκριμένη εντολή που ζητά να ακολουθηθεί κάποια άλλη σειρά. Η εντολή STOP χρησιμοποιείται για το σταμάτημα της εκτέλεσης του προγράμματος σε οποιοδήποτε σημείο. Η μορφή της εντολής είναι STOP 'μήνυμα' Η εντολή STOP είναι χρήσιμη εάν σε κάποιο σημείο χρειάζεται η διακοπή του προγράμματος βάσει κάποιου κριτηρίου. Π.χ. κατά την επίλυση μιας δευτεροβάθμιας εξίσωσης για εύρεση των πραγματικών τιμών της διαπιστώνεται από το πρόγραμμα ότι υπάρχουν μόνο μιγαδικές λύσεις. Στην περίπτωση αυτή δεν ενδιαφερόμαστε για τις λύσεις αυτές και το πρόγραμμα μπορεί να διακοπεί μέσω της εντολής STOP. Επιτρέπεται η χρήση πολλών εντολών STOP σε διάφορα σημεία του προγράμματος. Ο υπολογιστής θα σταματήσει την εκτέλεση του προγράμματος μόλις συναντήσει το πρώτο STOP. Αυτό όμως δεν είναι κατ ανάγκη το πρώτο γραμμένο STOP διότι ενδέχεται να υπάρχουν στο πρόγραμμα εντολές μεταφοράς (που θα αναπτυχθούν στο Κεφάλαιο 10), οπότε ο υπολογιστής δεν θα εκτελέσει τις εντολές με την σειρά που είναι γραμμένες στο πρόγραμμα. Στην περίπτωση αυτή κάθε εντολή STOP είναι χρήσιμο να συνοδεύεται και από κάποιο μήνυμα που τίθεται μεταξύ δύο αποστρόφων (' ') και το οποίο εκτυπώνεται κατά την εκτέλεση της εντολής. Έτσι μπορούμε να ξέρουμε σε πιο σημείο σταμάτησε η εκτέλεση του προγράμματος.
33 ΚΕΦΑΛΑΙΟ 7 ΕΝΑ ΠΛΗΡΕΣ ΠΡΟΓΡΑΜΜΑ 32 Παράδειγμα Η εκτέλεση της εντολής STOP 'END OF PROGRAM' παράγει το μήνυμα: END OF PROGRAM Παράδειγμα Η εκτέλεση της εντολής STOP 'STOP ΣΤΗ ΓΡΑΜΜΗ ΝΟ. 98' παράγει το μήνυμα: STOP ΣΤΗ ΓΡΑΜΜΗ ΝΟ. 98 Εάν παραληφθεί το μήνυμα τότε κατά την εκτέλεση εμφανίζεται το default μήνυμα Stop Program terminated. Κάθε πρόγραμμα πρέπει να τελειώνει με την εντολή END (γραμμένη στις στήλες 7-72). Η εντολή αυτή πληροφορεί τον ompiler (μεταφραστή) ότι δεν υπάρχουν άλλες εντολές σ' αυτό το πρόγραμμα και επομένως μπορεί να θεωρήσει όλες τις εντολές μέχρι αυτό το σημείο ότι ανήκουν σ ' ένα μόνο πρόγραμμα. Προφανώς μόνο μία εντολή END μπορεί να χρησιμοποιηθεί σ ' ένα πρόγραμμα. Η εντολή END δεν μεταφράζεται σε γλώσσα μηχανής και επομένως δεν εμφανίζεται στο αντικείμενο πρόγραμμα. Γι' αυτό και δεν επιτρέπεται η χρήση αριθμού αναφοράς στις στήλες 1-5 μιας εντολής END. Αφού τελειώσει η μετάφραση του πηγαίου προγράμματος (γλώσσα FORTRAN) σε αντικείμενο πρόγραμμα (γλώσσα μηχανής) ακολουθεί η εκτέλεση του αντικείμενου προγράμματος από τον υπολογιστή. Με βάση λοιπόν τις μέχρι τώρα γνώσεις μας μπορούμε να γράψουμε ένα πλήρες πρόγραμμα έτοιμο για εκτέλεση από τον υπολογιστή. Η πρακτική προετοιμασία (διάγραμμα ροής και γράψιμο εντολών) ενός τέτοιου στοιχειώδους προγράμματος, που διαβάζει και γράφει τέσσερις αριθμούς, δίνεται στα Σχ. 7.1 και Σχ Το πρόγραμμα συνοδεύεται και από δεδομένα. Το πρόγραμμα βέβαια είναι πολύ απλό, και δεν εκτελεί καμία αριθμητική πράξη, δεν παύει όμως να είναι ένα πλήρες πρόγραμμα έτοιμο για εκτέλεση από τον υπολογιστή. Τα αποτελέσματα γράφονται στην οθόνη.
34 ΚΕΦΑΛΑΙΟ 7 ΕΝΑ ΠΛΗΡΕΣ ΠΡΟΓΡΑΜΜΑ 33 ΑΡΧΗ READ NV,SIZE,LENGTH,LOAD WRITE NV,SIZE,LENGTH,LOAD ΤΕΛΟΣ Σχ. 7.1 Διάγραμμα ρoής ενός πλήρους προγράμματος Εντολές FORTRAN (μετρητής στηλών) ----!----!----!----!----!----!----!----!----!----!----!----!----! PROGRAM PLHRES *** ΠΡΟΓΡΑΜΜΑ ΓΙΑ ΔΙΑΒΑΣΜΑ ΚΑΙ ΕΚΤΥΠΩΣΗ ΤΕΣΣΑΡΩΝ ΑΡΙΘΜΩΝ READ(*,*) NV,SIZE,LENGTH,LOAD WRITE(*,1000) NV,SIZE,LENGTH,LOAD 1000 FORMAT (1X,I5,5X,F10.3,5X,I5,5X,I8) STOP END Δεδομένα Αποτελέσματα ----!----!----!----!----!----!----!----!----! (μετρητής στηλών) Σχ. 7.2 Εντολές του προγράμματος του Σχ.7.1, με Δεδομένα και Αποτελέσματα
35 ΚΕΦΑΛΑΙΟ 7 ΕΝΑ ΠΛΗΡΕΣ ΠΡΟΓΡΑΜΜΑ 34 ΑΣΚΗΣΕΙΣ KEΦΑΛΑΙΟΥ 7 Άσκηση 7.1 ΠΛΗΡΕΣ ΠΡΟΓΡΑΜΜΑ 1 Στα πλαίσια ερευνητικού προγράμματος για τον έλεγχο της αντοχής σε θλίψη στοιχείων μιας κατασκευής από ωπλισμένο σκυρόδεμα θραύστηκαν κυβικά δοκίμια σκυροδέματος ακμής 15 εκ. Η επεξεργασία των πειραματικών αποτελεσμάτων αποφασίστηκε να γίνει με τη βοήθεια ηλεκτρονικού υπολογιστή και τα στοιχεία και αποτελέσματα μετρήσεων από κάθε πείραμα γράφτηκαν σε αρχείο δεδομένων με την εξής μορφή: Στήλη 1 Για κύβο από ελαφροσκυρόδεμα έχει γραφτεί ένα 1 Για κύβο από κοινό σκυρόδεμα έχει γραφτεί ένα 2 Στήλη 2-5 Στήλη 6-10 Στήλη Στήλη Στήλη Στήλη Κενές Η ηλικία κάθε κύβου έχει καταχωρηθεί εδώ σαν ακέραιος αριθμός ημερών Κενές Το βάρος κάθε κύβου έχει καταχωρηθεί εδώ σαν πραγματικός αριθμός kn, με ακρίβεια 3 δεκαδικών ψηφίων Κενές Το φορτίο θλίψεως κάθε κύβου έχει καταχωρηθεί εδώ σαν πραγματικός αριθμός kn, με ακρίβεια 2 δεκαδικών ψηφίων. Γράψτε ένα πρόγραμμα που να διαβάζει 3 γραμμές δεδομένων, θέτοντας τα είδη του σκυροδέματος (concrete) στα IONA, IONB, ION, τις ηλικίες (age) στα IAGEA, IAGEB, IAGE, τα βάρη (weights) στα WEITA, WEITB, WEIT, και τα φορτία θλίψεως (compressive loads) στα OMA, OMB, OM. Εκτυπώστε αυτές τις τιμές με την εξής μορφή: IONA IONB ION OMA OMB OM WEITA WEITB WEIT IAGEA IAGEB IAGE Δημιουργείστε 3 γραμμές δεδομένων σύμφωνα με τη δεδομένη FORMAT για να ελέγξετε το πρόγραμμα.
36 ΚΕΦΑΛΑΙΟ 8 ΑΡΧΕΙΑ 35 ΚΕΦΑΛΑΙΟ 8 - ΑΡΧΕΙΑ Είδαμε στο Κεφ. 5 ότι τα δεδομένα σ ένα πρόγραμμα τα εισάγουμε με δυο βασικούς τρόπους: από εντολές δήλωσης ( 5.1) και από εντολές READ ( 5.2 & 5.3). H εισαγωγή των δεδομένων στον υπολογιστή γίνεται μέσω της βασικής μονάδας εισόδου, που είναι το πληκτρολόγιο. Μειονέκτημα αυτής της μεθόδου είναι το ότι χρειάζεται κάθε φορά που εκτελούμε το πρόγραμμα να πληκτρολογούμε ξανά τα δεδομένα. Κατά την ανάπτυξη ενός προγράμματος χρειάζονται συνήθως τροποποιήσεις στο πρόγραμμα ή / και στα δεδομένα οπότε προκύπτει η ανάγκη πολλών εκτελέσεων του προγράμματος και κάθε φορά επαναπληκτρολόγηση των δεδομένων. Όταν τα ίδια δεδομένα χρειάζονται και σε κάποιο άλλο πρόγραμμα χρειάζεται επαναπληκτρολόγησή τους. Όλα αυτά γίνονται λοιπόν κουραστικά και υπάρχει κίνδυνος λαθών κατά τις πολλαπλές πληκτρολογήσεις. Στην περίπτωση δε που το πλήθος των δεδομένων είναι πολύ μεγάλο, η παραπάνω διαδικασία δεν είναι εύκολη στην πράξη. Ανάλογα ισχύουν και κατά την έξοδο αποτελεσμάτων από τον υπολογιστή μέσω της εντολής WRITE (Κεφ. 6). Η έξοδος γίνεται στη βασική μονάδα εξόδου, που είναι η οθόνη. Μειονέκτημα αυτής της μεθόδου είναι ότι τα αποτελέσματα που εμφανίζονται στην οθόνη χάνονται αμέσως μόλις αρχίσουμε κάποια άλλη διαδικασία στον υπολογιστή, και εάν οι γραμμές των αποτελεσμάτων είναι περισσότερες από αυτές που χωράει η οθόνη βλέπουμε μόνο τα τελευταία αποτελέσματα που χωρούν στην οθόνη. Εάν δε τα αποτελέσματα, ή τμήμα τους, θέλουμε να τα χρησιμοποιήσουμε ως δεδομένα σε κάποιο άλλο πρόγραμμα αυτό είναι αδύνατο με τις εντολές που έχουμε μάθει ως τώρα. Εκείνο λοιπόν που χρειάζεται είναι να έχουμε τη δυνατότητα να αποθηκεύουμε μονίμως στη μνήμη του υπολογιστή τα δεδομένα (εισόδου ή εξόδου) και στη συνέχεια να τα χρησιμοποιούμε, ή τροποποιούμε, όσες φορές θέλουμε, είτε στο ίδιο πρόγραμμα, είτε σε άλλα προγράμματα. Αυτό μπορεί να γίνει με τη χρήση ΑΡΧΕΙΩΝ. Τον χώρο της μνήμης που καταλαμβάνουν τα δεδομένα τον ονομάζουμε αρχείο (file) και του δίνουμε ένα όνομα. Μπορούμε να δημιουργήσουμε πολλούς τέτοιους χώρους στη μνήμη με διαφορετικό όνομα τον καθένα. Μπορούμε λοιπόν στην FORTRAN να διαβάσουμε πληροφορίες από ένα αρχείο, ή να γράψουμε πληροφορίες σε ένα αρχείο. Οι πληροφορίες αυτές μπορεί γενικότερα να είναι προγράμματα ή δεδομένα (εισόδου ή εξόδου). Τα αρχεία αποθηκεύονται στη δευτερεύουσα μνήμη του υπολογιστή και όχι στην κύρια μνήμη (βλέπε Κεφ. 1) ΕΙΔΗ ΑΡΧΕΙΩΝ Μέχρι πριν μερικά χρόνια, οι μαγνητικές ταινίες ήταν ο πιο κοινός τύπος δευτερεύουσας μνήμης. Στις μαγνητικές ταινίες υπολογιστών αποθηκεύονται τα δεδομένα κατά παρόμοιο τρόπο με τις κασέτες ήχου που χρησιμοποιούμε για να γράψουμε μουσική. Όπως σ αυτές, οι μαγνητικές ταινίες υπολογιστών πρέπει να διαβαστούν («παιχτούν») στη σειρά από την αρχή της ταινίας μέχρι το τέλος της. Όταν σ ένα αρχείο διαβάζουμε δεδομένα σε διαδοχική σειρά το ένα μετά το άλλο, έχουμε
8 FORTRAN 77/90/95/2003
ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 1: Εισαγωγή... 17 1.1. Ανασκόπηση της ιστορίας των υπολογιστών... 18 1.2. Πληροφορία και δεδομένα... 24 1.3. Ο Υπολογιστής... 26 1.4. Δομή και λειτουργία του υπολογιστή... 28 1.5.
Εναλλακτικές εντολές για ανάγνωση/εγγραφή
Εναλλακτικές εντολές για ανάγνωση/εγγραφή Ανάγνωση από το πληκτρολόγιο και εγγραφή στην οθόνη γίνεται με τις εντολές Εναλλακτικές μορφές είναι οι Οι τελευταίες μπορούν να επεκταθούν για ανάγνωση και εγγραφή
ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται
ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ
ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ 9.1 Εντολές Εισόδου/εξόδου Στην Pascal, 1. Tα δεδομένα των προγραμμάτων λαμβάνονται: είτε από το πληκτρολόγιο είτε από ένα αρχείο με τη χρήση των διαδικασιών read και readln,
Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»
Περιεχόμενα Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»... 2 Καταχωρητές... 3 Αριθμητική-λογική μονάδα... 3 Μονάδα μνήμης... 4 Μονάδα Εισόδου - Εξόδου... 5 Μονάδα ελέγχου... 5 Ρεπερτόριο Εντολών «ΑΒΑΚΑ»... 6 Φάση
ΠΡΟΒΛΗΜΑ ΕΠΕΓΕΡΓΑΣΙΑ. (Είναι οι σκέψεις και οι πράξεις που κάνουμε για να λυθεί το πρόβλημα) ΕΙΣΟΔΟΥ - ΕΞΟΔΟΥ
1 ο ΓΥΜΝΑΣΙΟ ΘΕΡΜΗΣ Μάθημα: Ενότητα: Πληροφορική Α' Γυμν. Το Υλικό του Υπολογιστή ΠΡΟΒΛΗΜΑ ΔΕΔΟΜΕΝΑ (Είναι τα στοιχεία που δίνουμε για λυθεί το πρόβλημα) ΕΠΕΓΕΡΓΑΣΙΑ (Είναι οι σκέψεις και οι πράξεις που
Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός
Δομές Ακολουθίας- Επιλογής - Επανάληψης Δομημένος Προγραμματισμός 1 Βασικές Έννοιες αλγορίθμων Σταθερές Μεταβλητές Εκφράσεις Πράξεις Εντολές 2 Βασικές Έννοιες Αλγορίθμων Σταθερά: Μια ποσότητα που έχει
Μάθημα 3: Αρχιτεκτονική Υπολογιστών
Μάθημα 3: Αρχιτεκτονική Υπολογιστών 3.1 Περιφερειακές μονάδες και τμήμα επεξεργασίας Στην καθημερινή μας ζωή ερχόμαστε συνέχεια σε επαφή με υπολογιστές. Ο υπολογιστής είναι μια συσκευή που επεξεργάζεται
ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)
1 ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004) ιάλεξη 1 1.1 ΕΙΣΑΓΩΓΗ ΣΤΗ FORTRAN 77 Ένα πρόγραµµα σε οποιαδήποτε γλώσσα προγραµµατισµού δεν τίποτα άλλο από µια σειρά εντολών που πρέπει
Συμβολική Γλώσσα στον ΑΒΑΚΑ
Συμβολική Γλώσσα στον ΑΒΑΚΑ Τα προγράμματα που είναι γραμμένα σε γλώσσα μηχανής (machine language) περιέχουν τόσο τις εντολές όσο και τις διευθύνσεις μνήμης γραμμένες σε αριθμητική μορφή και μάλιστα στο
ΥΠΟΛΟΓΙΣΤΕΣ Ι. Ένα πρώτο πρόγραμμα ΔΟΜΗ TOY ΠΡΟΓΡΑΜΜΑΤΟΣ. Τι σημαίνουν οι εντολές. Από τι αποτελείται ένα πρόγραμμα
ΥΠΟΛΟΓΙΣΤΕΣ Ι ΔΟΜΗ TOY ΠΡΟΓΡΑΜΜΑΤΟΣ Ένα πρώτο πρόγραμμα Κατασκευάστε πρόγραμμα που θα εμφανίζει στην οθόνη τη λέξη: PROGRAM FIRST C Αυτό είναι ένα απλό υπόδειγμα προγράμματος. 1 2 Από τι αποτελείται ένα
ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL
8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to
ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ
ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ Κεφαλαία και μικρά γράμματα ελληνικού αλφαβήτου: Α Ω και α ω Κεφαλαία και μικρά γράμματα λατινικού αλφαβήτου: A Z και a z Αριθμητικά ψηφία: 0 9 Ειδικοί χαρακτήρες: + - * / =. ( ),! & κενός
ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό
Επικοινωνία Προγράμματος Περιβάλλοντος ΕΠΛ031 Εισαγωγή στον Προγραμματισμό Επικοινωνία Προγράμματος Περιβάλλοντος Λογικές Μονάδες Μεταφορά εδομένων Μορφοποίηση εδομένων Νέαρχος Πασπαλλής Επισκέπτης Ακαδημαϊκός
Διαδικασιακός Προγραμματισμός
Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα
Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού Μάθημα 2ο Aντώνης Σπυρόπουλος v2_061015 Οροι που
2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ
ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)
ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δρ. Χριστόφορος Χριστοφόρου Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Υλικό (Hardware)/Δομή του υπολογιστή Υπολογιστικά συστήματα: Στρώματα 1 Επικοινωνία
Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL
Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Δυνατότητα ανάπτυξης, μεταγλώττισης και εκτέλεσης προγραμμάτων στη PASCAL. Κατανόηση της σύνταξης των προτάσεων της PASCAL. Κατανόηση της εντολής εξόδου για
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Σύνολο χαρακτήρων της Pascal Για
Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης
Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 3: Πίνακες, βρόχοι, συναρτήσεις 1 Ιουνίου 2017 Το σημερινό εργαστήριο
2. ΑΡΙΘΜΗΤΙΚΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. 2.1 Αριθμητικά συστήματα
2. ΑΡΙΘΜΗΤΙΚΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ 2.1 Αριθμητικά συστήματα Κάθε πραγματικός αριθμός χ μπορεί να παρασταθεί σε ένα αριθμητικό σύστημα με βάση β>1 με μια δυναμοσειρά της μορφής, -οο * = ± Σ ψ β " (2 1) η - ν
Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:
Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται
Εισαγωγή στην Αριθμητική Ανάλυση
Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στη MATLAB ΔΙΔΑΣΚΩΝ: ΓΕΩΡΓΙΟΣ ΑΚΡΙΒΗΣ ΒΟΗΘΟΙ: ΔΗΜΗΤΡΙΑΔΗΣ ΣΩΚΡΑΤΗΣ, ΣΚΟΡΔΑ ΕΛΕΝΗ E-MAIL: SDIMITRIADIS@CS.UOI.GR, ESKORDA@CS.UOI.GR Τι είναι Matlab Είναι ένα περιβάλλον
ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ
ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας
Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας
Κεφάλαιο 3 ο Αρχιτεκτονική Υπολογιστών Μάθημα 3.: Κεντρική Μονάδα Επεξεργασίας Όταν ολοκληρώσεις το κεφάλαιο θα μπορείς: Να σχεδιάζεις την εσωτερική δομή της ΚΜΕ και να εξηγείς τη λειτουργία των επιμέρους
ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python
ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής
Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB
Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Εαρινό εξάμηνο 2018-2019 Τμήμα Μαθηματικών ΑΠΘ Διδάσκουσα: Αγγελική Παπάνα Μεταδιδακτορική Ερευνήτρια Πολυτεχνική σχολή, Α.Π.Θ. & Οικονομικό Τμήμα, Πανεπιστήμιο
ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5)
ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ Τοποθετώ μια δισκέτα στον οδηγό τη δισκέτας του υπολογιστή. Τοποθετώ τη δισκέτα που έχει το αρχείο μου στον οδηγό τη δισκέτας του υπολογιστή.
Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.
Εργαστήριο 4: 4.1 Η Δομή Ελέγχου if Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη. Γενική Μορφή: Παρατηρήσεις:
ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ
ΚΕΦΑΛΑΙΟ 10 Όπως είδαμε και σε προηγούμενο κεφάλαιο μια από τις βασικότερες τεχνικές στον Δομημένο Προγραμματισμό είναι ο Τμηματικός Προγραμματισμός. Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης
Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας
Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας 4.1 Γενικά Ο υπολογιστής επεξεργάζεται δεδομένα ακολουθώντας βήμα βήμα, τις εντολές ενός προγράμματος. Το τμήμα του υπολογιστή, που εκτελεί τις εντολές και συντονίζει
Εισαγωγή στη Fortran. Μάθημα 1 ο. Ελευθερία Λιούκα
Εισαγωγή στη Fortran Μάθημα 1 ο Ελευθερία Λιούκα liouka.eleftheria@gmail.com Περιεχόμενα Ιστορία της Fortran Βασικές γνώσεις Fortran Επιτρεπτοί χαρακτήρες Μορφή προγράμματος Τύποι μεταβλητών Πράξεις και
Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro
Για να μπορέσουμε να εισάγουμε δεδομένα από το πληκτρολόγιο αλλά και για να εξάγουμε εμφανίσουμε αποτελέσματα στην οθόνη του υπολογιστή χρησιμοποιούμε τις εντολές Εισόδου και Εξόδου αντίστοιχα. Σύνταξη
Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης
Εργαστήριο 6 Εντολές Επανάληψης Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL. Ρεύμα Εισόδου / Εξόδου.. Ρεύμα Εισόδου / Εξόδου. To πρόγραμμα γραφικών gnuplot. Γραφικά στη PASCAL. Σκοπός 6.1 ΕΠΙΔΙΩΞΗ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο
1.5 ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ μικρόκοσμου «Προγραμματισμός Η/Υ»
1.5 ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ μικρόκοσμου «Προγραμματισμός Η/Υ» 1. Πήγαινε στο μενού Αρχείο και επίλεξε Άνοιγμα. Άνοιξε το αρχείο sample.x. Ανοίγουν δυο παράθυρα. Παρατήρησε τα ονόματα τους: Πηγαίος κώδικας... και
Εφαρµογές Υπολογιστών Βασίλης Μπλιάµπλιας Γεωργία Τσούτσου Γιώργος Συνάπαλος
Το υλικό του υπολογιστή Εφαρµογές Υπολογιστών Βασίλης Μπλιάµπλιας Γεωργία Τσούτσου Γιώργος Συνάπαλος Υπολογιστικό σύστηµα Στο υπολογιστικό σύστηµα ανήκει το: Υλικό Λογισµικό Υλικό Είναι οτιδήποτε έχει
Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )
Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ. 147 159) Για τις γλώσσες προγραμματισμού πρέπει να έχουμε υπόψη ότι: Κάθε γλώσσα προγραμματισμού σχεδιάζεται για συγκεκριμένο σκοπό, δίνοντας ιδιαίτερη
Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια
Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια Είσοδος:
3. Να γραφεί πρόγραμμα που θα διαβάζει 100 ακεραίους αριθμούς από το πληκτρολόγιο και θα υπολογίζει το άθροισμά τους.
ΑΕσΠΠ-Δομή Επανάληψης 9 ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ 1. Να γραφεί πρόγραμμα που να υπολογίζει το άθροισμα των πρώτων 100 φυσικών αριθμών. 2. Να τροποποιηθεί ο παραπάνω πρόγραμμα ώστε να υπολογίζει το άθροισμα των πρώτων
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ - ΓΛΩΣΣΑ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Τεχνικές Σχεδίασης Αλγορίθμων Εισαγωγή στον Προγραμματισμό - ΓΛΩΣΣΑ Επιμέλεια: Ομάδα Διαγωνισμάτων από Το στέκι των πληροφορικών ο Θέμα 1 Α. α) Ποια είναι
Υπολογιστές Ι. Άδειες Χρήσης. Δομή του προγράμματος. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης Υπολογιστές Ι Δομή του προγράμματος Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 2ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΣΦΑΛΜΑΤΑ ΜΕΤΑΓΛΩΤΤΙΣΗΣ Η γλώσσα C κάνει αυστηρή διάκριση μεταξύ πεζών
Πρώτη επαφή με το μαθηματικό πακέτο Mathematica
Πρώτη επαφή με το μαθηματικό πακέτο Mathematica Με δύο λόγια, μπορούμε να πούμε ότι η Mathematica είναι ένα πρόγραμμα που το χρησιμοποιούμε για να κάνουμε αναλυτικούς και αριθμητικούς υπολογισμούς αλλά
ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών
44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.
Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής
Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής Αλγόριθμος (algorithm) λέγεται μία πεπερασμένη διαδικασία καλά ορισμένων βημάτων που ακολουθείται για τη λύση ενός προβλήματος. Το διάγραμμα ροής
Θεωρία Προγραμματισμού
Θεωρία Προγραμματισμού 1) Τι ονομάζουμε Αλγόριθμο; Ονομάζεται μια ακολουθία από πεπερασμένο αριθμό εντολών, που αν εκτελεστούν με ακρίβεια, οδηγούν στη πραγματοποίηση μιας εργασίας. 2) Τι ονομάζουμε ανάλυση
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012 ΘΕΜΑ Α Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις: 1. Κάθε βρόγχος που υλοποιείται με την εντολή Για μπορεί να
Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) 133 244 355 a= b= c= 3 read(d,e) 166 277 3888
ΕΡΩΤΗΣΕΙΣ 1. Να αναφέρετε μερικά από τα ιδιαίτερα χαρακτηριστικά της Pascal. 2. Ποιο είναι το αλφάβητο της Pascal; 3. Ποια είναι τα ονόματα-ταυτότητες και σε τι χρησιμεύουν; 4. Σε τι χρησιμεύει το συντακτικό
Άσκηση 1. Ποια από τα κάτω αλφαριθμητικά είναι αποδεκτά ως ονόματα μεταβλητών σε έναν αλγόριθμο i. Τιμή
Θεωρία επισκόπηση 1 Η μεταβλητή είναι ένα συμβολικό όνομα κάτω από το οποίο βρίσκεται μια τιμή, η οποία μπορεί να μεταβάλλεται κατά την εκτέλεση του αλγορίθμου 1. Τύποι Δεδομένων (Μεταβλητών και Σταθερών)
ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ. Πρόγραμμα Διαχείρισης Α.Π.Δ.
ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ Πρόγραμμα Διαχείρισης Α.Π.Δ. Περιεχόμενα ΚΕΦΑΛΑΙΟ 1 Εγκατάσταση του προγράμματος 1 ΚΕΦΑΛΑΙΟ 2 Οδηγίες χρήσης προγράμματος με παράδειγμα 2 ΚΕΦΑΛΑΙΟ 3 Αντιγραφή Α.Π.Δ. προηγούμενης περιόδου
Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων
Ενότητα 4 Επεξεργασία πινάκων 36 37 4.1 Προσθήκη πεδίων Για να εισάγετε ένα πεδίο σε ένα πίνακα που υπάρχει ήδη στη βάση δεδομένων σας, βάζετε τον κέρσορα του ποντικιού στο πεδίο πάνω από το οποίο θέλετε
Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου
Εργαστήριο 2: Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραμματισμού
Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς
ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική
Δομή Ηλεκτρονικού υπολογιστή
Δομή Ηλεκτρονικού υπολογιστή Η κλασσική δομή του μοντέλου που πρότεινε το 1948 ο Von Neumann Κεντρική Μονάδα Επεξεργασίας Είσοδος Αποθήκη Αποθήκη - Έξοδος Εντολών Δεδομένων Κλασσικό μοντέλο Von Neumann
Βασικές Έννοιες της Πληροφορικής
Βασικές Έννοιες της Πληροφορικής Ηλεκτρονικός Υπολογιστής Αυτόματη ηλεκτρονική μηχανή που δέχεται, φυλάσσει, επαναφέρει, επεξεργάζεται και παρουσιάζει πληροφορίες σύμφωνα με προκαθορισμένες εντολές. Δεδομένα
Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)
2.1.1 Εισαγωγή στη διαχείριση αρχείων Οι Η/Υ αποθηκεύουν τα δεδομένα και τα επεξεργάζονται. Εφαρμογή Προγράμματος C:\Documents and Settings\user\Τα έγγραφά μου\leitourgika.doc Λ.Σ. File System Γι αυτό
1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;
1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες (μορφές) της; Η δομή επανάληψης χρησιμοποιείται όταν μια σειρά εντολών πρέπει να εκτελεστεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι
Λύσεις για τις ασκήσεις του lab5
Εισαγωγή Λύσεις για τις ασκήσεις του lab5 Επειδή φάνηκε να υπάρχουν αρκετά προβλήματα σχετικά με τον τρόπο σκέψης για την επίλυση των προβλημάτων του lab5, θα συνοδεύσουμε τις λύσεις με αρκετές επεξηγήσεις,
Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών
Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών Πρόγραμμα σε γλώσσα μηχανής του ΕΚΥ Θέση μνήμης Περιεχόμενα μνήμης Εντολή (assembly) 0 0001 000000000011 lda 3 1 0011 000000000100 ada
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 04 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
Fortran και Αντικειμενοστραφής προγραμματισμός.
Fortran και Αντικειμενοστραφής προγραμματισμός www.corelab.ntua.gr/courses/fortran_naval/naval Διδάσκοντες: Άρης Παγουρτζής (pagour@cs.ntua.gr) (Επίκουρος Καθηγητής ΣΗΜΜΥ ) Δώρα Σούλιου (dsouliou@mail.ntua.gr)
Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 2: Μεταβλητές και Σταθερές Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης
Αλγόριθμος. Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών βημάτων με σκοπό την επίλυση ενός προβλήματος.
Αλγόριθμος Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών βημάτων με σκοπό την επίλυση ενός προβλήματος. Εντολές ή οδηγίες ονομάζονται τα βήματα που αποτελούν έναν αλγόριθμο.
ΠΕΚ ΤΡΙΠΟΛΗΣ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠ/ΚΩΝ ΠΕ19,20 ΗΜ/ΝΙΑ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ
ΠΕΚ ΤΡΙΠΟΛΗΣ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠ/ΚΩΝ ΠΕ19,20 ΗΜ/ΝΙΑ 4-11-07 ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ Γ Γενικού Λυκείου (τεχνολογική κατεύθυνση) ΚΕΦ. 2 ο -7 ο : ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ
Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής
Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Α2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών Α3. Ο αλγόριθμος
Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών
Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών Η επεξεργασία των δεδομένων ακολουθεί μια στερεότυπη διαδρομή: τα δεδομένα εισάγονται στο υπολογιστικό σύστημα, υφίστανται μια ορισμένη επεξεργασία και
Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2
Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων Πληροφορικής 2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών 3. Ο αλγόριθμος
Προβλήματα, αλγόριθμοι, ψευδοκώδικας
Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι
Ηλεκτρονικοί Υπολογιστές
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 5: Εντολές Αντικατάστασης, Συναρτήσεις και Σχόλια στη C++ Ζαχαρούλα Ανδρεοπούλου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Προγραμματισμός με FORTRAN Συνοπτικός Οδηγός Α. Σπυρόπουλος Α. Μπουντουβής
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός με FORTRAN Συνοπτικός Οδηγός Α Σπυρόπουλος Α Μπουντουβής Αθήνα, 2015 v13_061015 Στον οδηγό αυτό θα χρησιμοποιηθούν
ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή
Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή Στόχοι Μαθήματος: Να γνωρίσετε τις βασικές λειτουργίες ενός Η/Υ. Να γνωρίσετε τις έννοιες δεδομένα, πληροφορία, επεξεργασία,
Ενότητα 5: ΜΕΤΑΒΛΗΤΕΣ
Ενότητα 5: ΜΕΤΑΒΛΗΤΕΣ Οι Μεταβλητές στον Προγραμματισμό Οι μεταβλητές είναι θέσεις μνήμης που έχουν κάποιο όνομα. Όταν δίνω τιμή σε μία μεταβλητή, ουσιαστικά, αποθηκεύουμε στη μνήμη αυτή τον αριθμό που
Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή
Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή 8.1 Τακτική σάρωση (Polling) Ας υποθέσουμε ότι έχουμε ένα πληκτρολόγιο συνδεδεμένο σε ένα υπολογιστικό σύστημα. Το πληκτρολόγιο είναι μια μονάδα εισόδου.
Ανάπτυξη και Σχεδίαση Λογισμικού
Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο
Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Αρχεία Δεδομένων. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD
Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Αρχεία Δεδομένων Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD ΑΡΧΕΙΑ Αρχείο είναι μία οργανωμένη συλλογή δεδομένων αποθηκευμένα στο
2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός
Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.
ΤΡΙΤΗ ΔΙΑΛΕΞΗ Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.): Σύνταξη τύπος όνομαα; τύπος όνομαβ{όνομαα}; όνομαβ
ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης
ΚΕΦΑΛΑΙΟ 1ο 3ο 1. Συμπληρώστε τα κενά με τη λέξη που λείπει. α. Ένα πρόβλημα το χωρίζουμε σε άλλα απλούστερα, όταν είναι ή όταν έχει τρόπο επίλυσης. β. Η επίλυση ενός προβλήματος προϋποθέτει την του. γ.
Το υλικό του υπολογιστή
Το υλικό του υπολογιστή Ερωτήσεις 1. Τι αντιλαμβάνεστε με τον όρο υλικό; Το υλικό(hardware) αποτελείται από το σύνολο των ηλεκτρονικών τμημάτων που συνθέτουν το υπολογιστικό σύστημα, δηλαδή από τα ηλεκτρονικά
Υπολογιστές Ι. Άδειες Χρήσης. Μεταβλητές και πράξεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης Υπολογιστές Ι Μεταβλητές και πράξεις Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται
3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις
3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα
Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.
Α Γενικού Λυκείου Κεφάλαιο 1 1.1 Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Ιδιαίτερη θέση έχουν οι Υπολογιστικές συσκευές. Μηχανισμός
Pascal, απλοί τύποι, τελεστές και εκφράσεις
Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το
ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C
ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον
Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων.
Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων. Έως τώρα σε ένα πρόγραμμα έχουμε μάθει να εισάγουμε δεδομένα από το πληκτρολόγιο χρησιμοποιώντας την συνάρτηση scanf() και να εκτυπώνουμε δεδομένα
Πρόβλημα 37 / σελίδα 207
Πρόβλημα 37 / σελίδα 207 2.5. Ôåóô áõôïáîéïëüãçóçò Δίνονται οι παρακάτω ομάδες προτάσεων. Σε κάθε μία από αυτές, να κάνετε τις απαραίτητες διορθώσεις ώστε να ισχύουν οι προτάσεις 1. Η αναπαράσταση
Συμβολικά ονόματα που δίνονται σε θέσεις μνήμης όπου αποθηκεύονται αριθμοί. ιεύθυνση
ΥΠΟΛΟΓΙΣΤΕΣ Ι Τι είναι οι μεταβλητές ΕΣ ΤΑΒΛΗΤ - ΜΕΤ ΙΣΤΕΣ Ι ΠΟΛΟΓΙ ΥΠ ΜΕΤΑΒΛΗΤΕΣ Συμβολικά ονόματα που δίνονται σε θέσεις μνήμης όπου αποθηκεύονται αριθμοί. ιεύθυνση 0 1 2 3 4 MNHMH 5 6 7 8 9 Κ Α 1..
ΚΕΦΑΛΑΙΟ 2 ΑΛΓΟΡΙΘΜΟΙ ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ ΘΕΩΡΙΑ
ΚΕΦΑΛΑΙΟ 2 ΑΛΓΟΡΙΘΜΟΙ ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ ΘΕΩΡΙΑ Ερωτήσεις Σωστό / Λάθος 1. Η έννοια του αλγορίθμου συνδέεται αποκλειστικά και μόνο με προβλήματα της Πληροφορικής (ΕΞΕΤΑΣΕΙΣ 2003, 2007) 2. Ο αλγόριθμος μπορεί
Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95
Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95 Σταμάτης Σταματιάδης Τμήμα Επιστήμης και Τεχνολογίας Υλικών, Πανεπιστήμιο Κρήτης Διεξαγωγή μαθήματος Διαλέξεις Πέμπτη 14:00-16:00 στο αμφιθέατρο A του Τμήματος
Εισαγωγή στην πληροφορική
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης Δρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Η γλώσσα προγραμματισμού
ΧΡΗΣΗ ΤΗΣ ΕΦΑΡΜΟΓΗΣ (αρ. έκδοσης ) ΓΙΑ ΤΗΝ ΕΞΟΦΛΗΣΗ ΛΟΓΑΡΙΑΣΜΩΝ ΔΕΗ - ΟΤΕ ΕΥΑΘ WIND (εφαρμόζεται αντίστοιχα στις ΔΕΥΑ)
ΧΡΗΣΗ ΤΗΣ ΕΦΑΡΜΟΓΗΣ (αρ. έκδοσης 2.0.4.1.) ΓΙΑ ΤΗΝ ΕΞΟΦΛΗΣΗ ΛΟΓΑΡΙΑΣΜΩΝ ΔΕΗ - ΟΤΕ ΕΥΑΘ WIND (εφαρμόζεται αντίστοιχα στις ΔΕΥΑ) Αρχική οθόνη Αφού κάνουμε login εμφανίζονται στην αρχική οθόνη τα στοιχεία
Εργαλειομηχανές CNC. Χαρακτηριστικά κώδικα G (ISO) -2/4-
Χαρακτηριστικά κώδικα G (ISO) -1/4- Ορισμός Είναι η γλώσσα προγραμματισμού των ΕΜ CNC Συντάσσεται όπως οι περισσότερες γλώσσες προγραμματισμού των υπολογιστών και μπορεί να φέρει λογικές πράξεις και επαναλήψεις
FORTRAN και Αντικειμενοστραφής Προγραμματισμός
FORTRAN και Αντικειμενοστραφής Προγραμματισμός Παραδόσεις Μαθήματος 2016 Δρ Γ Παπαλάμπρου Επίκουρος Καθηγητής ΕΜΠ georgepapalambrou@lmentuagr Εργαστήριο Ναυτικής Μηχανολογίας (Κτίριο Λ) Σχολή Ναυπηγών
Παράδειγμα 2. Λύση & Επεξηγήσεις. Τέλος_επανάληψης Εμφάνισε "Ναι" Τέλος Α2
Διδακτική πρόταση ΕΝΟΤΗΤΑ 2η, Θέματα Θεωρητικής Επιστήμης των Υπολογιστών Κεφάλαιο 2.2. Παράγραφος 2.2.7.4 Εντολές Όσο επανάλαβε και Μέχρις_ότου Η διαπραγμάτευση των εντολών επανάληψης είναι σημαντικό
Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD
Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Δομή Επανάληψης Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Δομή Επανάληψης Επανάληψη με αρίθμηση DO = ,
5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ
5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5.1 Εισαγωγή στους αλγορίθμους 5.1.1 Εισαγωγή και ορισμοί Αλγόριθμος (algorithm) είναι ένα πεπερασμένο σύνολο εντολών οι οποίες εκτελούν κάποιο ιδιαίτερο έργο. Κάθε αλγόριθμος
Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010
Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ