ΚΕΦΑΛΑΙΟ Τι είναι αλγόριθμος

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Επαναληπτικό Μάθημα ΑΕΠΠ
Advertisements

Βασικές έννοιες αλγορίθμων
Εισαγωγή στους Αλγορίθμους
Να καταργήσουμε τη ΓΛΩΣΣΑ και να κρατήσουμε μόνο την ψευδογλώσσα
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Εισαγωγή στους Αλγορίθμους
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
Ανάλυση προβλημάτων και Αλγόριθμοι
ΑΛΓΟΡΙΘΜΟΙ.
ΑΕΠΠ 2ο Κεφάλαιο: Βασικές Έννοιες Αλγορίθμων
Ενότητα Η Δομή Επανάληψης
Σαρημπαλίδης Ιωάννης Εισαγωγή στους Αλγορίθμους. Γεια σας.
Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.1 Τι είναι αλγόριθμος
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
Κεφάλαιο 2. Τι είναι αλγόριθμος  Η λέξη αλγόριθμος προέρχεται από μελέτη του Πέρση μαθηματικού Abu Ja’far Mohammed ibn al Khowarizmi  Στα λατινικά ξεκινούσε.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Παράδειγμα 2 :Υπολογισμός γεωμετρικών μεγεθών
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ» Β΄ τάξης Γενικού Λυκείου
Ασκήσεις.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΝΝΟΙΑ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Ενότητα Α.4. Δομημένος Προγραμματισμός
Μάθημα: Εισαγωγή στις Αρχές της Επιστήμης των Υπολογιστών Β’ Τάξη ΕΠΑ
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Αλγόριθμοι 2.1.1,
Δομή επιλογής Η δομή επιλογής είναι μια ολοκληρωμένη πρόταση η οποία περικλείει μια συνθήκη και δύο ομάδες εντολών, από τις οποίες θα εκτελεστούν, η μεν.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Η Δομή Επανάληψης οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες… Η παρουσίαση της εντολής Μέχρις_ότου είναι από την εισήγηση των κ. Σ. Δουκάκη.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Ερωτήσεις & Φύλλο εργασίας
Δομές Δεδομένων 1 Θέματα Απόδοσης. Δομές Δεδομένων 2 Οργανώνοντας τα Δεδομένα  Η επιλογή της δομής δεδομένων και του αλγορίθμου επηρεάζουν το χρόνο εκτέλεσης.
Μερικές φορές το αποτέλεσμα εμφανίζεται αμέσως από κάτω.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Βασικές έννοιες προγραμματισμού Κεφάλαιο 7 ο. Βασικές έννοιες προγραμματισμού Αλφάβητο και τύποι δεδομένων Σταθερές και μεταβλητές Τελεστές, συναρτήσεις.
ΚΕΦΑΛΑΙΟ ΑΛΓΟΡΙΘΜΟΙ Αλγόριθμος Η έννοια του αλγορίθμου δεν συνδέεται αποκλειστικά και μόνο με προβλήματα της Πληροφορικής. Πχ συνταγή.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 Βασικές Έννοιες Αλγορίθμων.
ΜΕΤΑΒΛΗΤΕΣ-ΣΤΑΘΕΡΕΣ -ΕΚΦΡΑΣΕΙΣ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
ΚΕΦΑΛΑΙΟ 2ο - ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Δομή επιλογής Πολλές φορές για να λυθεί ένα πρόβλημα πρέπει να ελεγχθεί αν ισχύει κάποια συνθήκη Παράδειγμα 2: Να διαβαστεί ένας αριθμός και να επιστραφεί.
Δομή Επιλογής Χρησιμοποιείται σε προβλήματα όπου χρειάζεται να ληφθούν κάποιες αποφάσεις με βάση κάποια δεδομένα κριτήρια. Περιλαμβάνει τον έλεγχο κάποιας.
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
ΑΛΓΟΡΙΘΜΙΚΗ ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΩΝ
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Οι διάφορες εκδοχές της
Μανασσάκης Βασίλης Καθηγητής Πληροφορικής
Αν συνθήκη_ισχύει τότε εντολές Τέλος_Αν
Τελεστές και ή όχι Για την εκτέλεση αριθμητικών πράξεων
ΦΑΣΕΙΣ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΝΑΠΤΥΞΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
ΑΛΓΟΡΙΘΜΟΣ.
ENOTHTA 2. ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΕΦΑΛΑΙΟ 2
ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Εντολές και δομές αλγορίθμου
Δομή Επιλογής , 8.1.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Βασικές έννοιες αλγορίθμων
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ
Β.ΕΠΑΛ-Γενικής Παιδείας  ΜΑΘΗΜΑ: Εισαγωγή στης αρχές Επιστήμης των Η/Υ  ΚΕΦΑΛΑΙΟ 4: Γλώσσες Αναπαράστασης Αλγορίθμων  ΕΝΟΤΗΤΑ 4.2: Δομή Ακολουθίας 
Κυριάκου Νικόλαος Πληροφορικής ΠΕ-20
Μεταγράφημα παρουσίασης:

