Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης

Σχετικά έγγραφα
Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης

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

Έλεγχος και Διασφάλιση Ποιότητας Ενότητα 4: Μελέτη ISO Κουππάρης Μιχαήλ Τμήμα Χημείας Εργαστήριο Αναλυτικής Χημείας

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 4: Συναρτήσεις

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

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

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

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

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

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

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

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

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Διδακτική των εικαστικών τεχνών Ενότητα 3

Διοικητική Λογιστική

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

Πληροφορική ΙΙ Ενότητα 1

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 3: Συναρτήσεις

Διδακτική των εικαστικών τεχνών Ενότητα 2

Διδακτική των εικαστικών τεχνών Ενότητα 2

Διδακτική των εικαστικών τεχνών Ενότητα 2

Διδακτική των εικαστικών τεχνών Ενότητα 2

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

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

Πρακτική Άσκηση σε σχολεία της δευτεροβάθμιας εκπαίδευσης

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

Διδακτική των εικαστικών τεχνών Ενότητα 1

Υπολογιστική άλγεβρα Ενότητα 10: Βάσεις Groebner ενός ιδεώδους ΙΙΙ

Διδακτική των εικαστικών τεχνών Ενότητα 2

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

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

ΛΟΓΙΚΟ-ΜΑΘΗΜΑΤΙΚΕΣ ΣΧΕΣΕΙΣ & ΑΡΙΘΜΗΤΙΚΕΣ ΕΝΝΟΙΕΣ ΣΤΗΝ ΠΡΟΣΧΟΛΙΚΗ ΕΚΠΑΙΔΕΥΣΗ

Υπολογιστική άλγεβρα Ενότητα 1: Πολυωνυμικές σχέσεις και ταυτότητες, μέρος Ι

Πρακτική Άσκηση σε σχολεία της δευτεροβάθμιας εκπαίδευσης

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Γενική Φυσική Ενότητα: Ταλαντώσεις

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

Ποιοτική μεθοδολογία έρευνας στη Διδακτική των Μαθηματικών Ενότητα: Η διαχείριση του λάθους στην τάξη των μαθηματικών

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

Πρακτική Άσκηση σε σχολεία της δευτεροβάθμιας εκπαίδευσης

Διδακτική της Πληροφορικής: ερευνητικές προσεγγίσεις στη μάθηση και στη διδασκαλία (ΜΠΣ)

Αριθμητική Ανάλυση. Ενότητα 1: Εισαγωγή Βασικές Έννοιες. Φραγκίσκος Κουτελιέρης Πολυτεχνική Σχολή Τμήμα Χημικών Μηχανικών

Οντοκεντρικός Προγραμματισμός

Ενδεικτικές λύσεις ασκήσεων διαχείρισης έργου υπό συνθήκες αβεβαιότητας

Ποιοτική μεθοδολογία έρευνας στη Διδακτική των Μαθηματικών Ενότητα 7: Συγγραφή μιας εργασίας

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

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

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

ΛΟΓΙΚΟ-ΜΑΘΗΜΑΤΙΚΕΣ ΣΧΕΣΕΙΣ & ΑΡΙΘΜΗΤΙΚΕΣ ΕΝΝΟΙΕΣ ΣΤΗΝ ΠΡΟΣΧΟΛΙΚΗ ΕΚΠΑΙΔΕΥΣΗ

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

Βέλτιστος Έλεγχος Συστημάτων

Διδακτική των εικαστικών τεχνών Ενότητα 2

Εισαγωγή στους Η/Υ. Ενότητα 2β: Αντίστροφο Πρόβλημα. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 8: Συστήματα αρίθμησης

Εισαγωγή στη Μουσική Τεχνολογία Ενότητα: Ελεγκτές MIDI μηνυμάτων (Midi Controllers)

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

Γενική Φυσική Ενότητα: Εισαγωγή στην Ειδική Θεωρία της Σχετικότητας

Φιλοσοφία της Ιστορίας και του Πολιτισμού

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

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

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

Λειτουργία και εφαρμογές της πολιτιστικής διαχείρισης

Πρακτική Άσκηση σε σχολεία της δευτεροβάθμιας εκπαίδευσης

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

Μυελού των Οστών Ενότητα #1: Ερωτήσεις κατανόησης και αυτόαξιολόγησης

Έλεγχος Ποιότητας Φαρμάκων

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

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

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

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

