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

Σχετικά έγγραφα
Εισαγωγή στην επιστήμη των υπολογιστών. Λογισμικό Υπολογιστών Κεφάλαιο 8ο Αλγόριθμοι

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

Πληροφορική 2. Αλγόριθμοι

ΚΕΦΑΛΑΙΟ 5: Αλγόριθµοι. 5.1 Αλγόριθµος: Ορισµός. Αλγόριθµοι : επίπεδα αφαίρεσης

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

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

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

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή

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

ΚΕΦΑΛΑΙΟ 5: Αλγόριθµοι

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

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

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

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

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

Διαδικασιακός Προγραμματισμός

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες)

Β. 1. Το διάγραμμα ροής του παραπάνω αποσπάσματος είναι το παρακάτω: I< 10 Εμφάνισε I Ι Ι + 3

Α2. Να γράψετε στο τετράδιο σας τον αριθμό 1-4 κάθε πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

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

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές

Εύρεση ν-στού πρώτου αριθμού

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

Έστω ένας πίνακας με όνομα Α δέκα θέσεων : 1 η 2 η 3 η 4 η 5 η 6 η 7 η 8 η 9 η 10 η

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

Προγραμματιστικές Τεχνικές

8. Η δημιουργία του εκτελέσιμου προγράμματος γίνεται μόνο όταν το πηγαίο πρόγραμμα δεν περιέχει συντακτικά λάθη.

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

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

Επαναληπτικό Διαγώνισμα

Ακρότατα πίνακα, χωρίς min, max, μόνο με pos

ΘΕΜΑΤΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ ΕΠΑΝΑΛΗΠΤΙΚΟ 10/4/2016

ΚΕΦΑΛΑΙΑ & 8.2 (ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ) ΘΕΩΡΙΑ

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

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

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

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

ΟΜΟΣΠΟΝΔΙΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑΔΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2019 Β ΦΑΣΗ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ

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

ΠΕΚ ΤΡΙΠΟΛΗΣ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠ/ΚΩΝ ΠΕ19,20 ΗΜ/ΝΙΑ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ

Η Έννοια του Κλάσµατος

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

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

Προγραµµατιστικές Τεχνικές

53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η

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

Αρχή. Διάβασε Χ ΟΧΙ Χ < > 0 ΝΑΙ Α Α +1 Γ Β / Α ΝΑΙ ΟΧΙ. Εμφάνισε Γ. Τέλος

Υπολογιστικά & Διακριτά Μαθηματικά

Περιεχόμενα. Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23. Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ

4.2 ΕΥΚΛΕΙΔΕΙΑ ΔΙΑΙΡΕΣΗ

Ο μαθητής που έχει μελετήσει το κεφάλαιο της θεωρίας αριθμών θα πρέπει να είναι σε θέση:

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Για i από 1 μέχρι Μ Εμφάνισε A[4,i] Τέλος_επανάληψης. (μονάδες 6) ΤΕΛΟΣ 1ης ΑΠΟ 7 ΣΕΛΙΔΕΣ

Αριθμητική Ανάλυση & Εφαρμογές

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Τελικό επαναληπτικό διαγώνισμα Επιμέλεια: Δρεμούσης Παντελής

καθώς και το παρακάτω τμήμα αλγορίθμου γραμμένο σε «ΓΛΩΣΣΑ»:

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει;

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

8. Λεξιλόγιο μιας γλώσσας είναι όλες οι ακολουθίες που δημιουργούνται από τα στοιχεία του αλφαβήτου της γλώσσας, τις λέξεις.

τις αναδρομικές ακολουθίες (recursive sequences) στις οποίες ορίζαμε

ΘΕΜΑ Α. Μονάδες 10 Α2.

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΤΑΞΗ / ΤΜΗΜΑ : Γ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΑΠΡΙΛΙΟΣ 2018 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 (ΕΠΤΑ)

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

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

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

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Διάγραμμα Ροής. Σελίδα 1 από 10

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

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