ΚΕΦΑΛΑΙΟ 2 2.1 Τι είναι αλγόριθμος Αλγόριθμοι υπάρχουν εδώ και πολλά χρόνια π.χ. ο αλγόριθμος του Ευκλείδη για την εύρεση Μ.Κ.Δ. Η λέξη προέρχεται από τον Πέρση μαθηματικό al Khowarizmi Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Κάθε αλγόριθμος απαραίτητα ικανοποιεί τα παρακάτω κριτήρια: Είσοδος. Καμία, μία ή περισσότερες τιμές δεδομένων πρέπει να δίνονται ως είσοδοι σε έναν αλγόριθμο Έξοδος. Κάθε αλγόριθμος δημιουργεί μία τιμή δεδομένων ως αποτέλεσμα προς τον χρήστη ή άλλον αλγόριθμο. Καθοριστικότητα. Κάθε εντολή πρέπει να καθορίζεται χωρίς αμφιβολία ως προς τον τρόπο εκτέλεσής της. Περατότητα. Ο αλγόριθμος πρέπει να τελειώνει μετά από πεπερασμένα βήματα εκτέλεσης των εντολών του. Αποτελεσματικότητα. Κάθε εντολή πρέπει να είναι αρκετά απλή ώστε να μπορεί να εκτελεστεί. Οι αλγόριθμοι δεν χρησιμοποιούνται μόνο για την επίλυση προβλημάτων της Πληροφορικής

ΚΕΦΑΛΑΙΟ 2 2.2 Σπουδαιότητα αλγορίθμων Η έννοια των αλγορίθμων είναι θεμελιώδης για την Πληροφορική Η Πληροφορική μπορεί να ορισθεί ως η επιστήμη που μελετά τους αλγορίθμούς από τις ακόλουθες σκοπιές: Υλικού. Η ταχύτητα εκτέλεσης ενός αλγορίθμου επηρεάζεται από την τεχνολογία υλικού Γλωσσών Προγραμματισμού. Το είδος της γλώσσας προγραμματισμού αλλάζει το είδος και τον αριθμό των εντολών του αλγορίθμου. Γλώσσες χαμηλότερου επιπέδου ( assembly, C ) είναι πιο γρήγορες από γλώσσες υψηλού επιπέδου. Θεωρητική. Ερευνά κατά πόσο ή όχι υπάρχει αποδοτικός αλγόριθμος για την επίλυση ενός προβλήματος Αναλυτική. Μελετώνται οι υπολογιστικοί πόροι ( μέγεθος κύριας και δευτερεύουσας μνήμης, χρόνος λειτουργίας CPU, λειτουργίες εισόδου/εξόδου ) που απαιτεί ένας αλγόριθμος