Υπολογιστική άλγεβρα Ενότητα 7: Βάσεις Groebner I

Το Εικονογραφημένο Βιβλίο στην Προσχολική Εκπαίδευση

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

Γενική Φυσική Ενότητα: Δυναμική Άκαμπτου Σώματος

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

Ενότητα 12: Θέματα Διδακτικής Προγραμματισμού: Διδασκαλία αλγοριθμικής προσέγγισης

Υπολογιστική άλγεβρα Ενότητα 3: Πολυώνυμα τρίτου βαθμού

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

Τίτλος Μαθήματος. Ενότητα 1: Γενικά περί λογικού προγραμματισμού

Υπολογιστική άλγεβρα Ενότητα 4: Πολυώνυμα τετάρτου και μεγαλύτερου βαθμού

Μικροοικονομική Ανάλυση της Κατανάλωσης και της Παραγωγής

Θεατρικές Εφαρμογές και Διδακτική της Φυσικής Ι

Παιδαγωγικά. Ενότητα Β: Γενικοί σκοποί της διδασκαλίας και διδακτικοί στόχοι. Ζαχαρούλα Σμυρναίου Σχολή Φιλοσοφίας Τμήμα Παιδαγωγικής και Ψυχολογίας

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

Διδακτική Απειροστικού Λογισμού

Εφαρμογές των Τεχνολογιών της Πληροφορίας και των Επικοινωνιών στη διδασκαλία και τη μάθηση

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον

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

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

Το Εικονογραφημένο Βιβλίο στην Προσχολική Εκπαίδευση

Πρακτική Άσκηση σε σχολεία της δευτεροβάθμιας εκπαίδευσης

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

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

Το Εικονογραφημένο Βιβλίο στην Προσχολική Εκπαίδευση

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

Transcript:

Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης Ενότητα: Αλγόριθµοι, Λογικά Διαγράµµατα, Γλώσσες Προγραµµατισµού Γεώργιος Σκιάνης Γεωλογίας και Γεωπεριβάλλοντος

Σελίδα 2

1. Περιεχόµενα ενότητας... 4 2. Περί αλγορίθµων και προγραµµάτων... 4 3. Γλώσσες προγραµµατισµού... 6 Σελίδα 3

