2. εισαγωγή στην έννοια του αλγόριθμου

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

Transcript of 2. εισαγωγή στην έννοια του αλγόριθμου

Page 1: 2. εισαγωγή στην έννοια του αλγόριθμου

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

Η/Υ

Page 2: 2. εισαγωγή στην έννοια του αλγόριθμου

Μέγιστος κοινός διαιρέτης στη θεωρία των

αριθμών ονομάζεται ο μεγαλύτερος ακέραιος

που διαιρεί ακριβώς δύο ακέραιους αριθμούς.

Διαιρέτης του αριθμού α λέγεται κάθε

φυσικός αριθμός κ για τον οποίο υπάρχει

αριθμός μ τέτοιος ώστε: α=μ*κ

Κοινός διαιρέτης των αριθμών α και β

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

ταυτόχρονα διαιρέτης του α και διαιρέτης

του β.

Page 3: 2. εισαγωγή στην έννοια του αλγόριθμου

Με παραγοντοποίησηΈστω ότι ψάχνουμε τον ΜΚΔ(α,β).

Παραγοντοποιούμε τους α και β σε

γινόμενο πρώτων παραγόντων. Ο

ΜΚΔ(α,β) ισούται με το γινόμενο των

κοινών πρώτων παραγόντων στη

μικρότερη κοινή δύναμη.

Page 4: 2. εισαγωγή στην έννοια του αλγόριθμου

Έστω ότι θέλουμε το ΜΚΔ των χ=27 και y=78

27

3 9

3 3

78

2 39

3 13

Από την Παραγοντοποίηση έχουμε:

27 = 3 χ 3 χ 3 = 33

78 = 2 χ 3 χ 13

Οι κοινοί παράγοντες στην μικρότερη δύναμη είναι το 3, άρα ο

ΜΚΔ(27, 78) = 3

Page 5: 2. εισαγωγή στην έννοια του αλγόριθμου

Σχηματίστε ομάδες 2-5 Μαθητών

Να βρείτε τον ΜΚΔ των αριθμών 32 και 48με παραγοντοποίηση πρώτων παραγόντων

Page 6: 2. εισαγωγή στην έννοια του αλγόριθμου

Με τον Αλγόριθμο του Ευκλείδη ο οποίος

επιτρέπει την εύρεση (ΜΚΔ) δύο θετικών

ακεραίων x και y. Ο αλγόριθμος αυτός

περιγράφεται σε ομιλούμενη γλώσσα ως εξής:

1. Διαίρεσε το x με το y, και έστω z το υπόλοιπο.

2. Αν z = 0, τότε ο ΜΚΔ είναι ο y.

3. Αν z ≠ 0, τότε επανάλαβε το βήμα 1 με τους

ακέραιους y και z αντί για x και y».

Page 7: 2. εισαγωγή στην έννοια του αλγόριθμου

Έστω ότι επιζητείται η εύρεση του ΜΚΔ των αριθμών 27και 78. Χρησιμοποιώντας τον αλγόριθμο ΕΥΚΛΕΙΔΗΣλαμβάνονται σε κάθε επανάληψη τιμές για τα x,y και z,όπως παρουσιάζονται στον παρακάτω πίνακα:

ΒΗΜΑ x y z

1ο 27 78

2ο

3ο

4ο

Συνεπώς ο ΜΚΔ των αριθμών 27 και 78 είναι ο 3, ο οποίος βρίσκεται

κατά την τέταρτη επανάληψη.

27

2778 24

2427 3

24 3 0

Page 8: 2. εισαγωγή στην έννοια του αλγόριθμου

Σχηματίστε ομάδες 2-5 Μαθητών

Να βρείτε τον ΜΚΔ των αριθμών 32 και 48με Αλγόριθμο του Ευκλείδη.

Page 9: 2. εισαγωγή στην έννοια του αλγόριθμου

Ιστορικά, ένας από τους πρώτους

αλγορίθμους, είναι ο αλγόριθμος για την

εύρεση του Μέγιστου Κοινού Διαιρέτη (ΜΚΔ)

δύο ακεραίων αριθμών x και y.

Ο ευκλείδειος αλγόριθμος είναι ο

παππούς όλων των αλγορίθμων,

αφού είναι ο παλαιότερος μη

