Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. ΚΕΦΑΛΑΙΟ 2 Βασικές Έννοιες Αλγορίθμων

Σχετικά έγγραφα
Μάριος Αγγελίδης Ενότητες βιβλίου: 2.1, 2.3, 6.1 (εκτός ύλης αλλά χρειάζεται για την συνέχεια) Ώρες διδασκαλίας: 1

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 1: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ - ΟΡΙΣΜΟΙ

Πληροφορική ΙΙ. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο. Επικοινωνία:

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

Εισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ ΚΕΦΑΛΑΙΟ 2 ο ΚΕΦΑΛΑΙΟ 7 ο ΕΡΩΤΗΣΕΙΣ ΓΕΝΙΚΑ ΠΕΡΙ ΑΛΓΟΡΙΘΜΩΝ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

ΓΕ0170 -Αλγόριθμοι και Προηγμένες Προγραμματικές Τεχνικές. Εισαγωγή. Νίκος Αθανάσης.

Πρόβλημα 29 / σελίδα 28

Αλγόριθμοι. Βασικές έννοιες ΤΕΛΟΣ

1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα.

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

Βασικές Έννοιες Αλγορίθμων Τι είναι αλγόριθμος

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

ΚΕΦΑΛΑΙΟ 2 ο. αποτέλεσµα προς το χρήστη ή προς έναν άλλο αλγόριθµο. 7 ο ΓΕΛ Καλλιθέας Οδηγός Α.Ε.Π.Π.

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

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

TEI Ιονίων Νήσων Τμήμα Τεχνολογίας Τροφίμων Πληροφορική Σημειώσεις Τεύχος 3. Μάκης Σταματελάτος

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

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ

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

Ανάπτυξη εφαρμογών/ Βασικές γνώσεις/ πρώτο θέμα ΕΡΩΤΗΣΕΙΣ ΣΥΝΤΟΜΗΣ ΑΠΑΝΤΗΣΗΣ

Εισαγωγή στις Αρχές της επιστήμης των Η/Υ. Β Λυκείου

ΕΠΕΞΕΡΓΑΣΙΑ ΠΛΗΡΟΦΟΡΙΕΣ ΕΞΟ ΟΣ

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Δομή Ακολουθίας

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

1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα.

Προγραμματισμός I (Θ)

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βήματα προς τη δημιουργία εκτελέσιμου κώδικα

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

Ενδεικτικές Ερωτήσεις Θεωρίας

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 1 Ο. Εισαγωγή στις έννοιες Πρόβλημα, Αλγόριθμος, Προγραμματισμός, Γλώσσες Προγραμματισμού

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

Βασικές Έννοιες Αλγορίθμων. Βασικές Εντολές Αλγορίθμων (Κεφ. 2ο Παρ. 2.4)

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

Θέμα 1 ο. Επαναληπτικό ΛΥΣΕΙΣ

Εισαγωγή στις Αρχές της επιστήμης των Η/Υ. Β Λυκείου

ΣΗΜΕΙΩΣΕΙΣ ΣΤΟ ΜΑΘΗΜΑ «ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΕ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ»

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

ΚΕΦΑΛΑΙΟ 2 ΑΛΓΟΡΙΘΜΟΙ ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ ΘΕΩΡΙΑ

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

Βασικές Έννοιες Αλγορίθμων. Τι είναι αλγόριθμος. Για να είναι αλγόριθμος. Καθοριστικότητα 20/5/2014. Σκοπός μαθήματος. Αλγόριθμος

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

Θέματα Προγραμματισμού Η/Υ

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

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

Διάγραμμα Ροής (Flow Chart )

Ορισµοί κεφαλαίου. Σηµαντικά σηµεία κεφαλαίου

ΛΟΓΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ. Γ Λυκείου Κατεύθυνσης Mike Trimos

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

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω:

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

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

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

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

Επιμέλεια: Γιακουμόγλου Βαγγέλης.

Δομές Δεδομένων & Αλγόριθμοι

Εισαγωγή στην Πληροφορική Προγραμματισμός-Λειτουργικά

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

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με:

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω:

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

ΑΡΧΗ 2ΗΣ ΣΕΛΙΔΑΣ Γ Α... Β

Από το πρόβλημα στην ανάπτυξη αλγόριθμου

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

Πίνακας περιεχομένων. Πρόλογος...9 Ομάδα Α: Ερωτήσεις γενικών γνώσεων Ομάδα Β: Ερωτήσεις ειδικών γνώσεων Ευρετήριο ερωτήσεων...

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΨΕΥΔΟΓΛΩΣΣΑ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

ΚΕΦΑΛΑΙΟ 2 Βασικές έννοιες αλγορίθµων

Πρόβλημα 37 / σελίδα 207

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Α2. Να αναφέρετε ονομαστικά: i) τα αλγοριθμικά κριτήρια ii) τους τρόπους αναπαράστασης αλγορίθμου. (μονάδες 10)

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

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

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

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

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

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

Τάξη: Γ Λυκείου Κατεύθυνση: Τεχνολογική Μάθημα: Ανάπτυξη Εφαρμογών σε Προγ/κό Περιβάλλον Είδος Εξέτασης: Διαγώνισμα Ημερομηνία Εξέτασης:

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

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

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

Παρο υσίαση αλ γόριθμου

ΓΕΝΙΚΟ ΛΥΚΕΙΟ ΚΑΡΠΕΝΗΣΙΟΥ ΔΙΩΡΟ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ 19/12/2008. Τμήμα ΓΤ1 Όνομα:...