ΚΕΦΑΛΑΙΟ 2 Παράδειγμα 3 Παράδειγμα 5 Παράδειγμα 6 ΔΤ3 ΔΤ4 151

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

Α1. Στον προγραµµατισµό χρησιµοποιούνται δοµές δεδοµένων. 1. Τι είναι δυναµική δοµή δεδοµένων; Μονάδες 3 2. Τι είναι στατική δοµή δεδοµένων;

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

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

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

ΦΡΟΝΤΙΣΤΗΡΙΑ ΠΡΟΟΔΟΣ

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

Θέματα ΑΕΠΠ Πανελλήνιες Εξετάσεις 2006

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

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

Ν!=1*2*3* *(N-1) * N => N! = (Ν-1)! * N έτσι 55! = 54! * 55

Θέματα ΑΕΠΠ Πανελλήνιες Εξετάσεις 2008

Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Διαδικασίες και συναρτήσεις. 22 Νοε 2008 Ανάπτυξη εφαρμογών/ Υποπρογράμματα 1

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

3. Να γραφεί πρόγραμμα που θα διαβάζει 100 ακεραίους αριθμούς από το πληκτρολόγιο και θα υπολογίζει το άθροισμά τους.

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

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

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

5. Απλή Ταξινόμηση. ομές εδομένων. Χρήστος ουλκερίδης. Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

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

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

ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ

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

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

Πειραματιζόμενοι με αριθμούς στο περιβάλλον του Microworlds Pro: διαθεματική προσέγγιση περί «πολλαπλασίων και διαιρετών»

Transcript:

Εισαγωγή στην επιστήμη των Υπολογιστών & Τηλεπικοινωνιών Λογισμικό Υπολογιστών Αλγόριθμοι 1

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

Έννοια 3

Εύρεση Μεγίστου 4

Ορισμός Ενεργειών 5

Βελτίωση 6

Γενίκευση 7

Τρεις ομές 8

9

10

11

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

ιάγραμμα ροής 13

Ψευδοκώδικας 14

15

Μέσος όρος δύο αριθμών ΜέσοςΌροςΔύοΑριθμών Είσοδος: ύο αριθμοί 1.Πρόσθεσε τους δύο αριθμούς 2. ιαίρεσε το αποτέλεσμα με το 2 3.Επέστρεψε το αποτέλεσμα του βήματος 2 Τέλος 16

Αξιολόγηση Βαθμολογίας ΑξιολόγησηΒαθμολογίας Είσοδος: Αριθμός 1. αν ( αριθμός είναι μεγαλύτερος ή ίσος με το 5) τότε 1.1 Όρισε αξιολόγηση σε "προάγεται" αλλιώς 1.2 Όρισε αξιολόγηση σε "απορρίπτεται" τέλος αν 2. Επέστρεψε αξιολόγηση Τέλος 17

Αξιολόγηση βάσει γραμμάτων 1 ΑξιολόγησηΓραμμάτων Είσοδος: Ένας αριθμός 1. αν (αριθμός είναι μεταξύ 9 και 10, συμπεριλαμβανομένων) τότε 1.1 Όρισε αξιολόγηση σε "Α" Τέλος αν 2. αν (αριθμός είναι μεταξύ 8 και 8,9 συμπεριλαμβανομένων) τότε 2.1 Όρισε αξιολόγηση σε "B" Τέλος αν 3. αν (αριθμός είναι μεταξύ 7 και 7,9 συμπεριλαμβανομένων) τότε 3.1 Όρισε αξιολόγηση σε "Γ" Τέλος αν 18

Αξιολόγηση βάσει γραμμάτων 2 4. αν (αριθμός είναι μεταξύ 5 και 6,9 συμπεριλαμβανομένων) τότε 4.1 Όρισε αξιολόγηση σε " " Τέλος αν 5. αν (αριθμός είναι μικρότερος από 5) τότε 5.1 Όρισε αξιολόγηση σε "Ε" Τέλος αν 6. Επέστρεψε αξιολόγηση Τέλος 19

