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

Slides:



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

Βασικές Έννοιες Προγραμματισμού
ΚΑΘΟΡΙΣΜΟΣ ΚΑΙ ΚΑΤΑΝΟΗΣΗ ΤΟΥ ΠΡΟΒΛΗΜΑΤΟΣ
Εισαγωγή στους Αλγορίθμους
Εισαγωγή στο Προγραμματισμό
Να καταργήσουμε τη ΓΛΩΣΣΑ και να κρατήσουμε μόνο την ψευδογλώσσα
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Εισαγωγή στους Αλγορίθμους
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
Εκτέλεση Αλγορίθμων σε ψευδογλώσσα
ΑΕΠΠ: Ζητήματα Διδακτικής
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΝΝΟΙΑ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΜΑΡΤΙΟΣ 2012 Π. Σοφράς.
ΑΛΓΟΡΙΘΜΟΙ.
ΑΕΠΠ 2ο Κεφάλαιο: Βασικές Έννοιες Αλγορίθμων
Εισαγωγικές Έννοιες Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Ενότητα Η Δομή Επανάληψης
Σαρημπαλίδης Ιωάννης Εισαγωγή στους Αλγορίθμους. Γεια σας.
Κεφάλαιο 2 : Βασικές Έννοιες Αλγορίθμων 2.1 Τι είναι αλγόριθμος
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
Κεφάλαιο 2. Τι είναι αλγόριθμος  Η λέξη αλγόριθμος προέρχεται από μελέτη του Πέρση μαθηματικού Abu Ja’far Mohammed ibn al Khowarizmi  Στα λατινικά ξεκινούσε.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ» Β΄ τάξης Γενικού Λυκείου
Ασκήσεις.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΝΝΟΙΑ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Ενότητα Α.4. Δομημένος Προγραμματισμός
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Αλγόριθμοι 2.1.1,
Kεφάλαιο 4 ΑΛΓΟΡΙΘΜΟΙ-ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ (αναλυτική προσέγγιση)
Computers: Information Technology in Perspective By Long and Long Copyright 2002 Prentice Hall, Inc. Προγραμματισμός Η / Υ 6 η Διάλεξη.
1. 2 Τι είναι αλγόριθμος; 1. 3 Ιδιότητες ενός αλγορίθμου 1
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Ερωτήσεις & Φύλλο εργασίας
Διαφάνειες παρουσίασης #2
ΚΕΦΑΛΑΙΟ Τι είναι αλγόριθμος
Βασικές συνιστώσες/εντολές ενός αλγορίθμου
Βασικά στοιχεία της Java
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Δομές δεδομένων και Αλγόριθμοι Κεφάλαιο 3. Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Δεδομένα Δεδομένα (data) Δεδομένα (data) –αφαιρετική αναπαράσταση.
Βασικές έννοιες προγραμματισμού Κεφάλαιο 7 ο. Βασικές έννοιες προγραμματισμού Αλφάβητο και τύποι δεδομένων Σταθερές και μεταβλητές Τελεστές, συναρτήσεις.
ΚΕΦΑΛΑΙΟ ΑΛΓΟΡΙΘΜΟΙ Αλγόριθμος Η έννοια του αλγορίθμου δεν συνδέεται αποκλειστικά και μόνο με προβλήματα της Πληροφορικής. Πχ συνταγή.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 Βασικές Έννοιες Αλγορίθμων.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
ΚΕΦΑΛΑΙΟ 2ο - ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Μανασσάκης Βασίλης Καθηγητής Πληροφορικής
Τελεστές και ή όχι Για την εκτέλεση αριθμητικών πράξεων
ΦΑΣΕΙΣ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΟΣ – ΑΝΑΠΤΥΞΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον
ΑΛΓΟΡΙΘΜΟΣ.
ENOTHTA 2. ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΕΦΑΛΑΙΟ 2
ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Εντολές και δομές αλγορίθμου
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ Η/Υ
Βασικές έννοιες αλγορίθμων
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ
Β.ΕΠΑΛ-Γενικής Παιδείας  ΜΑΘΗΜΑ: Εισαγωγή στης αρχές Επιστήμης των Η/Υ  ΚΕΦΑΛΑΙΟ 4: Γλώσσες Αναπαράστασης Αλγορίθμων  ΕΝΟΤΗΤΑ 4.2: Δομή Ακολουθίας 
Ενότητα Γ7.3.8(Προβλήματα Ακολουθιακής Δομής )
ΠΛΗΡΟΦΟΡΙΚΗ Γ΄ Γυμνασίου Α΄ Τρίμηνο
Κυριάκου Νικόλαος Πληροφορικής ΠΕ-20
Μεταγράφημα παρουσίασης:

