Αιγόξηζκνη 2.2.7 Δληνιέο θαη δνκέο αιγνξίζκνπ Δηζαγσγή ζηηο Αξρέο ηεο Δπηζηήκεο ησλ Η/Τ 1
Η δηαηύπσζε ελόο αιγνξίζκνπ ζηελ Φεπδνγιώζζα είλαη: Αλγόριθμος όνομα_αλγορίθμοσ Εντολές Τέλος όνομα_αλγορίθμοσ 2
Οη εληνιέο είλαη ιέμεηο (ζπλήζσο ξήκαηα ζε πξνζηαθηηθή) ή ζπκβνιηζκνί πνπ πξνζδηνξίδνπλ κία ζαθή ελέξγεηα. Οη ιέμεηο πνπ έρνπλ απζηεξά θαζνξηζκέλν λόεκα ζηελ ςεπδνγιώζζα θαινύληαη δεζκεπκέλεο ιέμεηο. Οη εληνιέο γξάθνληαη ζε μερσξηζηέο γξακκέο. Δπεμεγεκαηηθά ζρόιηα κπνξνύλ λα γξάθνληαη νπνπδήπνηε ζην ζώκα ηνπ αιγνξίζκνπ. Έλα ζρόιην αξρίδεη κε ην ραξαθηήξα ζαπκαζηηθό (!) 3
Αλυάβητο Σν ζύλνιν ησλ ραξαθηήξσλ πνπ ρξεζηκνπνηνύληαη ζηελ ςεπδνγιώζζα πεξηιακβάλεη: όια ηα γξάκκαηα ηεο ειιεληθήο ή αγγιηθήο αιθαβήηνπ πεδά θαη θεθαιαία ηνπο αξηζκεηηθνύο ραξαθηήξεο 0-9 ηνπο επόκελνπο εηδηθνύο ραξαθηήξεο " ( ) [ ] * + - / ^.,! < = > _ θελόο ραξαθηήξαο 4
Σταθερές Οη ζηαζεξέο ζηελ ςεπδνγιώζζα κπνξεί λα είλαη Αξηζκεηηθέο Αιθαξηζκεηηθέο Λνγηθέο. 5
Γηα ην ζρεκαηηζκό κηαο αξηζκεηηθήο ζηαζεξάο ρξεζηκνπνηνύληαη νη αξηζκεηηθνί ραξαθηήξεο θαη πηζαλά έλαο από ηνπο ραξαθηήξεο +, -. Δπίζεο, κπνξεί λα ρξεζηκνπνηεζεί ην θόκκα γηα ην δεθαδηθό ζεκείν. Π.ρ. 5, 123,27, -1, 1000000 Γηα ην ζρεκαηηζκό κηαο αιθαξηζκεηηθήο ζηαζεξάο ρξεζηκνπνηνύληαη νπνηνηδήπνηε ραξαθηήξεο πεξηθιεηόκελνη ζε δηπιά εηζαγσγηθά. Μηα ζηαζεξά κπνξεί λα έρεη νπνηνδήπνηε πιήζνο αξηζκεηηθώλ ή αιθαξηζκεηηθώλ ραξαθηήξσλ αληίζηνηρα. Οη ινγηθέο ζηαζεξέο είλαη δύν, ε Αιεζήο θαη Φεπδήο. 6
Μεταβλητές Γηα ην ζρεκαηηζκό ηνπ νλόκαηνο κηαο κεηαβιεηήο ρξεζηκνπνηείηαη νπνηνζδήπνηε αξηζκόο αιθαβεηηθώλ ή αξηζκεηηθώλ ραξαθηήξσλ θαη ν ραξαθηήξαο θάησ παύια. Ο πξώηνο ραξαθηήξαο ηεο κεηαβιεηήο πξέπεη λα είλαη αιθαβεηηθόο θαη δελ κπνξεί λα ρξεζηκνπνηεζεί δεζκεπκέλε ιέμε σο όλνκα κεηαβιεηήο. Οη κεηαβιεηέο ραξαθηεξίδνληαη σο αξηζκεηηθέο, αιθαξηζκεηηθέο ή ινγηθέο αλάινγα κε ηελ ηηκή πνπ ζα απνδνζεί ζε απηέο. Πξηλ από ηελ απόδνζε θάπνηαο ηηκήο ζε κηα κεηαβιεηή, ε κεηαβιεηή έρεη απξνζδηόξηζηε ηηκή. Οη ζηαζεξέο θαη νη κεηαβιεηέο θαινύληαη θαη ηειεζηένη. 7
Τελεστές Σειεζηέο είλαη ηα ζύκβνια θαη νη ιέμεηο πνπ ρξεζηκνπνηνύληαη ζηηο δηάθνξεο πξάμεηο. Τπάξρνπλ νη επόκελνη ηειεζηέο: Αξηζκεηηθνί ρεζηαθνί Λνγηθνί 8
Οη αξηζκεηηθνί ηειεζηέο ρξεζηκνπνηνύληαη γηα ηελ εθηέιεζε αξηζκεηηθώλ πξάμεσλ. Δίλαη νη: + γηα πξόζζεζε - γηα αθαίξεζε * γηα πνιιαπιαζηαζκό / γηα δηαίξεζε mod γηα ην ππόινηπν αθέξαηαο δηαίξεζεο (17 mod 5 = 2) div γηα ην πειίθν αθέξαηαο δηαίξεζεο (17 div 5 = 3) ^ γηα ύςσζε ζε δύλακε 9
Οη ζρεζηαθνί ηειεζηέο ρξεζηκνπνηνύληαη γηα ηε ζύγθξηζε δύν ηηκώλ. Σν απνηέιεζκα κηαο ζύγθξηζεο είλαη είηε Αιεζήο είηε Φεπδήο. Οη ζρεζηαθνί ή ζπγθξηηηθνί ηειεζηέο είλαη νη επόκελνη: < κηθξόηεξν > κεγαιύηεξν = ίζν <= κηθξόηεξν ή ίζν >= κεγαιύηεξν ή ίζν <> δηάθνξν 10
Οη ινγηθνί ηειεζηέο πινπνηνύλ ηηο ινγηθέο πξάμεηο. Σν απνηέιεζκα κηαο ινγηθήο πξάμεο είλαη Αιεζήο ή Φεπδήο. Λνγηθνί ηειεζηέο είλαη: ότι πξάμε άξλεζεο και πξάμε ζύδεπμεο ή πξάμε δηάδεπμεο 11
Σσναρτησιακοί τελεστές ή Σσναρτήσεις Μηα ζπλάξηεζε ρξεζηκνπνηείηαη γηα λα εθηειέζεη κηα πξνθαζνξηζκέλε ιεηηνπξγία. Κάζε ζπλάξηεζε έρεη έλα όλνκα αθνινπζνύκελν από δεύγνο παξελζέζεσλ πνπ πεξηθιείνπλ κηα κεηαβιεηή ή κηα ζηαζεξά ή γεληθόηεξα κηα παξάζηαζε. 12
Σξηγσλνκεηξηθέο ΗΜ(x), ΤΝ(x), ΔΦ(x) Μαζεκαηηθέο Α_Σ(x) γηα ηελ απόιπηε Σηκή Δ(x) γηα ηελ e x ΛΟΓ(x) γηα ην δεθαδηθό ινγάξηζκν, ΛΝ(x) γηα ην θπζηθό ινγάξηζκν Σ_Ρ(x) γηα ηελ ηεηξαγσληθή ξίδα Α_Μ(x) γηα ην αθέξαην κέξνο. 13
Δθθξάζεηο Μηα έθθξαζε κπνξεί λα είλαη κηα ζηαζεξά, κηα κεηαβιεηή, κηα ζπλάξηεζε ή έλαο ζπλδπαζκόο ζηαζεξώλ, κεηαβιεηώλ, ζπλαξηήζεσλ, ηειεζηώλ θαη παξελζέζεσλ. ε κία έθθξαζε πνπ απνηειείηαη από ζπλδπαζκό ζηνηρείσλ, εθηεινύληαη νη πξάμεηο επί ησλ ζηαζεξώλ θαη κεηαβιεηώλ πνπ νξίδνπλ νη ηειεζηέο. Οη ρξεζηκνπνηνύκελνη ηειεζηέο έρνπλ δηαθνξεηηθή ηεξαξρία. Απηό ζεκαίλεη όηη θάπνηεο πξάμεηο κπνξεί λα πξνεγνύληαη από θάπνηεο άιιεο ζε κηα έθθξαζε. 14
Η ηεξαξρία ησλ πξάμεσλ είλαη ε αθόινπζε: Α. Αξηζκεηηθνί ηειεζηέο ε θάζε έθθξαζε πνπ ππάξρνπλ αξηζκεηηθνί ηειεζηέο, αθνινπζείηαη ε πξνζδηνξηζκέλε από ηα καζεκαηηθά ηεξαξρία ησλ πξάμεσλ. Ύςσζε ζε δύλακε Πνιιαπιαζηαζκόο, Γηαίξεζε, Πειίθν αθέξαηαο δηαίξεζεο, Τπόινηπν αθέξαηαο δηαίξεζεο Πξόζζεζε, Αθαίξεζε Β. ρεζηαθνί ηειεζηέο Γ. Λνγηθνί ηειεζηέο 1. όρη 2. θαη 3. ή 15
Αλ νη πξάμεηο είλαη ίδηαο ηεξαξρίαο, ηόηε εθηεινύληαη από ηα αξηζηεξά πξνο ηα δεμηά. Αλ ππάξρεη ιόγνο εθηέιεζεο κηαο πξάμεο ρακειόηεξεο ηεξαξρίαο πξηλ από κία πςειόηεξεο ρξεζηκνπνηνύληαη παξελζέζεηο. Οη ηειεζηένη ελόο αξηζκεηηθνύ ηειεζηή πξέπεη λα είλαη αξηζκεηηθέο εθθξάζεηο. (π.ρ. α + β^3) ηηο ινγηθέο εθθξάζεηο κπνξνύλ λα ρξεζηκνπνηεζνύλ όινη νη ηειεζηέο. Αλ κία ινγηθή έθθξαζε πεξηιακβάλεη ηειεζηέο, ηόηε έλαο ηνπιάρηζηνλ πξέπεη λα είλαη ινγηθόο ή ζπγθξηηηθόο. (π.ρ. α + β^3 > 5 θαη γ / 3 < 2) 16
Οη ζπγθξηηηθνί ηειεζηέο ζπλδπάδνληαη κε εθθξάζεηο ηδίνπ ηύπνπ, ελώ νη ινγηθνί ηειεζηέο κόλν κε ινγηθέο εθθξάζεηο. (π.ρ. α + β > 3, ''ΑΒ'' < ''Γ'') Οη ζπγθξίζεηο ινγηθώλ εθθξάζεσλ έρνπλ λόεκα κόλν ζηελ πεξίπησζε ηνπ = θαη. 17
Αριθμητικές Εκυράσεις ηελ έθθξαζε 5 + 12 / 3 * 2-1 νη πξάμεηο εθηεινύληαη κε ηελ επόκελε ζεηξά 12 / 3 (= 4) 4 * 2 (= 8) 5 + 8 (= 13) 13-1 (= 12) ηελ έθθξαζε 4 * (1 + 2) εθηειείηαη πξώηα ε πξόζζεζε (1 + 2 = 3) θαη κεηά ν πνιιαπιαζηαζκόο (4 * 3 = 12) ηελ αθέξαηα δηαίξεζε νη ηειεζηένη ησλ ηειεζηώλ div θαη mod είλαη ππνρξεσηηθά ζεηηθνί αθέξαηνη αξηζκνί. 18
19
Λογικές Εκυράσεις Οη ζρεζηαθνί ηειεζηέο ρξεζηκνπνηνύληαη γηα ηε ζύγθξηζε δύν ηηκώλ. Σν απνηέιεζκα κηαο ζύγθξηζεο κπνξεί λα είλαη είηε Αιεζήο είηε Φεπδήο. ηελ έθθξαζε x + y < (z - 1) / t ην απνηέιεζκα είλαη Αιεζήο, αλ ην απνηέιεζκα ηεο πξάμεο x + y είλαη κηθξόηεξν από ην απνηέιεζκα ηεο πξάμεο z - 1 δηαηξνύκελν δηα t. 20
Οη ζρεζηαθνί ηειεζηέο κπνξνύλ λα ρξεζηκνπνηεζνύλ θαη κε αιθαξηζκεηηθνύο ηειεζηένπο. ηελ ςεπδνγιώζζα ζα γίλεηαη ζύγθξηζε αιθαξηζκεηηθώλ εθθξάζεσλ πνπ πεξηέρνπλ κόλν ηα θεθαιαία γξάκκαηα ηνπ ειιεληθνύ αιθαβήηνπ, ζηα νπνία ηζρύεη ε αιθαβεηηθή ζεηξά. Γηα παξάδεηγκα ε ινγηθή έθθξαζε ''ΑΓΓ'' > ''ΑΒΚ'' είλαη αιεζήο, δηόηη θαηά ηε ζύγθξηζε ραξαθηήξα πξνο ραξαθηήξα από αξηζηεξά πξνο ηα δεμηά εληνπίδεηαη όηη ην γξάκκα Γ είλαη δηαθνξεηηθό θαη κεγαιύηεξν ηνπ γξάκκαηνο Β 21
Οη ινγηθνί ηειεζηέο πξαγκαηνπνηνύλ ηηο ινγηθέο πξάμεηο ζε κηα έθθξαζε. Σν απνηέιεζκα κηαο ινγηθήο πξάμεο είλαη πάληα Αιεζήο ή Φεπδήο, ζύκθσλα κε ηνλ επόκελν πίλαθα ηηκώλ, όπνπ κε Υ θαη Τ ελλννύληαη δύν ινγηθέο εθθξάζεηο, ζηηο νπνίεο ρξεζηκνπνηνύληαη κόλν αξηζκεηηθνί θαη ζρεζηαθνί ηειεζηέο. 22
ε κηα ινγηθή έθθξαζε νη ινγηθέο πξάμεηο εθηεινύληαη κεηά ηηο αξηζκεηηθέο θαη ζπγθξηηηθέο. Ο ηειεζηήο ότι έρεη έλαλ ηειεζηέν, ελώ νη και, ή έρνπλ δύν 23
Η ζρέζε 0 < x < 2k + 1 γξάθεηαη ζηελ ςεπδνγιώζζα x > 0 θαη x < 2 * k + 1 Η ζρέζε 0 < x 10 γξάθεηαη ζηελ ςεπδνγιώζζα x > 0 θαη x 10 24
Δξσηήζεηο - Θέκαηα πξνο ζπδήηεζε Γξαζηεξηόηεηεο 15 ζει 51 18 ζει 51 25