1. Περιεχόµενα ενότητας Αλγόριθµοι και λογικά διαγράµµατα - Γλώσσες προγραµµατισµού. 2. Περί αλγορίθµων και προγραµµάτων Ως αλγόριθµος νοείται η βήµα προς βήµα περιγραφή µιας καθορισµένης σειράς ενεργειών, για την επίλυση ενός προβλήµατος. Ένας αλγόριθµος είναι επιτυχής, εποµένως και χρήσιµος, όταν αποτελείται από έναν πεπερασµένο αριθµό σαφών και επιτυχών βηµάτων και επιλύει το υπόψη πρόβληµα σε πεπερασµένο χρόνο. Ο αλγόριθµος, ως διαδικασία επίλυσης προβληµάτων, είναι τόσο παλαιός όσο και η αριθµητική. Ένας γνωστός σε όλους µας αλγόριθµος είναι, για παράδειγµα, αυτός της διαίρεσης. Η πράξη της διαίρεσης είναι µια αλγοριθµική διαδικασία, καθώς εκτελείται ακολουθώντας µια καθορισµένη σειρά βηµάτων, και το ίδιο θα µπορούσε να πει κανείς και για άλλες πράξεις, όπως η εύρεση ελάχιστου κοινού πολλαπλασίου ή η επίλυση µιας δευτεροβάθµιας αλγεβρικής εξίσωσης. Ωστόσο, η εισβολή των ΗΥ στους διάφορους τοµείς της επιστηµονικής έρευνας και της οικονοµικής και κοινωνικής δραστηριότητας έδωσε ερεθίσµατα για την ανάπτυξη νέων αλγορίθµων, οι οποίοι να διατυπώνονται σε µια γλώσσα κατανοητή από τον υπολογιστή, ώστε να µπορούν να εκτελεστούν και να δώσουν λύση στο πρόβληµα που έχει διατυπωθεί. Σε αυτό το σηµείο µάλιστα αξίζει να αναφερθεί ότι πριν ακόµα ανακαλυφθεί ο ΗΥ, στο χώρο των θετικών επιστηµών είχαν αναπτυχθεί αλγόριθµοι επίλυσης προβληµάτων που όµως ήταν αρκετά περίπλοκοι για να εκτελεστούν µε χαρτί και µολύβι, οπότε παρέµεναν στα αζήτητα. Και ήταν η διάδοση των υπολογιστών ο καθοριστικός παράγοντας που έδωσε εναύσµατα για περαιτέρω έρευνα στις αλγοριθµικές διαδικασίες και στην ανάπτυξη του επιστηµονικού κλάδου της αριθµητικής ανάλυσης, αντικείµενο του οποίου είναι η ανάπτυξη χρήσιµων αλγορίθµων για την επίλυση µαθηµατικών προβληµάτων. Προκειµένου να διατυπωθεί µε σαφήνεια ο αλγόριθµος επίλυσης ενός προβλήµατος, εξυπηρετεί το να σχεδιαστεί ένα πλάνο εργασίας, ώστε να εκφραστεί ο αλγόριθµος ως πρόγραµµα, σε κάποια γλώσσα προγραµµατισµού. Ένα τέτοιο πλάνο εργασίας είναι το λογικό διάγραµµα (διάγραµµα ροής, flow chart), που αποτελεί το µεταβατικό στάδιο από την κατασκευή του αλγορίθµου στην υλοποίησή του ως πρόγραµµα. Ένας πολύ γνωστός αλγόριθµος, είναι ο αλγόριθµος του Ευκλείδη, που χρησιµεύει για την εύρεση του µέγιστου κοινού διαιρέτη (ΜΚΔ) δυο θετικών αριθµών x και y. Ο αλγόριθµος αυτός συνίσταται στα παρακάτω βήµατα: 1. Εισαγωγή ακεραίων x, y >0. 2. Διαίρεση x δια y. Έστω z το υπόλοιπο της διαίρεσης. 3. Αν z = 0, τότε ο ΜΚΔ είναι ο y. Τέλος αλγορίθµου. 4. Αν z 0, τότε επανάληψη του βήµατος 2, µε ακέραιους τώρα τους y, z, στη θέση των x, y Σελίδα 4

ΑΡΧΗ x, y Αρχικές Τιµές Έστω z το υπόλοιπο της διαίρεσης x/y z = 0 Τότε o ΜΚΔ των x, y είναι ο y Τότε αντικατέστησε τις αρχικές τιµές µε y, z ΤΕΛΟΣ Σχ. 1. Λογικό διάγραµµα του αλγορίθµου του Ευκλείδη, για την εύρεση του ΜΚΔ δυο θετικών ακεραίων x και y Στο Σχ. 1 παρουσιάζεται το λογικό διάγραµµα του αλγορίθµου του Ευκλείδη για προσδιορισµό ΜΚΔ. Το κάθε λογικό διάγραµµα αναπαριστάνεται σχηµατικά µε καθορισµένα σύµβολα, όπως τα βέλη, που δείχνουν τη φορά της διαδοχής των βηµάτων, οι ρόµβοι που υποδηλώνουν λογικό έλεγχο µιας συνθήκης, τα ορθογώνια στα οποία αναπαριστάνονται αριθµητικές πράξεις και πράξεις αντικατάστασης, οι κύκλοι (κόµβοι) που συνδέουν δυο ή περισσότερους λογικούς δρόµους και οι ελλείψεις (στρογγυλεµένα ορθογώνια) που υποδηλώνουν την αρχή ή το τέλος του αλγορίθµου. Η αναφορά στον αλγόριθµο του Ευκλείδη έγινε βέβαια για διδακτικούς και µόνο σκοπούς. Έχουν αναπτυχθεί αλγόριθµοι για αριθµητική επίλυση διαφορικών εξισώσεων, ή συστηµάτων διαφορικών εξισώσεων, που ενδιαφέρουν διάφορους κλάδους των γεωεπιστηµών, όπως η σεισµολογία, η µετεωρολογία (πρόγνωση καιρού) και η ρύπανση του περιβάλλοντος (διάχυση ρύπων). Ή ακόµα αλγόριθµοι για στατιστική επεξεργασία δεδοµένων, ψηφιακή επεξεργασία εικόνας και ανάλυση χωρικών προτύπων. Οι αλγόριθµοι αυτοί είναι συχνά ενσωµατωµένοι σε εύχρηστα πακέτα λογισµικού, που δεν απαιτούν να έχει ο χρήστης προχωρηµένες γνώσεις αριθµητικής ανάλυσης ή προγραµµατισµού. Ωστόσο, καλό είναι για τον κάθε γεωεπιστήµονα να καλλιεργήσει µια αλγοριθµική σκέψη, που να του δίνει τη δυνατότητα να διατυπώνει µε σαφήνεια τα βήµατα µε τα οποία θα επιχειρήσει να επιλύσει ένα πρόβληµα, ώστε αφενός να έχει µια καθαρή εικόνα για το πώς να Σελίδα 5

