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

Σχετικά έγγραφα
Διοικητική Λογιστική

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

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

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

Βάσεις Περιβαλλοντικών Δεδομένων

Τεχνικό Σχέδιο - CAD

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

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

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

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

Τεχνικό Σχέδιο - CAD

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

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

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

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

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

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

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

Τεχνικό Σχέδιο - CAD. Τόξο Κύκλου. Τόξο Κύκλου - Έλλειψη. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

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

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

Τεχνολογία Πολιτισμικού Λογισμικού

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

Διαχείριση Πολιτισμικών Δεδομένων

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

Εννοιες και Παράγοντες της Ψηφιακής Επεξεργασίας Εικόνας

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

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

Ασφάλεια Πληροφοριακών Συστημάτων

Βάσεις Περιβαλλοντικών Δεδομένων

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

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

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

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

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

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

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

Προγραμματισμός Η/Υ. 7 η ενότητα: Αρχεία. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

Πληροφορική ΙΙ Θεματική Ενότητα 5

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

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

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

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

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

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

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

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

Προγραμματισμός Η/Υ. 6 η ενότητα: Συναρτήσεις. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

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

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Τεχνολογία Πολιτισμικού Λογισμικού

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Προγραμματισμός Η/Υ. 3 η ενότητα. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

Βάσεις Περιβαλλοντικών Δεδομένων

Προγραμματισμός Η/Υ. 8 η ενότητα: Περιβαλλοντικά και μαθηματικά προβλήματα. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων

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

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

Ασφάλεια Πληροφοριακών Συστημάτων

Βάσεις Περιβαλλοντικών Δεδομένων

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

Τεχνικό Σχέδιο - CAD

Τεχνικό Σχέδιο - CAD

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

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

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

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

ΔΡΔ: Διαγράμματα Ροής Δεδομένων

ΠΕΡΙΒΑΛΛΟΝΤΙΚΗ ΠΟΛΙΤΙΚΗ & ΝΟΜΟΘΕΣΙΑ ΜΑΘΗΜΑ 1

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

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

Πληροφορική ΙΙ Θεματική Ενότητα 12

Τεχνικό Σχέδιο - CAD

Ασφάλεια Πληροφοριακών Συστημάτων

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

Βάσεις Περιβαλλοντικών Δεδομένων

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

Τεχνικό Σχέδιο - CAD

Βάσεις Περιβαλλοντικών Δεδομένων

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

ΔΙΟΙΚΗΣΗ ΔΙΕΘΝΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ

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

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

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

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

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

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Τεχνολογία Πολιτισμικού Λογισμικού

Προγραμματισμός H/Y Ενότητα 1: Εισαγωγή. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

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

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

Οργάνωση και Λειτουργία Ταξιδιωτικής Βιομηχανίας Ι

Ασφάλεια Πληροφοριακών Συστημάτων

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

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

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

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

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Μηχανές Πλοίου ΙΙ (Ε)

Transcript:

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

Δομημένος Προγραμματισμός DR. Α Θ Α Ν Α Σ Ι Ο Σ Κ Α Κ Α Ρ Ο Υ Ν Τ Α Σ

Περιεχόμενα Γνώσεις και εργαλεία Δομημένος Προγραμματισμός Αλγόριθμος Η γλώσσα προγραμματισμού C

Προαπαιτούμενες Γνώσεις Βασικά μαθηματικά Βασική γνώση Αγγλικής γλώσσας Τυπική χρήση Η/Υ

Χρήσιμα εργαλεία Περιβάλλον ανάπτυξης κώδικα π.χ. Codeblocks Συμβολομεταφραστής (Compiler) π.χ. GCC Σύγγραμμα ή ιστοσελίδα αναφορά

Δομημένος Προγραμματισμός Στην επιστήμη των υπολογιστών δομημένος ή διαδικαστικός προγραμματισμός είναι μια προσέγγιση στον προγραμματισμό που βασίζεται στην έννοια της κλίσης διαδικασίας. Η διαδικασία είναι ένα αυτοτελές σύνολο εντολών.

