Εισαγωγή στον προγραμματισμό

Σχετικά έγγραφα
Εισαγωγή στον Προγραμματισμό

Γλώσσες υψηλού επιπέδου Περιέχουν περισσότερες εντολές για την εκτέλεση πολύπλοκων εργασιών Τα προγράµµατα µεταφράζονται σε γλώσσα µηχανής είτε από το

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό

6. 1 Η έννοια του προγράμματος

ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει τρία εξίσου σημαντικά στάδια.

ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. 03/01/09 Χαράλαμπος Τζόκας 1

ΚΑΤΑΝΟΗΣΗ ΑΝΑΛΥΣΗ ΕΠΙΛΥΣΗ. Ο προγραμματισμός ασχολείται με το σύνολο των εντολών που δίνονται στον υπολογιστή ώστε να υλοποιείται ο αλγόριθμος.

ΚΕΦΑΛΑΙΟ VI. Εισαγωγή στον προγραμματισμό

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Επιµέλεια Θοδωρής Πιερράτος

Ε Ι Α Γ Ω Γ Η Σ Ο Ν Π Ρ Ο Γ Ρ Α Μ Μ Α Σ Ι Μ Ο Κ Ε Υ Α Λ Α Ι Ο 6. Σο πρόγραμμα γράφεται σε κάποια γλώσσα προγραμματισμού.

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Κεφάλαιο 6 ο Εισαγωγή στον Προγραμματισμό 1

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

Ενότητα 2 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

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

Κεφάλαιο 6 Εισαγωγή στον Προγραμματισμό. 26-Jun-15 ΑΕΠΠ - Καραμαούνας Π. 1

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Στέφανος Ουγιάρογλου

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

Μαλούτα Θεανώ Σελίδα 1

Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ

6. Εισαγωγή στον προγραµµατισµό

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

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

4. Συντακτικό μιας γλώσσας είναι το σύνολο των κανόνων που ορίζει τις μορφές με τις οποίες μια λέξη είναι αποδεκτή.

κ ε φ ά λ α ι ο 7 0 Α. Θ Ε Ω Ρ Ι Α Η έ ν ν ο ι α τ ο υ π ρ ο γ ρ ά µ µ α τ ο ς Ι σ τ ο ρ ι κ ή Α ν α δ ρ ο µ ή π α ρ α τ ή ρ η σ η

7 ο ΓΕΛ Καλλιθέας Οδηγός Α.Ε.Π.Π. ΚΕΦΑΛΑΙΟ 6 ο

ΑΕΠΠ ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. 6.3 Φυσικές και Τεχνιτές Γλώσσες 6.4 Τεχνικές Σχεδίασης Προγραμμάτων

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 6 ο

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

<<ΔΗΜΗΤΡΗΣ ΜΑΝΩΛΗΣ ΦΥΣΙΚΟΣ ΜCs>> 1

ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ

Α. Ερωτήσεις Ανάπτυξης

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

ΑΕΠΠ Ερωτήσεις θεωρίας

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

Εργαστήρι Πληροφορικής Αλγόριθµος 92 Σηµειώσεις Τεχνολογικής Κατεύθυνσης Γλώσσες µηχανής Αρχικά για να µπορέσει ο υπολογιστής να εκτελέσει µία οποιαδή

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής

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

ΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΘΕΜΑ 1 Α.

.EVAL push bx Xor bx,bh Add si,ax.loop dec cx. 1. Fortran. 2. Cobol. 3. Algol

Κεφάλαιο 1 Προγραμματισμός Υπολογιστή. Εφαρμογές Πληροφορικής Κεφ. 7 Καραμαούνας Πολύκαρπος 1

Γλώσσες Προγραμματισμού Μεταγλωττιστές

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

6.3 Φυσικές και τεχνητές γλώσσες

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