Βασικές έννοιες αλγορίθμων Γιακουμόγλου Βαγγέλης

Κάτι ποιο κατανοητό;;; 2.1 Τι ονομάζουμε αλγόριθμο; Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Κάτι ποιο κατανοητό;;;

Κανένα παραδειγματάκι? Ο αλγόριθμος είναι μια σειρά από ενέργειες οι οποίες έχουν σκοπό να επιλύσουν κάποιο πρόβλημα… Κάπως καλύτερα τώρα! Κανένα παραδειγματάκι?

Και πώς πρέπει να είναι ένας αλγόριθμος, στη πληροφορική ειδικότερα; Παραδείγματα αλγορίθμων: 1. Οι ενέργειες που κάνουμε για να φτιάξουμε ένα καφέ… 2. …ή για να κλείσουμε κάποια εισιτήρια… 3. … η να κανονίσουμε μια συνάντηση! Και πώς πρέπει να είναι ένας αλγόριθμος, στη πληροφορική ειδικότερα;

Ο αλγόριθμος πρέπει να ικανοποιεί 5 κριτήρια : Τα πέντε κριτήρια τα οποία οφείλει να ικανοποιεί ένας αλγόριθμος είναι τα εξής: 1)      Είσοδος: το σύνολο των τιμών που δέχεται ο αλγόριθμος ως δεδομένα για την επίλυση ενός προβλήματος.(μπορεί να είναι και το κενό σύνολο) 2)      Έξοδος: Είναι το σύνολο των τιμών εκείνων που ο αλγόριθμος μας δίνει ως αποτέλεσμα.(Δεν μπορεί να είναι κενό αυτό το σύνολο) 3)      Καθοριστικότητα: Οι εντολές ενός αλγόριθμου θα πρέπει να είναι αυστηρώς και επακριβώς καθορισμένες. Αυτό είναι αναγκαίο για να μπορεί η εκτέλεσή τους να γίνεται χωρίς καμία αμφιβολία και να μην απαιτούνται πρόσθετες επεξηγήσεις. 4)      Περατότητα: Θα πρέπει ο αλγόριθμος μετά από πεπερασμένα βήματα εκτέλεσης των εντολών του να τερματίζεται. Αν δεν τερματίζεται δεν έχουμε αλγόριθμο αλλά μια υπολογιστική διαδικασία. 5) Αποτελεσματικότητα: Κάθε μεμονωμένη εντολή ενός αλγόριθμου θα πρέπει να είναι απλή. Δεν αρκεί να έχει ορισθεί η εντολή αλλά πρέπει να είναι και εκτελέσιμη.

2.3 Ποιοι είναι οι τρόποι με τους οποίους η επιστήμη μελετά τους αλγόριθμους; Οι τρόποι με τους οποίους η επιστήμη μελετά τους αλγόριθμους είναι οι εξής: Α.       Υλικού: Εξετάζει την ταχύτητα εκτέλεσης ενός αλγορίθμου σε σχέση με τον τρόπο που τα διάφορα συστατικά του υπολογιστή είναι δομημένα σε μια ενιαία αρχιτεκτονική. Β.       Γλωσσών προγραμματισμού: Εξετάζει τη δομή και τον αριθμό των εντολών ενός αλγόριθμου αναλόγως της γλώσσας προγραμματισμού την οποία χρησιμοποιεί. Γ.       Θεωρητική: Μελετάται η ύπαρξη ή όχι κάποιου αποδοτικού αλγορίθμου για την επίλυση ενός προβλήματος. Μια τέτοια μελέτη είναι ιδιαίτερα σημαντική διότι προσδιορίζει τα όρια της λύσης που θα βρεθεί σε σχέση με ένα συγκεκριμένο πρόβλημα. Δ. Αναλυτική: Εξετάζει τις ανάγκες σε υπολογιστικούς πόρους που απαιτεί η εκτέλεση ενός αλγορίθμου (μέγεθος μνήμης, χρόνος λειτουργίας της cpu ) κτλ