Δομημένος Προγραμματισμός Η διαδικασία είναι επίσης γνωστή ως ρουτίνα, υπορουτίνα, μέθοδος ή συνάρτηση Πρόγραμμα: Σύνολο εντολών, κατανοητών από τον υπολογιστή, για την επίλυση ενός προβλήματος.

Γιατί Προγραμματισμός; Πρέπει να επιλύσουμε ένα πρόβλημα, είτε απλό είτε σύνθετο Απαιτείται να επαναληφθεί μηχανικά μια διαδικασία Απαιτείται υψηλή ταχύτητα στην εκτέλεση διαδικασιών Ρητή η επίλυση προβλημάτων, ενώ προσφέρεται πλήθος εργαλείων για την ανάπτυξη λογισμικού

Τυπική διαδικασία επίλυσης προβλήματος Ανάλυση του προβλήματος Κατανόηση παραμέτρων Καθορισμός απαιτήσεων Επιλογή ή δημιουργία αλγορίθμου Συγγραφή κώδικα και αξιολόγηση Επανάληψη της διαδικασίας σε περίπτωση μη ικανοποίησης των απαιτήσεων

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

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

Ποιο το όφελος; Όλα τα παραπάνω επιτυγχάνονται με την τακτική του «διαίρει και βασίλευε». Αποδομούμε το μεγάλο πρόγραμμα (πρόβλημα) σε μικρότερα προγράμματα (προβλήματα),, τα οποία επιλύονται εύκολα

Αλγόριθμος Ορισμός: Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων, και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος.

Μέρη προγράμματος/αλγορίθμου Σταθερές, έχουν προκαθορισμένη τιμή σε όλο το πρόγραμμα Μεταβλητές, χρησιμοποιούνται για να παραστήσουν δεδομένα και μπορεί να αλλάζουν τιμή κατά τη διάρκεια του προγράμματος Τελεστές, χρησιμοποιούνται για αριθμητικές και λογικές πράξεις Εκφράσεις, χρησιμοποιεί όλα τα παραπάνω και η τελική τιμή της εξαρτάται από την ιεραρχία των πράξεων

Κύκλος ζωής ενός προγράμματος Σκεφτείτε μια ιδέα για ένα πρόγραμμα Χρήση ενός περιβάλλοντος ανάπτυξης κώδικα για να γράψουμε τον πηγαίο κώδικα (sourse code) Μεταγλώττιση του προγράμματος με χρήση ενός μεταγλωττιστή μιας γλώσσας προγραμματισμού (compile and link) Διόρθωση λαθών, αν υπάρχουν (errors) Εκτέλεση του προγράμματος (run)

Γλώσσα Προγραμματισμού Γλώσσα προγραμματισμού λέγεται μια τεχνητή γλώσσα που μπορεί να χρησιμοποιηθεί για τον έλεγχο μιας μηχανής, συνήθως ενός υπολογιστή. Οι γλώσσες προγραμματισμού (όπως άλλωστε και οι ανθρώπινες γλώσσες ) ορίζονται από ένα σύνολο συντακτικών και εννοιολογικών κανόνων.

Γλώσσα Προγραμματισμού Οι γλώσσες προγραμματισμού χρησιμοποιούνται για να διευκολύνουν την οργάνωση και διαχείριση πληροφοριών, αλλά και για την ακριβή διατύπωση αλγορίθμων.

Γλώσσα Προγραμματισμού C Ιδιαίτερα δημοφιλής Έχει χρησιμοποιηθεί για τον προγραμματισμό ευρέως φάσματος συστημάτων και εφαρμογών Γλώσσα «μετρίου» επιπέδου

Παράδειγμα: Hello World!!! #include <stdio.h> int main() { printf( Hello World. \n ); return 0; }

Μεταγλώττιση και εκτέλεση προγράμματος Πηγή: http://microchip.wikidot.com/mplabx:libraries

Μεταγλώττιση και εκτέλεση προγράμματος Μεταγλωττιστές (compilers) Μεταφράζουν ένα αρχείο πηγαίου κώδικα σε γλώσσα μηχανής (0 και 1) Στο αρχείο πηγαίου κώδικα (source file) μεταφράζεται σε ένα αντικειμενικό αρχείο (object file), συνδέεται με άλλα αντικειμενικά αρχεία ή βιβλιοθήκες, και τέλος, δημιουργείται το εκτελέσιμο αρχείο