Π ρ ο γ ρ α μ μ α τ ι σ μ ό ς Β α σ ι κ έ ς έ ν ν ο ι ε ς Ι σ τ ο ρ ι κ ή α ν α δ ρ ο μ ή Η έννοια του προγράμματος Ιστορική αναδρομή

Βασίλειος Κοντογιάννης ΠΕ19

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

ΑΕΠΠ Ερωτήσεις τύπου Σωστό-Λάθος

Κεφάλαιο 7 Προγραμματισμός υπολογιστή

ΚΕΦΑΛΑΙΟ 7 ΕΙ Η, ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Περιεχόµενα. Ανασκόπηση - Ορισµοί. Ο κύκλος ανάπτυξης προγράµµατος. Γλώσσες Προγραµµατισµού Ασκήσεις

Πληροφορική 2. Γλώσσες Προγραμματισμού

Τεχνικές σχεδίασης προγραμμάτων, Προγραμματιστικά Περιβάλλοντα

Εισαγωγή στον προγραμματισμό

ΠΕΡΙΕΧΟΜΕΝΑ Η έννοια του προγράμματος Ιστορική αναδρομή Φυσικές και τεχνητές γλώσσες Τεχνικές σχεδίασης προγραμμάτων Αντικειμενοστραφής

ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου

Εισαγωγή στις Αρχές της επιστήμης των ΗΥ

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΠΕΡΙΕΧΟΜΕΝΑ Η έννοια του προγράμματος Ιστορική αναδρομή Φυσικές και τεχνητές γλώσσες Τεχνικές σχεδίασης προγραμμάτων Αντικειμενοστραφής

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ - ΓΛΩΣΣΑ

Μέρος Α. Λογισµικό & Προγράµµατα συστήµατος και εφαρµογών ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ. Το σηµερινό µάθηµα. Λογισµικό συστηµάτων & εφαρµογών

Μεταγλωττιστές Ενότητα 1: Εισαγωγή

Αλγόριθμος. Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών βημάτων με σκοπό την επίλυση ενός προβλήματος.

Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά.

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

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

ΕΙΣΑΓΩΓΗ ΣΤOΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Αρχές Προγραμματισμού Υπολογιστών

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΥΠΟΛΟΓΙΣΤΩΝ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος

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

ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΤΟ ΜΑΘΗΜΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ H/Y ΜΕ PASCAL. Ειδικότητα Τεχνικός Εφαρμογών Πληροφορικής ( Πολυμέσα/Web Designer- Developer/Video Games)

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ονοματεπώνυμο: Βαθμός:

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

Εισαγωγή. Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής

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

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

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών

Κεφάλαιο 1: Εισαγωγή. Αρχές Γλωσσών και Προγραμματισμού και Μεταφραστών. Γιάννης Γαροφαλάκης ΤΜΗΥΠ - Πανεπιστήμιο Πατρών

Βασικές Αρχές Προγραμματισμού

Εισαγωγή στον δομημένο προγραμματισμό

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

Κεφάλαιο 2: Μεταφραστές

ΜΕΡΙΚΑ ΣΤΟΙΧΕΙΑ ΓΙΑ ΤΙΣ ΓΛΩΣΣEΣ ΠPOΓPAMMATIΣMOY

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ ΤΗΣ Γ' ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

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

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

Κεφ. 1: Εισαγωγή στην έννοια του Αλγορίθμου και στον Προγραμματισμό. Η έννοια του προβλήματος

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

Θεωρία Προγραμματισμού

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 3 : Γλώσσες προγραμματισμού. Δρ.

Ορισμός Κάθε ζήτημα που τίθεται προς επίλυση, κάθε δύσκολη κατάσταση που μας απασχολεί και πρέπει να αντιμετωπιστεί.

Transcript:

Ενότητες: Εισαγωγή στον προγραμματισμό Η έννοια του προγράμματος Ιστορική αναδρομή Φυσικές και τεχνητές γλώσσες Τεχνικές σχεδίασης προγραμμάτων Ιεραρχική Σχεδίαση Τμηματικός Προγραμματισμός Δομημένος προγραμματισμός Αντικειμενοστραφής προγραμματισμός Παράλληλος προγραμματισμός Προγραμματιστικά περιβάλλοντα