2.4 Ποιοι είναι οι τρόποι αναπαράστασης και περιγραφής ενός αλγορίθμου; Οι τρόποι με τους οποίους μπορούμε να περιγράψουμε-αναπαραστήσουμε- έναν αλγόριθμο είναι οι εξής: 1.       Ελεύθερο κείμενο, 2.       Φυσική γλώσσα κατά βήματα, 3.       Διαγραμματικές τεχνικές, 4. Κωδικοποίηση

Διάγραμμα Ροής (Flow chart) Το διάγραμμα ροής είναι ένας γραφικός τρόπος παρουσίασης αλγορίθμων. Αποτελείτε από τα εξής γεωμετρικά σύμβολα: 1. Έλλειψη: Δηλώνει την αρχή και το τέλος του αλγορίθμου 2. Πλάγιο παραλληλόγραμμο: Δηλώνει εισαγωγή δεδομένων ή εξαγωγή αποτελεσμάτων. Αρχή ή τέλος Δεδομένα ή αποτελεσματα

3. Ορθογώνιο Παραλληλόγραμμο: Δηλώνει επεξεργασία. 4 3. Ορθογώνιο Παραλληλόγραμμο: Δηλώνει επεξεργασία. 4. Ρόμβος: Δηλώνει λογική συνθήκη. Ναι όχι Επεξεργασία Λογική συνθήκη

2. 5 Ποιες λέξεις ονομάζονται δεσμευμένες σε έναν αλγόριθμο; 2.5 Ποιες λέξεις ονομάζονται δεσμευμένες σε έναν αλγόριθμο; Δεσμευμένες λέξεις σε έναν αλγόριθμο ονομάζονται οι λέξεις εκείνες οι οποίες έχουν αυστηρά προκαθορισμένη σημασία και χρησιμεύουν είτε για την περιγραφή των εντολών της ψευδογλώσσας ,είτε για κάνουν πιο ομοιόμορφη τη γλώσσα του κώδικα.( πχ: αρχή, τέλος, γράψε, διάβασε ).

2.6 Ποιες είναι οι σταθερές και ποιες οι μεταβλητές σε έναν αλγόριθμο; Με τον όρο Σταθερά εννοούμε το μέγεθος εκείνο του οποίου η τιμή παραμένει αμετάβλητη (σταθερή) σε όλη την διάρκεια εκτέλεσης του αλγορίθμου. Αντίθετα με τον όρο Μεταβλητή ονομάζουμε το μέγεθος εκείνο του οποίου η τιμή μπορεί να αλλάξει κατά τη διάρκεια της εκτέλεσης του αλγορίθμου. Μια μεταβλητή μπορεί να πάρει μια τιμή είτε με εντολή εκχώρησης είτε με εντολές εισόδου.

2.7 Πως διακρίνονται οι σταθερές και οι μεταβλητές ανάλογα με το είδος της τιμής που παίρνουν; Οι μεταβλητές και οι σταθερές ανάλογα με το είδος των τιμών που παίρνουν μπορούν να διακριθούν στους εξής τύπους:   1.     Ακέραιες: 4, 5, 200, -20, 0, -5 2.       Πραγματικές: 0,5 , 15,24 , -5,21 3.       Χαρακτήρες: οι τιμές τους είναι χαρακτήρες (ένας ή περισσότεροι σε σειρά) και πάντα περικλείονται σε μονά εισαγωγικά ‘….’ Πχ ‘μέγιστο’ , ‘Ι’ , 4. Λογικές: Όταν παίρνουν 2 τιμές ΑΛΗΘΗΣ ή ΨΕΥΔΗΣ

2.8 Σε ποιες ομάδες διαχωρίζονται οι μεταβλητές ανάλογα με το ρόλο τους στην εκτέλεση ενός αλγορίθμου; Ανάλογα με το ρόλο τους στην εκτέλεση ενός αλγόριθμου οι μεταβλητές χωρίζονται σε:   Α.        Μεταβλητές δεδομένων: Εκείνες των οποίων οι τιμές αποτελούν τα δεδομένα που χρειάζεται ένας αλγόριθμος για την εκτέλεση του Β.        Μεταβλητές αποτελεσμάτων: Εκείνες στις οποίες καταχωρούνται τα αποτελέσματα που προκύπτουν κατά τη διάρκεια εκτέλεσης του αλγορίθμου Γ. Βοηθητικές Μεταβλητές: δηλ μεταβλητές που χρησιμοποιούνται για την αποθήκευση των ενδιάμεσων αποτελεσμάτων του αλγορίθμου

  2.9 Ποιες είναι οι επιτρεπτές αριθμητικές πράξεις που μπορούν να χρησιμοποιηθούν σε έναν αλγόριθμο; Οι επιτρεπτές αριθμητικές πράξεις που μπορούν να χρησιμοποιηθούν σε έναν αλγόριθμο είναι: 1.       Πρόσθεση :+ 2.       Αφαίρεση: – 3.       Πολλαπλασιασμός: * 4.       Διαίρεση: / 5.       Ύψωση σε δύναμη: ^ 6       Πηλίκο ακέραιας διαίρεσης :div 7. Υπόλοιπο ακέραιης διαίρεσης :mod

