Γλώσσες προγραμματισμού Ένας αλγόριθμος όταν περιγραφεί με μια μορφή που τη δέχεται ένας υπολογιστής, λέγεται πρόγραμμα (prοgram, prοgramme)
5/9/20152 Δυστυχώς, για να μπορέσουμε να μεταφράσουμε έναν αλγόριθμο στη γλώσσα της μηχανής (δυαδική μορφή) θα πρέπει να ικανοποιούνται τρία αυστηρά κριτήρια. Δηλαδή, η μετάφραση πρέπει να είναι: Ακριβής Χωρίς διφορούμενες εκφράσεις Χωρίς περιττά λόγια
3 Επειδή καμιά από τις μητρικές μας γλώσσες δεν μπορεί να ικανοποιήσει αυτά τα τρία κριτήρια, δημιουργήθηκαν (από το 1950 και μετά) πολλές καινούργιες γλώσσες που ικανοποιούν αυτά τα τρία κριτήρια και μπορούν να χρησιμοποιηθούν εύκολα από όλους εκείνους που θέλουν να γράψουν ένα πρόγραμμα Αυτές οι γλώσσες λέγονται γλώσσες προγραμματισμού υπολογιστών
4
5 Εισαγωγή στη FΟRΤRΑΝ Η FΟRΤRΑΝ είναι η πρώτη γλώσσα προγραμματισμού υπολογιστών η οποία επέτρεψε να κωδικοποιηθεί ένας αριθμητικός υπολογισμός μ' ένα τύπο που να μοιάζει μ' ότι γράφουμε στα μαθηματικά. Αυτό ήταν και τ' όνειρο του σχεδίου για τη γλώσσα FΟRΤRΑΝ, να κωδικοποιηθούν οι μαθηματικοί τύποι
6 Γιατί πρέπει να μάθουμε τη γλώσσα προγραμματισμού FΟRΤRΑΝ ; Η απάντηση ίσως δεν είναι απλή, αλλά θα γίνει μια προσπάθεια να απαντηθεί η ερώτηση, που τίθεται πολύ συχνά και πρέπει να γνωρίζει κάθε νέος προγραμματιστής τους λόγους για τους οποίους αξίζει να μάθει αυτή τη γλώσσα.
7 Η FORTRAN είναι μια γλώσσα προσαρμοσμένη στην επίλυση επιστημονικών και τεχνολογικών προβλημάτων. Άρα είναι μια ειδική γλώσσα αλλά, μπορεί να χρησιμοποιηθεί και σε κάθε άλλο πεδίο με αυξημένες υπολογιστές ανάγκες όπως η αριθμητική ανάλυση, η στατιστική κτλ.
8 Η γλώσσα FORTRAN είναι : αρκετά εύκολη στην εκμάθησή της, προσανατολισμένη στην έρευνα, περισσότερο αποτελεσματική στις μαθηματικές πράξεις, υπάρχουν διαθέσιμες και πολλές φορές δωρεάν, βιβλιοθήκες έτοιμων προγραμμάτων για κάθε χρήση, εύκολη στη χρήση της και από τις πιο σταθερές γλώσσες, παρέχει βελτιστοποιημένο κώδικα και πολύ χρήσιμα βοηθητικά διαγνωστικά μηνύματα κατά τις φάσεις : –της μεταγλώττισης (compilation) και –της φόρτωσης (link)
9 Στοιχεία της γλώσσας FΟRΤRΑΝ Tα 52 γράμματα του Λατινικού αλφαβήτου : Α, Β, C,....., Ζ και a, b, c,....., z Τα 10 αραβικά ψηφία : 0, 1,...., 9 Τ' ακόλουθα σύμβολα :. Τελεία, Κόμμα= Ίσον< Μεγαλύτερο > Μικρότερο $ Δολάριο ( Ανοικτή παρένθεση ) Κλειστή παρένθεση & Σύμβολο του "και" ' Απόστροφος " Διπλή απόστροφος : Άνω και κάτω τελεία :: Διπλή άνω και κάτω τελεία ! Θαυμαστικό ; Ερωτηματικό _ Υπογράμμιση (underscore) (από τη Fortran 90)
10 Τα πέντε (5) σύμβολα των αριθμητικών πράξεων : + Συν - Πλην * Eπι / Δια ** Ύψωση σε δύναμη Το λευκό (blanc) ή κενό διάστημα (Space Bar), που συνήθως συμβολίζεται στο χαρτί (κατά τη σύνταξη του προγράμματος) με Λ ή b. Τo λευκό διάστημα (κενό) αγνοείται από τον υπολογιστή μέσα σ' ένα κείμενο (πρόγραμμα) FΟRΤRΑΝ, μας επιτρέπει όμως να παρουσιάσουμε ένα κείμενο πιο ευκολοδιάβαστο και περισσότερο κατανοητό όταν εμφανίζεται στην οθόνη ή όταν είναι τυπωμένο στο χαρτί.
11 Μπορούμε δηλαδή, να γράφουμε τις λέξεις της FΟRΤRΑΝ είτε τη μια ακριβώς μετά την άλλη είτε με ένα κενό ή και περισσότερα κενά μεταξύ τους π.χ. IF (Α. GΤ. Β) GΟ ΤΟ 155 είναι το ίδιο πράγμα με την εντολή: ΙF(Α. GΤ. Β) GΟΤΟ 155 ή πιο απλά : ΙF (Α.GΤ.Β) GΟΤΟ 155
12 Εντολές της FΟRΤRΑΝ Η γλώσσα FORTRAN αποτελείται από μια σειρά "φράσεων" που λέγονται εντολές (Statements, instructiοns). Διακρίνουμε δύο ειδών εντολές. Α. Τις εντολές που δεν εκτελούνται ή εντολές προδιαγραφών που είναι απλές ενδείξεις για το μεταγλωττιστή. π.χ. ΙΝΤEGER Α, Β, C
13 Τις εντολές που εκτελούνται και που μετατρέπονται από τον μεταγλωττιστή σε μια σειρά από εντολές στη γλώσσα μηχανής έτοιμες να εκτελεστούν από τον υπολογιστή. π.χ. ΙF (Κ.EQ.J) WRITE( *, *) J
14 Κάθε εντολή της FORTRAN 77 πρέπει να γράφεται σε μία γραμμή και να έχει μέγιστο μήκος 80 χαρακτήρων. Έτσι οι 80 στήλες (θέσεις) μιας γραμμής της οθόνης διαιρούνται σε 4 ζώνες: ► Ζώνη ετικέτας ή αναφοράς, στήλες 1-5 ► Ζώνη συνέχειας, μόνο η στήλη 6 ► Ζώνη ελεύθερη για τις εντολές, στήλες 7-72 ► Ζώνη αναγνώρισης, στήλες 73-80
15 Στη FORTRAN 77 έχουμε τρεις τύπους από γραμμές α. Γραμμή επεξήγησης Στήλη 1: χαρακτήρας C ή * Στήλες 2-72 : κείμενο σχολίου ή επεξήγησης β. Γραμμή εντολής FΟRΤRΑΝ Στήλες 1-5: Eίτε ένας αριθμός από 1 μέχρι 5 ψηφία, τοποθετημένος οπουδήποτε μέσα στην περιοχή των 5 στηλών, είτε όλα λευκά. Στήλη 6: Λευκό ή μηδέν Στήλες 7-72: Εντολή FΟRΤRΑΝ γ. Γραμμή συνέχειας Στήλες 1-5: Λευκά Στήλη 6: Ένας χαρακτήρας ή αριθμός εκτός του μηδενός Στήλες 7-72: Συνέχεια της εντολής FΟRΤRΑΝ της προηγούμενης γραμμής.
16 Ο πηγαίος κώδικας ενός προγράμματος στη Fortran 90/95 μπορεί να γραφτεί είτε σε ελεύθερη μορφή είτε σε σταθερή. Η σταθερή μορφή είναι ακριβώς η ίδια μορφή με αυτή της FORTRAN 77. Και οι δύο μορφές επιτρέπουν τους πεζούς χαρακτήρες (μικρά γράμματα) να χρησιμοποιηθούν ως εναλλακτική λύση αντί για τους κεφαλαίους χαρακτήρες. Στη Fortran 90/95, σε μια γραμμή μπορούν να εμφανίζονται και περισσότερες εντολές αρκεί στο τέλος κάθε εντολής να προστεθεί ο χαρακτήρας ; (semicolon). Επίσης, μια εντολή, μπορεί να συνεχιστεί και σε περισσότερες γραμμές (μέχρι 19 στη Fortran 77 και 551 στη Fortran 90/95) Προσοχή. Δεν πρέπει να αναμιχθούν η ελεύθερη με τη σταθερή μορφή στο ίδιο πρόγραμμα.
17
5/9/2015Εργαστήριο Προγραμματισμού και Επεξεργασίας πληροφοριών 18 Στη FORTRAN έχουμε τις λέξεις-κλειδιά: ●Συμβολικό όνομα (symbolic name) ●Σταθερές (Cοnstants) ●Σημεία της στίξης ●Σημεία των πράξεων ●Τελεστές σχέσεων Συμβολικό όνομα είναι το όνομα μιας μεταβλητής ή ενός στοιχείου του προγράμματος. Το συμβολικό όνομα αποτελείται από μια σειρά από αλφαριθμητικούς χαρακτήρες (δηλαδή γράμματα ή αριθμούς) και τον χαρακτήρα _ (underscore, υπογράμμιση) από τους οποίους ο πρώτος πρέπει υποχρεωτικά να είναι γράμμα. Η FORTRAN 77 αναγνωρίζει μόνο τους 6 πρώτους χαρακτήρες και αγνοεί τους υπόλοιπους. Π.χ. τα ονόματα ΝUΜERΙCΑLS, ΝUΜERΙ και ΝUΜERΙCΑ θεωρούνται ακριβώς όμοια. Στη Fortran 90/95 το μήκος μπορεί να φτάσει μέχρι τους 31 χαρακτήρες
19 Η απόδοση συμβολικών ονομάτων είναι ελεύθερη και γίνεται αυθαίρετα εκ μέρους του προγραμματιστή. Συνιστάται να υπάρχει μια στενή σχέση μεταξύ του συμβολικού ονόματος και του φυσικού μέγεθος που εκπροσωπείται. π.χ. σε μια μεταβλητή που θα αντιπροσωπεύει ταχύτητα μπορούμε να δώσουμε μεταξύ άλλων τις ονομασίες : U, TAXYT, VIT, VITES, QUICK, X_TREM Δεν επιτρέπονται ονομασίες σαν: 2TEST, A+MIN, XY-1, 5A5, _VELOS Δηλαδή, πρέπει να χρησιμοποιούνται απλά και σύντομα ονόματα
20 Μια σταθερά, μπορεί να ανήκει σ' έναν από τους εξής τύπους: Ακέραια (Ιnteger) Πραγματική (Real) Διπλής ακρίβειας (Dοuble precision) Μιγαδική (Cοmplex) Λογική (Lοgical) Χαρακτήρα (Character)
21 Ακέραιες σταθερές είναι οι ακέραιοι αριθμοί, θετικοί και αρνητικοί, όπως γράφονται συνήθως στα μαθηματικά. Μια ακέραια σταθερά αποθηκεύεται σε μια λέξn τnς μνήμnς των 32 bits και επομένως πρέπει να βρίσκεται μεταξύ των αριθμών 2**31 -1 και 2**31 -1 δηλαδή, μεταξύ των αριθμών και Όταν κατά τη διάρκεια των πράξεων, μια σταθερά πάρει τιμή μεγαλύτερη από τη θεωρητικώς μεγαλύτερη, τότε συμβαίνει υπερχείλιση και τυπώνεται το μήνυμα Οverflow, ενώ όταν πάρει τιμή μικρότερη από τη θεωρητικώς μικρότερη τότε, τυπώνεται το μήνυμα Underflow
22 Πραγματικές σταθερές είναι οι πραγματικοί αριθμοί των μαθηματικών. Μια πραγματική σταθερά πρέπει να περιλαμβάνεται μεταξύ των αριθμών 10**-78 και 10**78, δηλαδή, οι αρνητικοί μεταξύ των αριθμών Ε+38 και Ε-38 και οι θετικοί μεταξύ των αριθμών Ε-38 και Ε+38. Ένας πραγματικός αριθμός μπορεί να γραφτεί με δύο τρόπους: α. Δεκαδικός τύπος Κατά το αγγλοσαξονικό σύστημα σημειώνουμε τον χωρισμό του δεκαδικού από το ακέραιο μέρος με μια τελεία και όχι με κόμμα (υποδιαστολή). Παραδείγματα τιμών δεκαδικού τύπου είναι οι αριθμοί:
23 β. Εκθετικός τύπος Κάθε αριθμός μπορεί να γραφτεί με τη μορφή m.n10±r Αν θέσουμε την έκφραση "10 εις τη δύναμη" με Ε τότε θα έχουμε τη μορφή m.nE±r π.χ E+01= 3, E+3= E2 = E-2= E02 = = E01= -0, Ε00= 0.0
24 Ένα απλό πρόγραμμα PROGRAM PROTO PRINT *, “Hello World !” END
25 Διαφάνειες από το Εργαστήριο Προγραμματισμού και Επεξεργασίας πληροφοριών