διεξαγάγει την έρευνά του και αφετέρου να µπορεί να γίνει κατανοητός από τον έµπειρο προγραµµατιστή µε τον οποίο ενδεχοµένως θα συνεργαστεί για την ανάπτυξη ενός λογισµικού επεξεργασίας δεδοµένων. Εξάλλου, κανένα λογισµικό δεν καλύπτει πλήρως τις ανάγκες της επιστηµονικής έρευνας και ο οποιοσδήποτε ερευνητής δεν αποκλείεται να βρεθεί στην ανάγκη να γράψει ένα δικό του πρόγραµµα που να βασίζεται σε έναν αλγόριθµο, τα βήµατα του οποίου θα πρέπει να είναι διατυπωµένα µε σαφήνεια ώστε να εκφραστούν ως εντολές σε µια γλώσσα προγραµµατισµού. 3. Γλώσσες προγραµµατισµού Για την επικοινωνία ανθρώπου-υπολογιστικής µηχανής χρειάζεται η κατάλληλη γλώσσα, στην οποία να διατυπώνονται εντολές που να µπορεί να εκτελέσει ο ΗΥ. Το πλήθος των γλωσσών που έχει επινοηθεί γι αυτόν το σκοπό χωρίζεται σε δυο κατηγορίες: στις γλώσσες χαµηλού επιπέδου και στις γλώσσες υψηλού επιπέδου. Στην πρώτη κατηγορία εµπίπτουν οι γλώσσες µηχανής και η γλώσσα assembly. Στην κεντρική µονάδα επεξεργασίας του κάθε ΗΥ είναι ενσωµατωµένη η γλώσσα µηχανής του, οι εντολές της οποίας εκφράζονται µε ακολουθίες δυαδικών αριθµών. Η γλώσσα µηχανής είναι δύσχρηστη, το δίχως άλλο, είναι όµως η µόνη γλώσσα στην οποία µπορεί να ανταποκριθεί άµεσα ο υπολογιστής. Η γλώσσα assembly βρίσκεται, κατά κάποιον τρόπο, ένα επίπεδο παραπάνω από τις γλώσσες µηχανής, µε την έννοια ότι ενώ είναι προσανατολισµένη προς τις λειτουργίες της υπολογιστικής µηχανής, οι εντολές της είναι σχετικά απλούστερες ως προς τη διατύπωση, και αυτό διευκολύνει το να γραφεί ένα πρόγραµµα που να εκτελείται από τον υπολογιστή. Όµως η assembly δεν παύει να είναι µια γλώσσα που ενδιαφέρει κυρίως τους προγραµµατιστές που ασχολούνται µε την εσωτερική λειτουργία του υπολογιστικού συστήµατος. Η πλειονότητα των επιστηµόνων ενδιαφέρεται να επιλύσει προβλήµατα που αφορούν στο γνωστικό τους αντικείµενο και, ως εκ τούτου, προγραµµατίζουν σε γλώσσες υψηλού επιπέδου, που προσανατολίζονται προς το συγκεκριµένο πρόβληµα προς επίλυση. Σε αυτήν την κατηγορία γλωσσών που είναι προσανατολισµένες προς το πρόβληµα συµπεριλαµβάνονται η FORTRAN, η BASIC, η COBOL, η ALGOL, η PL/1, η C, η C++, η LISP, η PROLOG και πολλές άλλες. Οι δυο τελευταίες (LISP και PROLOG) αξιοποιούνται στα έµπειρα συστήµατα και στις εφαρµογές τεχνητής νοηµοσύνης. Ένα πρόγραµµα γραµµένο σε γλώσσα υψηλού ή χαµηλού επιπέδου, για να µπορεί να εκτελεστεί από τον υπολογιστή, θα πρέπει πρώτα να µεταφραστεί σε δυαδικές εντολές, δηλαδή σε γλώσσα µηχανής, στην οποία ανταποκρίνεται άµεσα ο ΗΥ. Αυτή η µετατροπή µπορεί να γίνει είτε µε το µεταγλωττιστή (compiler) είτε µε το διερµηνευτή (interpreter). Ο πρώτος µεταφράζει το πρόγραµµα στο σύνολό του, ώστε να µπορεί µετά να εκτελεστεί, ενώ ο δεύτερος το µεταφράζει και αµέσως µετά το εκτελεί, γραµµή-γραµµή. Το πρόγραµµα που είναι γραµµένο σε γλώσσα υψηλού επιπέδου ονοµάζεται πηγαίο πρόγραµµα (source program) και αυτό που προκύπτει από τη µεταγλώττιση είναι το αντικείµενο πρόγραµµα (object program). Κατά τη διαδικασία της µεταγλώττισης ελέγχονται τυχόν γραµµατικά λάθη (όπως λάθη στη γραφή ενός χαρακτήρα, στο συµβολισµό µιας µεταβλητής ή στη διατύπωση µιας εντολής), όσο και συντακτικά λάθη (σφάλµατα στη λογική σύνδεση των εντολών), που µπορεί να έχουν παρεισφρήσει στο πρόγραµµα. Αν ο compiler εντοπίσει λάθος, τότε διακόπτεται η µετάφραση του προγράµµατος και για να συνεχιστεί αυτή θα πρέπει να γίνει πρώτα η σχετική διόρθωση. Ο interpreter µεταφράζει και εκτελεί το πρόγραµµα γραµµή-γραµµή και σταµατάει όταν θα συναντήσει το πρώτο λάθος. Σελίδα 6