τετριμμένος αλγόριθμος που

χρησιμοποιείται ακόμα και σήμερα.»

(Ντόναλντ Κνουθ, Donald Knuth,

1981)

Page 10: 2. εισαγωγή στην έννοια του αλγόριθμου

1. Αλγόριθμος Ευκλείδης

Διάβασε x, y

2. z ← y

3. Όσο z ≠ 0 επανάλαβε

4. z ← x mod y

5. x ← y

6. y ← z

7. Τέλος_επανάληψης

8. Εμφάνισε x

9. Τέλος Ευκλείδης

http://www.pseudoglossa.gr/new/

Σχηματίστε ομάδες 2-5 Μαθητών

Να βρείτε τον ΜΚΔ των αριθμών 32 και 48 με Αλγόριθμο του Ευκλείδη αξιοποιώντας το περιβάλλον του διερμηνευτή Ψευδογλώσσας http://www.pseudoglossa.gr/new/ όπου θα αντιγράψετε τον αλγόριθμο του Ευκλείδη από το αρχείο ΜΚΔ.txt.

Page 11: 2. εισαγωγή στην έννοια του αλγόριθμου

Η λέξη αλγόριθμος προέρχεται από μια

μελέτη του Πέρση μαθηματικού Μοχάμεντ

Ιμπν Μουσά Αλ Χουαρίζμι, που έζησε περί το

825 μ.Χ.

Η ύπαρξη και η ηλικία μερικών αλγορίθμων

αριθμεί χιλιάδες χρόνια.

Σήμερα, το πεδίο της μελέτης των

αλγορίθμων (θεωρία αλγορίθμων) είναι ένα

ιδιαίτερα ευρύ πεδίο έρευνας.

Page 12: 2. εισαγωγή στην έννοια του αλγόριθμου

Αλγόριθμος είναι μια πεπερασμένη σειρά

ενεργειών, αυστηρά και καθορισμένων και

εκτελέσιμων σε πεπερασμένο χρόνο, που

στοχεύουν στην επίλυση ενός προβλήματος

Page 13: 2. εισαγωγή στην έννοια του αλγόριθμου

Η έννοια του αλγορίθμου δεν συνδέεται

αποκλειστικά και μόνο με προβλήματα της

Πληροφορικής.

Το δέσιμο της γραβάτας

αποτελεί ένα πρόβλημα, για την

επίλυση του οποίου χρειάζεται

να εκτελεστεί μια πεπερασμένη

σειρά ενεργειών.

Page 14: 2. εισαγωγή στην έννοια του αλγόριθμου

Καθοριστικότητα: Κάθε εντολή ενός αλγορίθμου χρειάζεται νακαθορίζεται χωρίς καμία αμφιβολία για τον τρόπο εκτέλεσής της.

Περατότητα: Κάθε αλγόριθμος πρέπει να τελειώνει μετά από

πεπερασμένα βήματα εκτέλεσης των εντολών του.

Αποτελεσματικότητα: Κάθε εντολή ενός αλγορίθμου χρειάζεται

να είναι διατυπωμένη απλά και κατανοητά, ώστε να μπορεί να

εκτελεστεί επακριβώς και σε πεπερασμένο μήκος χρόνου.

Είσοδος: Κάθε αλγόριθμος χρειάζεται να δέχεται ένα σύνολο

μεταβλητών εισόδου (που μπορεί να είναι και το κενό σύνολο), οι

οποίες αποτελούν τα δεδομένα του αλγορίθμου.

Έξοδος: Κάθε αλγόριθμος χρειάζεται να δημιουργεί κάποιο

αποτέλεσμα.

Page 15: 2. εισαγωγή στην έννοια του αλγόριθμου

Με βάση τα παραπάνω, ο ευκλείδειος

αλγόριθμος για τον υπολογισμό του ΜΚΔ δύο

θετικών ακεραίων αριθμών:

• περιγράφεται πλήρως με ακρίβεια και

σαφήνεια,

• Ο παραπάνω αλγόριθμος, μπορεί να

απαντήσει όχι μόνο στη συγκεκριμένη

ερώτηση, «να βρεθεί ο ΜΚΔ των 27 και 78»,

αλλά σε όλες τις παρόμοιες ερωτήσεις.