σας δίπλα στον αριθμό που αντιστοιχεί σε κάθε πρόταση τη λέξη Σωστό, αν η πρόταση είναι σωστή, ή Λάθος, αν η πρόταση είναι λανθασμένη.

Προγραμματισμός Ι (HY120)

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Αρχές Προγραμματισμού Η/Υ Μέθοδοι παρουσίασης του αλγόριθμου και Βασικές έννοιες

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

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Διάρκεια 3 ώρες. Όνομα... Επώνυμο... Βαθμός...

Transcript:

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 Βασικές Έννοιες Αλγορίθμων

2.1 Τι είναι αλγόριθμος Ο όρος προέρχεται από μετάφραση του βιβλίο του Αμπού Αμπντουλάχ Μοχάμεντ Ιμπν Μούζα Αλ Χουαρίζμι أبو عبد ال محمد بن موسى الخوارزمي Περσικά/Αραβικά: με τίτλο Κιταμπ Αλ-γκιαμπρ Λόγω της προέλευσης από την Άλγεβρα σήμαινε κάτι σαν συστηματική διαδικασία αριθμητικών χειρισμών Παράδειγμα: Αλγόριθμος Ευκλείδη για την εύρεση Μ.Κ.Δ Με δεδομένους δύο φυσικούς αριθμούς α και β με α>β (αν ισχύει α<β άλλαζουμε τη σειρά τους): αν ο β είναι 0 τότε ο α είναι ο ΜΚΔ αν ο β δεν είναι 0 τότε επαναλαμβάνουμε τη διαδικασία χρησιμοποιώντας τον β και το υπόλοιπο της διαίρεσης α/β

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

Κριτήρια αλγορίθμου Είσοδος (input). Καμία, μία ή περισσότερες τιμές δεδομένων πρέπει να δίνονται ως είσοδοι στον αλγόριθμο. Έξοδος (output). Ο αλγόριθμος πρέπει να δημιουργεί τουλάχιστον μία τιμή δεδομένων ως αποτέλεσμα προς το χρήστη ή προς έναν άλλο αλγόριθμο. Καθοριστικότητα (definiteness). Κάθε εντολή πρέπει να καθορίζεται χωρίς καμία αμφιβολία για τον τρόπο εκτέλεσής της. Περατότητα (finiteness). Ο αλγόριθμος πρέπει να τελειώνει μετά από πεπερασμένα βήματα εκτέλεσης των εντολών του. Αποτελεσματικότητα (effectiveness). Κάθε μεμονωμένη εντολή του αλγορίθμου να είναι απλή, ώστε να μπορεί να εκτελεστεί.

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

2.3 Περιγραφή και αναπαράσταση αλγορίθμων. Ελεύθερο κείμενο (free text). Ανεπεξέργαστος και αδόμητος τρόπος παρουσίασης. Μπορεί εύκολα να οδηγήσει σε μη εκτελέσιμη παρουσίαση παραβιάζοντας το κριτήριο της αποτελεσματικότητας. Διαγραμματικές τεχνικές (diagramming techniques). Γραφικός τρόπος παρουσίασης του αλγορίθμου με διάγραμμα ροής (flow chart) Με φυσική γλώσσα (natural language) κατά βήματα. Μπορεί να παραβιασθεί το κριτήριο της καθοριστικότητας. Με κωδικοποίηση (coding). Με πρόγραμμα που όταν εκτελεσθεί θα δώσει τα ίδια αποτελέσματα με τον αλγόριθμο

Πριν προχωρήσουμε... Οι αλγόριθμοι που θα κωδικοποιήσουμε πρέπει να εκτελούνται σε μια υπολογιστική μηχανή. Οι σύγχρονοι Η/Υ σχεδιάζονται με βάση την αρχιτεκτονική φον Νόιμαν, που διατυπώθηκε την δεκαετία του 40. Τα δεδομένα και οι εντολές των εκτελούμενων προγραμμάτων αποθηκεύονται σε μια μοναδική μνήμη εγγραφής-ανάγνωσης. Τα περιεχόμενα της μνήμης αυτής μπορούν να διευθυνσιοδοτηθούν κατά κελί, χωρίς να μας ενδιαφέρει ο τύπος των δεδομένων που περιέχεται εκεί. Η εκτέλεση των εντολών του προγράμματος πραγματοποιείται σειριακά (εκτός και αν υπάρχει ρητή διακλάδωση), από μια εντολή στην επόμενη.

Πριν προχωρήσουμε... Οι αλγόριθμοι που θα αναπτύξουμε θα κωδικοποιηθούν με την χρήση μιας Ψευδογλώσσας, οι εντολές της οποίας είναι αποτελεσματικές, ώστε να μπορούν να εκτελεστούν από την μηχανή φον Νόιμαν Εκτός από την Ψευδογλώσσα, θα χρησιμοποιήσουμε και την γλώσσα προγραμματισμού ΓΛΩΣΣΑ, ώστε οι κωδικοποιημένοι αλγόριθμοι να εκτελούνται στον υπολογιστή. Οι δομές της Ψευδογλώσσας και της ΓΛΩΣΣΑΣ είναι ίδιες και χρησιμοποιούνται σε όλες τις γλώσσες προγραμματισμού γενικού σκοπού. Επιπλέον, θα αναπαραστήσουμε αλγορίθμους με διαγράμματα ροής.