Εύρεση Μεγίστου ΕύρεσηΜέγιστου Είσοδος: Λίστα θετικών ακεραίων 1. Όρισε Μέγιστο στο 0 2. όσο (υπάρχουν άλλοι ακέραιοι) 2.1 αν ( ακέραιος είναι μεγαλύτερος από Μέγιστο) τότε 2.1.1 Όρισε Μέγιστο στην τιμή του ακέραιου Τέλος αν Τέλος όσο 3. Επέστρεψε Μέγιστο Τέλος 20

Εύρεση Μεγίστου από 1000 ακεραίους ΕύρεσηΜέγιστου Είσοδος: 1.000 θετικοί ακέραιοι 1. Όρισε Μέγιστο στο 0 2. Όρισε Μετρητή στο 0 3. όσο (Μετρητής είναι μικρότερος από 1.000) 3.1 αν (ακέραιος είναι μεγαλύτερος από Μέγιστο) τότε 3.1.1 Όρισε Μέγιστο στην τιμή του ακέραιου Τέλος αν 3.2 Αύξησε Μετρητή Τέλος όσο 4. Επέστρεψε Μέγιστο Τέλος 21

Ορισμός Αλγόριθμος είναι ιατεταγμένο σύνολο εντολών Σαφή βήματα Παραγωγή αποτελέσματος Τερματισμός σε πεπερασμένο χρόνο 22

Υποαλγόριθμοι Ένας αλγόριθμος μπορεί να χωριστεί σε μικρότερες μονάδες που ονομάζονται υποαλγόριθμοι Υποπρογράμματα Διαδικασίες Συναρτήσεις Μέθοδοι Υπομονάδες 23

Υποαλγόριθμοι 24

Υποαλγόριθμοι ΕύρεσηΜέγιστου Είσοδος: Λίστα θετικών ακεραίων 1. Όρισε Μέγιστο στο 0 2. όσο (υπάρχουν ακέραιοι) 2.1 ΕύρεσηΜεγαλύτερου Τέλος όσο 3. Επέστρεψε Μέγιστο Τέλος ΕύρεσηΜεγαλύτερου Είσοδος: Μέγιστος και τρέχων ακέραιος 1. αν (ο ακέραιος είναι μεγαλύτερος από τον Μέγιστο) τότε 1.1Όρισε τον Μέγιστο ίσο με την στην τιμή του ακέραιου Τέλος αν Τέλος 25

Βασικοί Αλγόριθμοι Άθροιση Γινόμενο Ελάχιστο και Μέγιστο Ταξινόμηση Αναζήτηση 26

Άθροιση 27

Γινόμενο 28

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

Ταξινόμηση Επιλογή Φυσαλίδα Παρεμβολή 30

Ταξινόμηση Επιλογής 31

Ταξινόμηση Επιλογής 32

Ταξινόμηση Φυσαλίδας 33

Ταξινόμηση Φυσαλίδας 34

Ταξινόμηση Φυσαλίδας 35

Ερωτήματα Πόσεςσυγκρίσειςθαχρειασθείη μέθοδος της φυσαλίδας? Μπορεί να γίνει κάτι καλύτερο? 36

Ταξινόμηση Παρεμβολής 37

Ταξινόμηση Παρεμβολής 38

Αναζήτηση Σειριακή χρησιμοποιείται για τις μη ταξινομημένες λίστες υαδική χρησιμοποιείται για τις ταξινομημένες λίστες 39

Αναζήτηση Σειριακή 40

Αναζήτηση υαδική 41