Μάλλον δεν έχει ακούσει ούτε για προγράμματα ούτε για τις γλώσσες προγραμματισμού. Τι άσχετος Θεέ μου!!! Και εγώ πως μπορώ να επικοινωνήσω με αυτό το «παλιοκούτι»;;; Σε τι γλώσσα να του δώσω οδηγίες για να μου λύσει τα προβλήματά μου ;;;

Η έννοια του προγράμματος Μια σειρά εντολών προς τον υπολογιστή (αλγόριθμο) Τα δεδομένα τα οποία πρέπει να επεξεργαστεί Πρόγραμμα Προγράμματα = Αλγόριθμοι + Δομές Δεδομένων

Η έννοια του προγράμματος Ένα πρόγραμμα είναι απλά μια «συνταγή» που εφαρμόζει ο υπολογιστής πάνω στα δεδομένα ώστε να αποκομίσει τα επιθυμητά αποτελέσματα. Είναι όπως περίπου η συνταγή ψησίματος ενός κέικ. Τα δεδομένα αντιστοιχούν στα συστατικά, συμπεριλαμβάνοντας και την θερμότητα που παρέχεται από την ηλεκτρική κουζίνα. Ο αλγόριθμος αντιστοιχεί στις οδηγίες της συνταγής για ανακάτεμα, αναμονή, θερμότητα, ψύξη και ότι άλλο μπορεί να επιτελεστεί επί των συστατικών. Η έξοδος μπορεί να αντιστοιχισθεί με το τελικό κέικ, έτοιμο για σερβίρισμα. Έτσι ένα πρόγραμμα μπορούμε να πούμε ότι συνίσταται από δυο μέρη, τα δεδομένα σύμφωνα με τα οποία αυτό ενεργεί και τον αλγόριθμο (κώδικα) που διαχειρίζεται τα δεδομένα.

Τεχνητές γλώσσες Οι γλώσσες προγραμματισμού αναπτύχθηκαν, για να μπορεί ο προγραμματιστής να δίνει τις εντολές που πρέπει να εκτελέσει ο υπολογιστής. Μια γλώσσα προσδιορίζεται από το: Αλφάβητο Λεξιλόγιο Γραμματική Τυπικό ή τυπολογικό (accidence) Συντακτικό (syntax) Σημασιολογία

Μα καλά γιατί έχουμε τόσες πολλές γλώσσες προγραμματισμού και δεν φτιάχνουμε μία γλώσσα που να είναι η καλύτερη από όλες Η κάθε γλώσσα προγραμματισμού είναι φτιαγμένη για να εξυπηρετήσει συγκεκριμένους σκοπούς. Αν θέλουμε να επιλύσουμε μαθηματικά προβλήματα θα χρησιμοποιήσουμε την FORTAN, αν θέλουμε να μάθουμε προγραμματισμό θα χρησιμοποιήσουμε την BASIC ή την PASCAL, αν θέλουμε να φτιάξουμε ένα λειτουργικό σύστημα θα δουλέψουμε με την C. Ο προγραμματιστής καλείται να επιλέξει την καλύτερη γλώσσα για να υλοποιήσει το πρόγραμμα. Η επιλογή της γλώσσας για την ανάπτυξη μιας εφαρμογής εξαρτάται: από το είδος της εφαρμογής, το υπολογιστικό περιβάλλον στο οποίο θα εκτελεστεί, τα προγραμματιστικά περιβάλλοντα που διαθέτουμε και κυρίως τις γνώσεις του προγραμματιστή.