Διευκρινήσεις σχετικά με τις πράξεις. DIV και MOD. 1   Διευκρινήσεις σχετικά με τις πράξεις DIV και MOD 1.    DIV υπολογίζει το ακέραιο πηλίκο της διαίρεσης δυο αριθμών, δηλ: 8 div 3=2 , 15 div 5=3 , 7 div 2 = 3 , 0 div 5=0 2.     MOD υπολογίζει το ακέραιο υπόλοιπο δύο αριθμών, Δηλ: 8 mod 2=0 , 15 mod 3=0 , 7 mod 2= 1, 0 mod 7=0

2.10 Ποια είναι η εντολή εκχώρησης και πώς χρησιμοποιείται; Η εντολή εκχώρησης είναι η εντολή εκείνη η οποία μας επιτρέπει να καταχωρήσουμε μια τιμή σε μια μεταβλητή. Η εκχώρηση συντάσσεται με το σύμβολο και διαβάζεται με το ρήμα: τοποθέτησε, καταχώρησε, ή εκχώρησε. Αριστερά της εκχώρησης υπάρχει πάντα μια μεταβλητή, ενώ στο δεξί της μέρος μπορεί να υπάρχει ένας αριθμός, μία μεταβλητή , μια συμβολοσειρά ή σε αρκετές περιπτώσεις μια ολόκληρη μαθηματική παράσταση… Η εκχώρηση ΔΕΝ είναι ισότητα, στη μεταβλητή που βρίσκεται στο αριστερό της μέρος αποθηκεύεται το αποτέλεσμα του υπολογισμού που έχει γίνει στο δεξί της μέρος (αν υπάρχει υπολογισμός) Μερικά παραδείγματα εκχώρησης είναι τα παρακάτω: Α 3 (το Α παίρνει την τιμή 3) Χ β ( στο Χ καταχωρείται το περιεχόμενο της μεταβλητής β) Κ ‘Νίκος’ (στη μεταβλητή Κ καταχωρούμε την λέξη Νίκος) Σ Σ+1 (το άθροισμα της μεταβλητής Σ με την μονάδα, καταχωρείτε στην μεταβλητή Σ)

ΠΡΟΣΟΧΗ ! ! ! Δεν είναι σωστό να γράψουμε: 5 α (αριστερά πρέπει να υπάρχει μεταβλητή) β=3 (η εκχώρηση ΔΕΝ είναι ισότητα) α+γ8 (αριστερά πρέπει να υπάρχει μόνο μεταβλητή και όχι αριθμητική παράσταση) α4γ (έπρεπε να γράψουμε 4*γ)

2.11 Ποια είναι η εντολή εισαγωγής δεδομένων σε έναν αλγόριθμο; Η εντολή με την οποία γίνεται εισαγωγή δεδομένων σε έναν αλγόριθμο είναι η εντολή: ΔΙΑΒΑΣΕ. Η σύνταξή της είναι ως εξής: ΔΙΑΒΑΣΕ Χ1,Χ2,…,Χν

2.12 Ποια είναι η εντολή εξόδου αποτελεσμάτων σε έναν αλγόριθμο; Η εντολή με την οποία πραγματοποιείται η έξοδος των αποτελεσμάτων σε έναν αλγόριθμο είναι η εντολή: ΓΡΑΨΕ. Η σύναξη της εντολής αυτής είναι η εξής: ΓΡΑΨΕ αποτέλεσμα Ως αποτέλεσμα σε έναν αλγόριθμο μπορούμε να έχουμε: το περιεχόμενο μιας μεταβλητής, μια μαθηματική παράσταση ή μια συμβολοσειρά.