Αναζήτηση υαδική Στην αρχή ο πρώτος έχει την τιμή 0 και ο τελευταίος την τιμή 11. Ορίζουμε τον μέσο ώστε να δείχνει στη μεσαία θέση, (0 + 11) / 2, ή 5. Τώρα συγκρίνουμε το στόχο (22) με το στοιχείο στη θέση 5 (21). Ο στόχος είναι μεγαλύτερος από αυτή την τιμή, οπότε αγνοούμε το πρώτο μισό. 42

Αναζήτηση υαδική Μεταφέρουμε τον πρώτο μετά τον μέσο, στη θέση 6. Ορίζουμε τον μέσο ώστε να δείχνει στη μεσαία θέση του δεύτερου μισού, (6 + 11) / 2, ή 8. Τώρα συγκρίνουμε το στόχο (22) με το στοιχείο της θέσης 8 (62). Ο στόχος είναι μικρότερος από αυτή την τιμή, οπότε αγνοούμε τους αριθμούς από τη συγκεκριμένη τιμή (62) μέχρι το τέλος. 43

Αναζήτηση υαδική Μετακινούμε τον τελευταίο πριν από τον μέσο, στη θέση 7. Ξαναϋπολογίζουμε τον μέσο, (7 + 6) / 2, ή 6. Συγκρίνουμε το στόχο (22) με την τιμή σε αυτή τη θέση (22). Βρήκαμε το στόχο, οπότε μπορούμε να σταματήσουμε 44

Αναδρομή Ένας επαναληπτικός αλγόριθμος χρησιμοποιεί μόνο τις παραμέτρους και όχι τον ίδιο τον εαυτό του. Ένας αναδρομικός αλγόριθμος χρησιμοποιεί τον ίδιο τον εαυτό του Αναδρομή (recursion) ονομάζεται η διαδικασία κατά την οποία ένας αλγόριθμος καλεί τον εαυτό του 45

Αναδρομή Επαναληπτικός ορισμός του παραγοντικού Αναδρομικός ορισμός του παραγοντικού 46

Αναδρομή 47

Αναδρομή (Επαναληπτική Λύση) Παραγοντικό Είσοδος: Θετικός ακέραιος αριθ 1. Όρισε ΠαραγΝ στο 1 2. Όρισε i στο 1 3. όσο (i είναι μικρότερο ή ίσο με αριθ) 3.1 Όρισε ΠαραγΝ στο ΠαραγΝ i 3.2 Αύξησε i κατά ένα Τέλος όσο 4. Επέστρεψε ΠαραγΝ Τέλος 48

Αναδρομή (Αναδρομική Λύση) Παραγοντικό Είσοδος: Θετικός ακέραιος αριθ 1. αν (αριθ είναι ίσος με 0) τότε 1.1 επέστρεψε 1 αλλιώς 1.2 επέστρεψε αριθ Παραγοντικό (αριθ 1) Τέλος αν Τέλος 49

Φάσεις επίλυσης προβλημάτων Μαθηματικά 1. Κατανόηση του προβλήματος 2. Κατάστρωση ενός σχεδίου για την επίλυση του προβλήματος 3. Εκτέλεση του σχεδίου 4. Αξιολόγηση της λύσης όσον αφορά την ακρίβειά της και τη δυνατότητα να χρησιμοποιηθεί ως εργαλείο για την επίλυση άλλων προβλημάτων 50

Φάσεις Επίλυσης ενός Προβλήματος 1. Κατανόηση του προβλήματος 2. Σχηματισμός μιας ιδέας για το πως μπορεί να λυθεί το πρόβλημα από μια αλγοριθμική διαδικασία. 3. Σχηματισμός Αλγορίθμου και αναπαράστασή του ως πρόγραμμα. 4. Αξιολόγηση του προγράμματος όσον αφορά την ακρίβεια του και τη δυνατότητά του να χρησιμοποιηθεί σαν εργαλείο για την επίλυση άλλων προβλημάτων. 51