Ιστορική αναδρομή- Γλώσσες προγραμματισμού Γλώσσες μηχανής : Ο Η/Υ μπορεί να καταλάβει μόνο μια ακολουθία από ψηφία 0 και 1 Συμβολικές γλώσσες (χαμηλού επιπέδου) : Αντί για τις ακολουθίες του 0 και 1 χρησιμοποιούμε σύμβολα που είναι πιο κατανοητά από τον άνθρωπο μετά όμως ένα ειδικό πρόγραμμα (assembler) θα μεταφράσει τα σύμβολα σε δυαδικά ψηφία. Δεν υπάρχει μια συμβολική γλώσσα αλλά κάθε επεξεργαστής έχει το δικό του ρεπερτόριο εντολών που απαρτίζουν την συμβολική του γλώσσα. Επομένως κάθε συμβολική γλώσσα εξαρτάται από την αρχιτεκτονική του επεξεργαστή. Γλώσσες υψηλού επιπέδου (3ης γενιάς) Ο τρόπος έκφρασης είναι ακόμα πιο κατανοητός, υπάρχει δυνατότητα μεταφερσιμότητας, ευκολία στην εκμάθηση, και τέλος η διόρθωση και η συντήρηση των προγραμμάτων είναι ευκολότερη. Γλώσσες 4ης γενιάς Δεν απευθύνονται μόνο σε προγραμματιστές αλλά και προς τον απλό χρήστη του υπολογιστή αφού αποκρύπτουν όλο και περισσότερο την αρχιτεκτονική του υλικού και της τεχνικής του προγραμματισμού.

Ένα πρόγραμμα σε: γλώσσα μηχανής συμβολική γλώσσα γλώσσα υψηλού επιπέδου Υπολογισμός του αθροίσματος των αριθμών 1 έως 10

Γλώσσες υψηλού επιπέδου FORTAN (FORmula TRANslation) 1957 COBOL (Common Business Oriented Language) 1960 ALGOL (ALGOrithmic Language) 1960 PL/1 Programming Languagne/1 μέσα 60 LISP (LISt Processor) 1959 PROLOG (PROgramming LOGic) αρχές 70 LOGO (λόγος) 1967 BASIC (Beginner s All Purpose Symbolic Instruction Code) 1964 PASCAL (1970) C (1972) JAVA

Ταξινόμηση γλωσσών προγραμματισμού Οι περισσότερες γλώσσες είναι Διαδικασιακές (procedural) ή αλγοριθμικές Άλλες κατηγορίες είναι: Αντικειμενοστραφείς γλώσσες (object oriented) π.χ. C Συναρτησιακές γλώσσες (functional) π.χ. LISP Μη διαδικασιακές γλώσσες (non procedural) π.χ. PROLOG Γλώσσες ερωταπαντήσεων (query) π.χ. SQL

Ταξινόμηση γλωσσών προγραμματισμού με βάση την περιοχή χρήσης τους Γενικής χρήσης π.χ. BASIC, PASCAL Επιστημονικής κατεύθυνσης (science oriented) π.χ. FORTAN Εμπορικής κατεύθυνσης (business oriented) π.χ. COBOL Προγραμματισμού συστημάτων ( system programming) π.χ. C Τεχνητής νοημοσύνης (artificial intelligence) π.χ. LISP, PROLOG Ειδικής χρήσης. (χρησιμοποιούνται σε ειδικές περιοχές εφαρμογών όπως στα γραφικά, στη ρομποτική, στη σχεδίαση IC, στην εκπαίδευση κ.α.)

Τεχνικές σχεδίασης προγραμμάτων Ιεραρχική σχεδίαση προγράμματος Τμηματικός προγραμματισμός Δομημένος προγραμματισμός

Ιεραρχική σχεδίαση προγράμματος Εισαγωγή δεδομένων Υπολόγισε εισόδημα Υπολόγισε φορολογητέο Πρόγραμμα φορολογίας Υπολογισμοί Υπολόγισε εκπτώσεις Υπολόγισε φόρο που προπληρώθηκε Εκτύπωση αποτελεσμάτων 1ο επίπεδο 2ο επίπεδο 3ο επίπεδο 4ο επίπεδο Top-down program design από πάνω προς τα κάτω