Η επιλογή της κατάλληλης γλώσσας προγραµµατισµού υπαγορεύεται από τον τύπο της εφαρµογής που επιδιώκεται να αναπτυχθεί. Η γλώσσα COBOL, για παράδειγµα, µπορεί να αξιοποιηθεί, κυρίως, σε εµπορικές εφαρµογές. Από την άλλη πλευρά, η γλώσσα FORTRAN (Formula Translation) εξυπηρετεί σε µαθηµατικές, τεχνολογικές και επιστηµονικές εφαρµογές (αριθµητική επίλυση διαφορικών εξισώσεων, για παράδειγµα). Η FORTRAN είναι ιστορικά η πρώτη γλώσσα υψηλού επιπέδου που αναπτύχθηκε, από τα µέσα της δεκαετίας του 1950 και, παρόλο που στη συνέχεια εµφανίστηκαν και άλλες ανταγωνιστικές γλώσσες για επιστηµονικές εφαρµογές, η FORTRAN εξακολουθεί να έχει ευρεία απήχηση στην επιστηµονική κοινότητα, κυρίως γιατί πολλά προγράµµατα (ρουτίνες) είναι ήδη γραµµένα στη γλώσσα αυτή, υπάρχουν µάλιστα και βιβλία µε ρουτίνες σε FORTRAN για διάφορες εφαρµογές, και ως εκ τούτου ένας προγραµµατιστής µπορεί να αξιοποιήσει όλο αυτό το υλικό για να αναπτύξει το δικό του λογισµικό, στην ίδια γλώσσα. Αξίζει να επισηµανθεί ότι σε µια φυσική γλώσσα, όπως τα ελληνικά ή τα αγγλικά, το λεξιλόγιο είναι πλούσιο και εκτεταµένο, ώστε να αποδίδονται δύσκολες έννοιες, βαθιά νοήµατα και περίπλοκες καταστάσεις. Απεναντίας σε µια γλώσσα προγραµµατισµού αρκούν µερικές δεκάδες λέξεις για να αναπτυχθούν προγραµµατιστικές εφαρµογές. Η αιτία για αυτό το πολύ περιορισµένο λεξιλόγιο έχει να κάνει µε τις βασικές λειτουργίες που εκτελεί ένα υπολογιστικό σύστηµα, οι οποίες είναι: είσοδος δεδοµένων, αποθήκευση, έλεγχος, επεξεργασία και έξοδος. Λίγες λέξεις µπορούν να αποδώσουν αυτές τις λίγες στον αριθµό λειτουργίες. Η εξάπλωση του λειτουργικού συστήµατος Windows στους ΗΥ, το οποίο χαρακτηρίζεται από το παραθυρικό περιβάλλον επικοινωνίας µεταξύ χρήστη και υπολογιστή, έφερε στο προσκήνιο νέες γλώσσες προγραµµατισµού, που αν και έχουν τα βασικά στοιχεία των παλαιότερων γλωσσών διαφέρουν από αυτές ως προς τον τρόπο διατύπωσης των εντολών και συγκρότησης του προγράµµατος. Ενώ στις παλαιότερες γλώσσες το πρόγραµµα γράφεται σειριακά από την αρχή µέχρι το τέλος, οι νεότερες ακολουθούν τις αρχές του δοµηµένου προγραµµατισµού, που χαρακτηρίζεται από το χωρισµό του προγράµµατος σε συνεργαζόµενες µεταξύ τους υπορουτίνες και στη συγγραφή ανεξαρτήτως σειράς, αξιοποιώντας το παραθυρικό περιβάλλον και τεχνικές αντικειµενοστραφούς προγραµµατισµού. Στον αντικειµενοστραφή προγραµµατισµό, η οριοθέτηση µεταξύ προγράµµατος και δεδοµένων δεν είναι σαφής, ενώ στο σειριακό προγραµµατισµό οι εντολές στις οποίες είναι διατυπωµένος ο αλγόριθµος είναι εντελώς ανεξάρτητες από τα όποια δεδοµένα εισαχθούν στο πρόγραµµα. Στις νεότερες αυτές γλώσσες προγραµµατισµού συµπεριλαµβάνονται η Visual Basic, η Visual C++, η Delphi, η Power Fortran και άλλες. Σελίδα 7