Πριν οι Α, Β, Γ και Δ διαγωνισθούν σε μια κούρσα ταχύτητας, έκαναν τις ακόλουθες προβλέψεις: Ο Α προέβλεψε ότι θα νικούσε ο Β. Ο Β προέβλεψε ότι ο Δ θα ήταν τελευταίος Ο Γ προέβλεψε ότι ο Α θα ήταν τρίτος Ο Δ προέβλεψε ότι η πρόβλεψη του Α θα ήταν σωστή. Μόνο μια από τις προβλέψεις αυτές ήταν σωστή και αυτή έγινε από τον νικητή. Με ποια σειρά τερμάτισαν την κούρσα οι Α, Β, Γ, και Δ. 52

Βηματική Εκλέπτυνση Είναι η τεχνική που ακολουθούμε όταν δεν στοχεύουμε να διεκπεραιώσουμε μια ολόκληρη εργασία (σε όλες τις λεπτομέρειες) με την πρώτη προσέγγιση. Είναι μια αναλυτική μεθοδολογία που η οποία προχωράει από το γενικό στο ειδικό. 53

Το άτομο Α πρέπει να βρει τις ηλικίες των παιδιών του ατόμου Β. Ο Β λέει στον Α ότι το γινόμενο των ηλικιών των παιδιών του είναι 36. Αφού σκέφτεται λίγο αυτό το στοιχείο, ο Α απαντάει ότι χρειάζεται άλλο ένα στοιχείο, οπότε ο Β λέει στον Α το άθροισμα των ηλικιών των παιδιών του. Ξανά ο Α απαντάει ότι χρειάζεται ένα ακόμη στοιχείο,και ο Β του λέει ότι το μεγαλύτερο παιδί του παίζει πιάνο. Αφού ακούει αυτό το στοιχείο, ο Α λέει στον Β τις ηλικίες των τριών παιδιών. Ποιες είναι? 54

(1, 1, 36) (1, 6, 6) (1, 2, 18) (2, 2, 9) (1, 3, 12) (2, 3, 6) (1, 4, 9) (3, 3, 4) (1, 1, 36)=38 (1, 6, 6)=13 (1, 2, 18)=21 (2, 2, 9)=13 (1, 3, 12)=16 (2, 3, 6)=11 (1, 4, 9)=14 (3, 3, 4)=10 55

Παράδειγμα Ένας ταξιδιώτης με μια χρυσή αλυσίδα επτά κρίκων πρέπει να μείνει σε ένα ξενοδοχείο για 7 νύκτες. Το ενοίκιο μιας νύχτας είναι ένας κρίκος και πρέπει να το πληρώνει κάθε πρωί προκαταβολικά. Ποιος ο μικρότερος αριθμός κρίκων που πρέπει να κοπούν; 56

57

58

Ο Ευκλείδειος Αλγόριθμος βρίσκει τον μέγιστο κοινό διαιρέτη δύο θετικών ακέραιων αριθμών Χ και Υ με την ακόλουθη διαδικασία: Όσο οι τιμές των Χ και Υ δεν είναι μηδέν, συνέχισε να διαιρείς τη μεγαλύτερη από τις τιμές με την μικρότερη αναθέτοντας στα Χ και Υ τις τιμές του διαιρέτη και του υπολοίπου αντίστοιχα. Η τελική τιμή του Χ είναι ο μέγιστος κοινός διαιρέτης. 59

Μη αναδρομικός αλγόριθμος 1. Αν Χ<Υ τότε{t X; X Y; Y t} 2. Όσο Υ 0 κάνε { 1. t X mod Y; 2. X Y; Y t } 3. Έξοδος Χ 60

Αναδρομικός Αλγόριθμος 1. ΜΚ (Χ,Υ) 2. Αν Χ<Υ τότε{t X; X Y; Y t} 3. Αν Υ>0 τότε ΜΚ (Υ, Χ mod Y); 4. Έξοδος το Χ; 5. Τέλος 61