Δομημένος Προγραμματισμός Ο δομημένος προγραμματισμός είναι μία μεθοδολογία σύνταξης προγραμμάτων που έχει σκοπό να βοηθήσει τον προγραμματιστή στην ανάπτυξη σύνθετων προγραμμάτων, να μειώσει τα λάθη, να εξασφαλίσει την εύκολη κατανόηση των προγραμμάτων και να διευκολύνει τις διορθώσεις και τις αλλαγές σε αυτά. Ο δομημένος προγραμματισμός στηρίζεται στη χρήση τριών και μόνο στοιχειωδών λογικών δομών: τη δομή της ακολουθίας τη δομή της επιλογής και τη δομή της επανάληψης Όλα τα προγράμματα μπορούν να γραφούν χρησιμοποιώντας μόνο αυτές τις τρεις δομές καθώς και συνδυασμό τους. Κάθε πρόγραμμα όπως και κάθε ενότητα προγράμματος έχει μόνο μία είσοδο και μόνο μία έξοδο.

Πλεονεκτήματα του δομημένου προγραμματισμού Δημιουργία απλούστερων προγραμμάτων. Άμεση μεταφορά των αλγορίθμων σε προγράμματα. Διευκόλυνση ανάλυσης του προγράμματος σε τμήματα. Περιορισμός των λαθών κατά την ανάπτυξη του προγράμματος. Διευκόλυνση στην ανάγνωση και κατανόηση του προγράμματος από τρίτους. Ευκολότερη διόρθωση και συντήρηση.

Προγραμματιστικά περιβάλλοντα Πρόγραμμα σε γλώσσα προγραμματισμού ΜΕΤΑΦΡΑΣΗ Πρόγραμμα σε γλώσσα μηχανής Μεταφραστικά προγράμματα: μεταγλωττιστές (compilers) διερμηνευτές (interpreters)

Διαδικασία μετάφρασης και εκτέλεσης Διερμηνευτής Ανάλυση-Έλεγχος Ανίχνευση-Εκτέλεση Εντολής 1 Αρχικό Πρόγραμμα Εντολή 1 Μεταγλωττιστής Ανάλυση-Έλεγχος Ανίχνευση-Εκτέλεση Εντολής 2 Ανάλυση-Έλεγχος Ανίχνευση-Εκτέλεση Εντολής ν Εντολή 2 Εντολή ν Μεταγλώττιση Φόρτωση Σύνδεση Όλων των εντολών Εκτέλεση ολόκληρου του προγράμματος

Μεταγλώττιση και σύνδεση προγράμματος Αρχικό Πρόγραμμα ή Πηγαίο (source) Μετταγλωτιστής (compiler) Τελικό Πρόγραμμα ή Αντικείμενο (object) Συνδέτης Φορτωτής (linker loader) Εκτελέσιμο πρόγραμμα (executable) Συντάκτης (editor) Βιβλιοθήκες (Libraries)

ΚΑΤΗΓΟΡΙΕΣ ΛΑΘΩΝ Λάθη όχι άλλα λάθη. ΣΥΝΤΑΚΤΙΚΑ Κατά την μεταγλώττιση Λανθασμένη γραφή δεσμευμένων λέξεων Λανθασμένη γραφή αναγνωριστικών Λανθασμένη χρήση σημείων στίξης Λανθασμένη σύνταξη εντολών Λανθασμένη σύνταξη παραστάσεων Παράλειψη δήλωσης ΕΛΕΓΧΟΣ ΛΟΓΙΚΑ Κατά την εκτέλεση Λανθασμένη απόδοση αλγορίθμου Κακή σχεδίαση προγράμματος Μη σωστός καθορισμός του προβλήματος Περιορισμοί της γλώσσας ή του συστήματος ΕΚΣΦΑΛΜΑΤΩΣΗ