Αποσφαλμάτωση Κάθε γλώσσα προγραμματισμού διέπεται από συντακτικούς κανόνες Όταν παραβαίνουμε κάποιον κανόνα (π.χ. σύνταξη εντολής) δημιουργείται ένα λάθος Η διαδικασία διόρθωσης των λαθών λέγεται αποσφαλμάτωση (debug) Τα λάθη μπορεί να είναι συντακτικά και λογικά (ποιο δύσκολο να εντοπιστούν)

Βιβλιοθήκες Στο προηγούμενο παράδειγμα είχαμε: #include <stdio.h> - Βιβλιοθήκη συστήματος

Βιβλιοθήκες Στο προηγούμενο παράδειγμα είχαμε τις γραμμές κώδικα: #include <stdio.h> -Βιβλιοθήκη συστήματος #include mylib.h -Βιβλιοθήκη χρήστη (εμείς)

Main function int main() {/*αρχή main*/ printf( Hello world.\n ); return 0; }/*τέλος main */ Όλα τα προγράμματα μας πρέπει να έχουν την main συνάρτηση Απλή εντολή σε C. Πως ξέρει ο υπολογιστής για την printf? Όλες οι εντολές στην C πρέπει να τελειώνουν με το ερωτηματικό (;)

Πρόγραμμα και Διάγραμμα Ροής Πρόγραμμα σε C Διάγραμμα Ροής #include <stdio.h> int main() { printf( Hello World. \n ); return 0; } Αρχή Εκτύπωσε Hello, world Τέλος

Δομημένος Προγραμματισμός DR. Α Θ Α Ν Α Σ Ι Ο Σ Κ Α Κ Α Ρ Ο Υ Ν Τ Α Σ

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

Επεξήγηση όρων χρήσης έργων τρίτων διαθέσιμο με άδεια CC-BY διαθέσιμο με άδεια CC-BY-SA διαθέσιμο με άδεια CC-BY-ND διαθέσιμο με άδεια CC-BY-NC διαθέσιμο με άδεια CC-BY-NC-SA διαθέσιμο με άδεια CC-BY-NC-ND διαθέσιμο με άδεια CC0 Public Domain διαθέσιμο ως κοινό κτήμα χωρίς σήμανση Δεν επιτρέπεται η επαναχρησιμοποίηση του έργου, παρά μόνο εάν ζητηθεί εκ νέου άδεια από το δημιουργό. Επιτρέπεται η επαναχρησιμοποίηση του έργου και η δημιουργία παραγώγων αυτού με απλή αναφορά του δημιουργού. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού, και διάθεση του έργου ή του παράγωγου αυτού με την ίδια άδεια. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η δημιουργία παραγώγων του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η εμπορική χρήση του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού και διάθεση του έργου ή του παράγωγου αυτού με την ίδια άδεια. Δεν επιτρέπεται η εμπορική χρήση του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η εμπορική χρήση του έργου και η δημιουργία παραγώγων του. Επιτρέπεται η επαναχρησιμοποίηση του έργου, η δημιουργία παραγώγων αυτού και η εμπορική του χρήση, χωρίς αναφορά του δημιουργού. Επιτρέπεται η επαναχρησιμοποίηση του έργου, η δημιουργία παραγώγων αυτού και η εμπορική του χρήση, χωρίς αναφορά του δημιουργού. Συνήθως δεν επιτρέπεται η επαναχρησιμοποίηση του έργου.

Διατήρηση Σημειωμάτων Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού θα πρέπει να συμπεριλαμβάνει: το Σημείωμα Αναφοράς το Σημείωμα Αδειοδότησης τη δήλωση Διατήρησης Σημειωμάτων το Σημείωμα Χρήσης Έργων Τρίτων (εφόσον υπάρχει) μαζί με τους συνοδευόμενους υπερσυνδέσμους.

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