Σηµειώµατα Σηµείωµα Ιστορικού Εκδόσεων Έργου Το παρόν έργο αποτελεί την έκδοση 1.0 Σηµείωµα Αναφοράς Copyright Εθνικόν και Καποδιστριακόν Πανεπιστήµιον Αθηνών 2014. Γεώργιος Σκιάνης. «Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης. Στοιχεία Πληροφορικής και Αυτοµατοποιηµένης Επεξεργασίας Δεδοµένων». Έκδοση: 1.0. Αθήνα 2014. Διαθέσιµο από τη δικτυακή διεύθυνση: http://opencourses.uoa.gr/courses/geol5/ Σηµείωµα Αδειοδότησης Το παρόν υλικό διατίθεται µε τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εµπορική Χρήση Παρόµοια Διανοµή 4.0 [1] ή µεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράµµατα κ.λ.π., τα οποία εµπεριέχονται σε αυτό και τα οποία αναφέρονται µαζί µε τους όρους χρήσης τους στο «Σηµείωµα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/by-nc-sa/4.0/ Ως Μη Εµπορική ορίζεται η χρήση: που δεν περιλαµβάνει άµεσο ή έµµεσο οικονοµικό όφελος από την χρήση του έργου, για το διανοµέα του έργου και αδειοδόχο που δεν περιλαµβάνει οικονοµική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανοµέα του έργου και αδειοδόχο έµµεσο οικονοµικό όφελος (π.χ. διαφηµίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος µπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιµοποιεί το έργο για εµπορική χρήση, εφόσον αυτό του ζητηθεί. Διατήρηση Σηµειωµάτων Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού θα πρέπει να συµπεριλαµβάνει: Σελίδα 8

το Σηµείωµα Αναφοράς το Σηµείωµα Αδειοδότησης τη δήλωση Διατήρησης Σηµειωµάτων το Σηµείωµα Χρήσης Έργων Τρίτων (εφόσον υπάρχει) µαζί µε τους συνοδευόµενους υπερσυνδέσµους. Σηµείωµα Χρήσης Έργων Τρίτων Το Έργο αυτό κάνει χρήση των ακόλουθων έργων: Σχήµα 1, Σελίδα 5: Copyright Εθνικόν και Καποδιστριακόν Πανεπιστήµιον Αθηνών 2014. Χρήστος Χαντζής. Χρηµατοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στo πλαίσιo του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδηµαϊκά Μαθήµατα στο Πανεπιστήµιο Αθηνών» έχει χρηµατοδοτήσει µόνο τη αναδιαµόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράµµατος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηµατοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταµείο) και από εθνικούς πόρους. Σελίδα 9