ΚΕΦΑΛΑΙΟ 2 2.3 Περιγραφή και αναπαράσταση αλγορίθμων Ένας αλγόριθμος μπορεί να αναπαρασταθεί με έναν από τους παρακάτω τρόπους. Ελεύθερο κείμενο. Αποτελεί τον πιο ανεπεξέργαστο και αδόμητο τρόπο. Υπάρχει κίνδυνος να παραβιαστεί η αποτελεσματικότητα του αλγορίθμου Διαγραμματικές τεχνικές. Είναι ένας γραφικός τρόπος παρουσίασης του αλγορίθμου. Ένας τέτοιος τρόπος είναι και τα διαγράμματα ροής, τα οποία χρησιμοποιούν γεωμετρικά σχήματα για να δηλώσουν συγκεκριμένες ενέργειες ή λειτουργίες. Τα σημαντικότερα είναι τα εξής: Έλλειψη. Δηλώνει την αρχή και το τέλος του αλγορίθμου Ρόμβος. Δηλώνει μια ερώτηση με δύο ή περισσότερες εξόδους για απάντηση Ορθογώνιο. Δηλώνει την εκτέλεση πράξεων Πλάγιο παραλληλόγραμμο. Δηλώνει είσοδο ή έξοδο Εκτέλεση πράξεων Αρχή Συνθήκη Είσοδος Έξοδος Τέλος Φυσική γλώσσα κατά βήματα. Υπάρχει κίνδυνος να παραβιαστεί το κριτήριο του καθορισμού ενός αλγόριθμο Κωδικοποίηση. Είναι ένα πρόγραμμα γραμμένο σε ψευδογλώσσα ή κάποια άλλη γλώσσα προγραμματισμού

ΚΕΦΑΛΑΙΟ 2 c  a + b 2.4.1 Δομή ακολουθίας Είναι μια σειρά βημάτων – εντολών που πρέπει να εκτελεστούν με τη σειρά για να λυθεί ένα πρόβλημα. Χρησιμοποιείται πρακτικά για την αντιμετώπιση απλών προβλημάτων. Παράδειγμα 1 Να διαβαστούν δύο αριθμοί, να υπολογιστεί και να εκτυπωθεί το άθροισμά τους Αλγόριθμος Παράδειγμα_1 Αρχή Δηλωτικές εντολές Εκτελεστέες εντολές Μεταβλητές. Αριθμητικές, λογικές, αλφαριθμητικές Σταθερές. Αριθμητικές(123), αλφαριθμητικές(“Γιώργος”), λογικές( Αληθής,Ψευδής ) Διάβασε a Διάβασε a, b Διάβασε b Εντολή εκχώρησης τιμής Μεταβλητή  Έκφραση Τελεστές. Αριθμητικοί(+), λογικοί( και ), συγκριτικοί( > ) Τελεστέοι. Σταθερές, μεταβλητές c  a + b c  a + b Εναλλακτικά Εμφάνισε c Εκτύπωσε c Εκτύπωσε c Τέλος Παράδειγμα_1 Τέλος

ΚΕΦΑΛΑΙΟ 2 2.4.2 Δομή επιλογής Γίνεται έλεγχος μιας συνθήκης και ανάλογα με την τιμή της ( αληθής ή ψευδής ) εκτελείται ή όχι ένα σύνολο εντολών Παράδειγμα 2 Να διαβαστεί ένας αριθμός και να εκτυπωθεί η απόλυτη τιμή του Αλγόριθμος Παράδειγμα_2 Διάβασε α Αν α < 0 τότε α  α * (-1) Εκτύπωσε α Τέλος Παράδειγμα_2 Η επιλογή στην ψευδογλώσσα υλοποιείται με την εντολή : Αν συνθήκη τότε εντολή Αν συνθήκη τότε εντολή 1 εντολή 2 ……….. εντολή ν Τέλος_αν Εκτελείται ΜΟΝΟ όταν η συνθήκη ( α < 0 ) είναι αληθής Το * είναι πολλαπλασιασμός

ΚΕΦΑΛΑΙΟ 2 2.4.2 Δομή επιλογής Παράδειγμα 3 Να διαβαστούν δύο αριθμοί και σε περίπτωση που ο πρώτος αριθμός είναι μικρότερος του δεύτερου, να υπολογιστεί και να εκτυπωθεί το άθροισμά τους, διαφορετικά να υπολογιστεί και να εκτυπωθεί το γινόμενό τους. Αλγόριθμος Παράδειγμα_3 Διάβασε a, b Αν a < b τότε c  a + b αλλιώς c  a * b Τέλος_αν Εκτύπωσε c Τέλος Παράδειγμα_3 Γενική μορφή της εντολής επιλογής: Αν συνθήκη τότε εντολή ή εντολές αλλιώς Τέλος_αν Εκτελείται αν η συνθήκη ( a < b ) είναι αληθής Εκτελείται αν η συνθήκη ( a < b ) είναι ψευδής

ΚΕΦΑΛΑΙΟ 2 Επιπλέον παραδείγματα Παράδειγμα 5 Να γραφεί αλγόριθμος που να μετατρέπει βαθμούς Φαρενάιτ σε βαθμούς Κελσίου Αλγόριθμος Μετατροπή_σε_Κελσίου Διάβασε farenheit Celsius  ( farenheit – 32 ) * 5 / 9 Εκτύπωσε Celsius Τέλος Μετατροπή_σε_Κελσίου Παράδειγμα 6 Δεδομένου της ακτίνας ενός κύκλου, θέλουμε να υπολογίσουμε το εμβαδόν του κύκλου, το εμβαδόν του τετραγώνου που είναι περιγεγραμμένο στο δεδομένο κύκλο και το μήκος της διαγωνίου του τετραγώνου αυτού. Αλγόριθμος Εμβαδά Διάβασε aktina embadon  3.14 * aktina * aktina plevra  2 * aktina tetragvno  plevra * plevra diagvnios  Ρίζα( 2 * tetragvno ) Εκτύπωσε embadon, tetragvno, diagvnios Τέλος Εμβαδά Καλεί τον αλγόριθμο Ρίζα που υπολογίζει την τετραγωνική ρίζα ενός αριθμού

ΚΕΦΑΛΑΙΟ 2 Επιπλέον παραδείγματα Παράδειγμα 4 Δίνονται οι αριθμοί α, β, γ, δ. Να βρεθεί η τιμή της παράστασης α( β + γ )/δ Ένας αλγόριθμος πρέπει να εκτελείται πάντα. Τι γίνεται με την περίπτωση που δ = 0; Αλγόριθμος Παράδειγμα_4α Δεδομένα // α, β, γ, δ // χ  α * ( β + γ ) Αν δ ≠ 0 τότε y  χ / δ Αποτελέσματα // y // Τέλος Παράδειγμα_4 Εναλλακτικός τρόπος δήλωσης των δεδομένων ( αντί για εντολές Διάβασε ) Εναλλακτικός τρόπος δήλωσης αποτελεσμάτων ( αντί για την εντολή Εκτύπωσε ) Ποιο είναι όμως το αποτέλεσμα όταν δ = 0; Αλγόριθμος Παράδειγμα_4β Δεδομένα // α, β, γ, δ // χ  α * ( β + γ ) Αν δ ≠ 0 τότε y  χ / δ αλλιώς Εκτύπωσε "Aδύνατο“ Τέλος_αν Αποτελέσματα // y // Τέλος Παράδειγμα_4 Αλγόριθμος Παράδειγμα_4γ Δεδομένα // α, β, γ, δ // flag  Αληθής χ  α * ( β + γ ) Αν δ ≠ 0 τότε y  χ / δ αλλιώς flag  Ψευδής Τέλος_αν Αποτελέσματα // y, flag // Τέλος Παράδειγμα_4 Καλύτερος τρόπος γιατί δεν έχει εντολές Εισόδου - Εξόδου