SlideShare una empresa de Scribd logo
1 de 23
Ο προγραμματισμός ασχολείται με την επίλυση προβλημάτων
Γενικά ως πρόβλημα θεωρούμε κάθε ζήτημα που τίθεται προς επίλυση, κάθε κατάσταση που
μας απασχολεί και πρέπει να αντιμετωπιστεί.
Η έννοια του προβλήματος
πρόβλημα αλγόριθμος πρόγραμμα
Γενικά προβλήματα:
•η οργάνωση μιας σχολικής εκδρομής
•η εύρεση της ταχύτητας ενός αυτοκινήτου όταν γνωρίζουμε την απόσταση που
διανύει και το χρόνο που έκανε
•Η συναρμολόγηση ενός μικρού μοντέλου αυτοκινήτου
•Η πραγματοποίηση μιας χημικής αντίδρασης
Προβλήματα με τα οποία ασχολείται ένας προγραμματιστής:
•Η κατασκευή ενός κειμενογράφου
•Η δημιουργία μιας ιστοσελίδας
•Η δημιουργία ενός ηλεκτρονικού πελατολόγιου (βάση δεδομένων)
•Η κατασκευή ενός ηλεκτρονικού παιχνιδιού π.χ tetris
Κατανόηση του
προβλήματος
(βρίσκουμε τα γνωστά
στοιχεία και ποιο είναι
το ζητούμενο)
Χωρίζουμε σε
υποπροβλήματα
Σχεδιάζουμε
τη λύση
Υλοποιούμε
την λύση
ΜΕΘΟΔΟΛΟΓΙΑ ΕΠΙΛΥΣΗΣ ΕΝΌΣ ΠΡΟΒΛΗΜΑΤΟΣ
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Πρόβλημα:
Οργάνωση Εκπαιδευτικής Εκδρομής
Τρόπος
Μεταφοράς
Εύρεση
Τόπου
Επίσκεψης
Συγκέντρωση
Βεβαιώσεων
Συμμετοχής
Συγκέντρωση
Χρημάτων
Καθορισμός
Ημερομηνίας
Επίσκεψης
Υπολογισμός
Αντιτίμου
Συμμετοχής
Σχήμα 1.1: Ανάλυση του προβλήματος «Οργάνωση Εκπαιδευτικής Εκδρομής» σε απλούστερα προβλήματα.
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Πρόβλημα:
Κατασκευή κειμενογράφου (Word)
Κατασκευή
εργαλείων
μορφοποίησης
κειμένου (Bold,
Italic,
underline)
Δημιουργία
περιβάλλοντος
διεπαφής
Κατασκευή
εργαλείων
μορφοποίησης
παραγράφων
(εσοχές, κενά)
Κατασκευή
των εντολών
εκτύπωσης
και
διαμόρφωσης
σελίδας
Κατασκευή
εργαλείων
στοίχισης κειμένου
Η λέξη αλγόριθμος προέρχεται από μία μελέτη του Πέρση μαθηματικού
του 8ου αιώνα μ.Χ. Αλ Χουαρίζμι (Abu Ja'far Mohammed ibn Musa Αl-
Khwarismi), η οποία περιείχε συστηματικές τυποποιημένες λύσεις
αλγεβρικών προβλημάτων και αποτελεί ίσως την πρώτη πλήρη
πραγματεία άλγεβρας.
Πέντε αιώνες αργότερα η μελέτη μεταφράστηκε στα Λατινικά και άρχιζε με
τη φράση "Algorithmus dixit ...." (ο Αλγόριθμος είπε...). Έτσι η λέξη
αλγόριθμος καθιερώθηκε αργά τα επόμενα χίλια χρόνια με την έννοια
«συστηματική διαδικασία αριθμητικών χειρισμών».
Γ΄ τάξηΓ΄ τάξη
Τι είναι Αλγόριθμος
Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς
ξεχωριστών οδηγιών-βημάτων, με σκοπό την επίλυση ενός προβλήματος.
Όταν σχεδιάζουμε έναν αλγόριθμο, πρέπει να είμαστε ιδιαίτερα προσεκτικοί, ώστε να βάζουμε με
λογική σειρά τις οδηγίες (instructions) που θα μας οδηγήσουν στη λύση του προβλήματός μας.
παράδειγμα ας δούμε τα βήματα που πρέπει να ακολουθηθούν, ώστε να μαγειρέψει ένας άπειρος μάγειρας μια μακαρονάδα:
1. Άνοιξε το μάτι της κουζίνας στο 2.
2. Βάλε 3 λίτρα νερό σε μία κατσαρόλα χωρητικότητας 4 λίτρων.
3. Τοποθέτησε την κατσαρόλα στο μάτι της κουζίνας, που έχεις ήδη ανάψει.
4. Πρόσθεσε στην κατσαρόλα μία κουταλιά της σούπας αλάτι.
5. Περίμενε μέχρι να βράσει το νερό.
6. Βγάλε τα μακαρόνια από το πακέτο.
7. Βάλε τα μακαρόνια στην κατσαρόλα.
8. Ανακάτευε τα μακαρόνια για 10 λεπτά.
9. Κλείσε το μάτι της κουζίνας που άνοιξες.
10. Βγάλε την κατσαρόλα από το μάτι της κουζίνας.
11. Άδειασε τα μακαρόνια από την κατσαρόλα σε ένα σουρωτήρι.
12. Ρίξε κρύο νερό από τη βρύση στα μακαρόνια για 20 δευτερόλεπτα.
13. Άφησε για 2 λεπτά τα μακαρόνια να στραγγίξουν.
14. Σερβίρισε τα μακαρόνια στο πιάτο.
15. Πρόσθεσε σε κάθε πιάτο 3 κουταλιές της σούπας τριμμένο τυρί.
Πριν προχωρήσουμε παρακάτω προσπάθησε να
απαντήσεις στις ακόλουθες ερωτήσεις:
1 Τι θα συμβεί αν ξεχάσουμε την εντολή 9 στον
παραπάνω αλγόριθμο;
2 Μπορούμε να αντιμεταθέσουμε τις εντολές 7
και 8;
3 Τι θα συμβεί, αν αντικαταστήσουμε την
εντολή στο βήμα 4 με την εντολή «πρόσθεσε
αλάτι»;
4 Αν αντιμεταθέσουμε τις εντολές 1 και 2, θα
υπάρξει κάποιο πρόβλημα στον αλγόριθμο;
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Ιδιότητες ενός Αλγορίθμου
• Τα βήματα που αποτελούν έναν αλγόριθμο ονομάζονται οδηγίες ή
εντολές.
• Οι αλγόριθμοι που κατασκευάζουμε πρέπει να πληρούν κάποιες
προϋποθέσεις όπως:
• Ότι κάποτε θα τελειώσει
• Να έχει ακρίβεια
• Να έχει σαφήνεια
• Οι εντολές να είναι εκφρασμένες με απλά λόγια
Αλγόριθμος δημιουργίας ενός λουλουδιού
με 10 πέταλα
Το αποτέλεσμα υλοποίησης του
Αλγορίθμου
επανάλαβε 10 φορές[σχεδίασε_πέταλο]
Περίπτωση 1Περίπτωση 1
1.1. Ευθεία 100Ευθεία 100 βήματα
2.2. ΔεξιάΔεξιά στροφήστροφή
3.3. Ευθεία 100Ευθεία 100 βήματα
4.4. ΔεξιάΔεξιά στροφήστροφή
5.5. Ευθεία 100Ευθεία 100 βήματα
6.6. ΔεξιάΔεξιά στροφήστροφή
7.7. Ευθεία 100Ευθεία 100 βήματα
8.8. τέλοςτέλος
Περίπτωση 2Περίπτωση 2
1.1. Ευθεία 100Ευθεία 100 βήματα
2.2. ΔεξιάΔεξιά στροφή 90στροφή 90οο
3.3. Ευθεία 100Ευθεία 100 βήματα
4.4. ΔεξιάΔεξιά στροφή 90στροφή 90οο
5.5. Ευθεία 100Ευθεία 100 βήματα
6.6. ΔεξιάΔεξιά στροφή 90στροφή 90οο
7.7. Ευθεία 100Ευθεία 100 βήματα
8.8. ΔεξιάΔεξιά στροφή 90στροφή 90οο
9.9. Επανάλαβε τα βήματα 1-8Επανάλαβε τα βήματα 1-8
10.10. ΤέλοςΤέλος
Περίπτωση 3Περίπτωση 3
1.1. Ευθεία 100Ευθεία 100 βήματα
2.2. ΔεξιάΔεξιά στροφή 90στροφή 90οο
3.3. Ευθεία 100Ευθεία 100 βήματα
4.4. ΔεξιάΔεξιά στροφή 90στροφή 90οο
5.5. Ευθεία 100Ευθεία 100 βήματα
6.6. ΔεξιάΔεξιά στροφή 90στροφή 90οο
7.7. Ευθεία 100Ευθεία 100 βήματα
8.8. ΔεξιάΔεξιά στροφή 90στροφή 90οο
9.9. ΤέλοςΤέλος
Παράδειγμα 2: Κατασκευή τετραγώνου με πλευρές 100 βήματα
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Παράδειγμα 2: Κατασκευή ορθογωνίου παραλληλογράμμου με πλευρές 50 και 100 βήματα
1.1. Ευθεία 100Ευθεία 100 βήματα
2.2. ΔεξιάΔεξιά στροφή 90στροφή 90οο
3.3. Ευθεία 50Ευθεία 50 βήματα
4.4. ΔεξιάΔεξιά στροφή 90στροφή 90οο
5.5. Ευθεία 100Ευθεία 100 βήματα
6.6. ΔεξιάΔεξιά στροφή 90στροφή 90οο
7.7. Ευθεία 50Ευθεία 50 βήματα
8.8. ΔεξιάΔεξιά στροφή 90στροφή 90οο
9.9. ΤέλοςΤέλος
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Παράδειγμα 3: Κατασκευή ισόπλευρου τριγώνου με πλευρές 100 βήματα
1.1. Ευθεία 100Ευθεία 100 βήματα
2.2. ΔεξιάΔεξιά στροφήστροφή 120120οο
3.3. Ευθεία 100Ευθεία 100 βήματα
4.4. ΔεξιάΔεξιά στροφήστροφή 120120οο
5.5. Ευθεία 100Ευθεία 100 βήματα
6.6. ΔεξιάΔεξιά στροφήστροφή 120120οο
7.7. ΤέλοςΤέλος
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Παράδειγμα 3: Κατασκευή ισόπλευρου τριγώνου με πλευρές a βήματα. Όπου το α το δίνει ο
χρήστης
1.1. Δώσε πλευρά αΔώσε πλευρά α
2.2. Ευθεία αΕυθεία α βήματα
3.3. ΔεξιάΔεξιά στροφήστροφή 120120οο
4.4. Ευθεία αΕυθεία α βήματα
5.5. ΔεξιάΔεξιά στροφήστροφή 120120οο
6.6. Ευθεία αΕυθεία α βήματα
7.7. ΔεξιάΔεξιά στροφήστροφή 120120οο
8.8. ΤέλοςΤέλος
Σύμβολα για την αναπαράσταση ενός αλγόριθμου
Ο αλγόριθμος για την διαίρεση δύο τυχαίων αριθμών α
/ β
1. Διάβασε το α
2. Διάβασε το β
3. Αν β = 0 τότε τύπωσε ΔΙΑΙΡΕΣΗ
ΑΔΥΝΑΤΗ και πήγαινε στο 6
4. Αν β # 0 τότε αποτέλεσμα= α / β
5. τύπωσε αποτέλεσμα
6. ΤΕΛΟΣ
ΕΊΝΑΙ ΤΟ Β = 0; ΤΥΠΩΣΕ
ΔΙΑΙΡΕΣΗ ΑΔΥΝΑΤΗ
ΑΠΟΤΕΛΕΣΜΑ= Α / Β
ΤΥΠΩΣΕ
ΑΠΟΤΕΛΕΣΜΑ
ΤΕΛΟΣ
ΑΡΧΗ ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ ΓΙΑ ΤΗΝ
ΔΙΑΙΡΕΣΗ ΔΥΟ ΑΡΙΘΜΩΝ Α, Β
ΔΩΣΕ ΤΟ Α ΚΑΙ ΤΟ Β
ΝΑΙ
ΟΧΙ
ΕΊΝΑΙ ΤΟ Α>=0;
ΑΠΟΛΥΤΗ ΤΙΜΗ= Α
ΑΠΟΛΥΤΗ ΤΙΜΗ=- Α
ΤΥΠΩΣΕ
ΑΠΟΛΥΤΗ ΤΙΜΗ
ΤΕΛΟΣ
ΑΡΧΗ ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ ΓΙΑ ΤΗΝ
ΑΠΟΛΥΤΗ ΤΙΜΗ ΑΡΙΘΜΟΥ
ΔΩΣΕ ΤΟ Α
ΝΑΙ
ΟΧΙ
1. Διάβασε το α
3. Αν α >0 τότε απόλυτο= α πήγαινε στο 5
4. απόλυτο= -α
5. τύπωσε απόλυτο
6. ΤΕΛΟΣ
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Υλοποίηση Αλγορίθμου με υπολογιστή - Προγραμματισμός
Ένα πρόγραμμα είναι η αναπαράσταση ενός αλγορίθμου γραμμένη
σε γλώσσα κατανοητή για έναν υπολογιστή.
• Ένα πρόγραμμα αποτελείται από μία σειρά εντολών που δίνονται στον
υπολογιστή με σκοπό να εκτελέσει κάποια συγκεκριμένη λειτουργία ή να
υπολογίσει κάποιο επιθυμητό αποτέλεσμα.
• Η εργασία σύνταξης των προγραμμάτων ονομάζεται
προγραμματισμός.
• Tα άτομα που γράφουν και συντάσσουν ένα πρόγραμμα ονομάζονται
προγραμματιστές.
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
void DisplayBlock(SBlock Block)
{
if (Block.nY < 1) return;
RECT rcBlock = g_rcBlock;
rcBlock.left = Block.nColor * BLOCK_DIAMETER;
rcBlock.right = Block.nColor * BLOCK_DIAMETER + BLOCK_DIAMETER;
g_pDisplay->Blt( (DWORD)Block.nX * BLOCK_DIAMETER - 2 ,
(DWORD)Block.nY * BLOCK_DIAMETER ,
g_pSecondarySurface, &rcBlock );
}
Εικόνα 1.2: Το γνωστό παιχνίδι ΤΕΤΡΙΣ είναι ένα πρόγραμμα το οποίο περιλαμβάνει μια σειρά
εντολών (ένα μικρό υποσύνολο των εντολών του μπορείτε να δείτε στα δεξιά της εικόνας).
Μια ιστοσελίδα όπως την βλέπει ένας χρήστης του διαδικτύου
Ο κώδικας που βρίσκεται από πίσω από μια ιστοσελίδα
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Γλώσσες Προγραμματισμού
• Γλώσσα Μηχανής
• Visual BASIC
• PASCAL
• FORTRAN
• C
• C++
• Logo
• Java
• ADA
• PROLOG
00000000
00000001
00000010
00000110
00000000
00100000
Τμήμα Προγράμματος
σε γλώσσα μηχανής
Οι μεταφραστές είναι
προγράμματα που
μετατρέπουν εντολές που
είναι γραμμένες σε κάποια
από τις γλώσσες
προγραμματισμού σε
γλώσσα μηχανής
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Χαρακτηριστικά Γλωσσών Προγραμματισμού
Βασικά χαρακτηριστικά:
• το αλφάβητο (είναι το σύνολο των χαρακτήρων που χρησιμοποιούνται από τη γλώσσα)
• το λεξιλόγιο (το σύνολο των λέξεων που αναγνωρίζει η γλώσσα και έχουν συγκεκριμένη και
μοναδική σημασία)
• το συντακτικό (το σύνολο των κανόνων που πρέπει να ακολουθούμε, για να συνδέουμε λέξεις
σε προτάσεις)
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
Το ολοκληρωμένο προγραμματιστικό περιβάλλον
Ένα περιβάλλον προγραμματισμού αποτελείται από διάφορα εργαλεία
που βοηθάνε τον προγραμματιστή να γράψει και να διορθώσει το
πρόγραμμά του.
Τα κύρια εργαλεία είναι:
• ένας εξειδικευμένος κειμενογράφος, που χρησιμεύει για τη σύνταξη και
τη διόρθωση του προγράμματος και
• ένα πρόγραμμα-μεταφραστής που μετατρέπει τις οδηγίες μας στη
μορφή που τις καταλαβαίνει ο επεξεργαστής, δηλαδή σε μια σειρά
από 0 και 1.
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον
Προγραμματισμό
Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,
Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.
Γ΄ τάξηΓ΄ τάξη
• Οι μεταφραστές είναι δυνατόν να βρουν οποιοδήποτε λάθος υπάρχει στη
σύνταξη, στο αλφάβητο ή στο λεξιλόγιο μιας εντολής. Τέτοιου είδους λάθη
ονομάζονται συντακτικά
• Τα λάθη που αφορούν τον αλγόριθμο κατασκευής και οδηγούν σε μη
αναμενόμενα αποτελέσματα κατά την εκτέλεση ενός προγράμματος
ονομάζονται λογικά. Τέτοιου είδους λάθη δεν αναγνωρίζονται από τους
μεταφραστές
Σχήμα 1.3: Στάδια για την εκτέλεση ενός αλγορίθμου από τον υπολογιστή
Αλγόριθμος Πρόγραμμα
Μετατροπή του προγράμματος
σε 0 και 1 (γλώσσα μηχανής)
Εκτέλεση του προγράμματος
στον επεξεργαστή

Más contenido relacionado

La actualidad más candente

εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμόεισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
vfilip
 
Διαφάνειες για αλγόριθμο και προγραμματισμό - Πληροφορική Γ ' Γυμνασίου
Διαφάνειες για αλγόριθμο και προγραμματισμό - Πληροφορική Γ ' ΓυμνασίουΔιαφάνειες για αλγόριθμο και προγραμματισμό - Πληροφορική Γ ' Γυμνασίου
Διαφάνειες για αλγόριθμο και προγραμματισμό - Πληροφορική Γ ' Γυμνασίου
protogymnasiogeraka
 
Κεφ. 2 Βασικές Έννοιες Αλγορίθμων
Κεφ. 2 Βασικές Έννοιες ΑλγορίθμωνΚεφ. 2 Βασικές Έννοιες Αλγορίθμων
Κεφ. 2 Βασικές Έννοιες Αλγορίθμων
Ιωάννου Γιαννάκης
 
ΑΕΠΠ κεφ2 μέρος Α Βασικές Εννοιες Αλγορίθμων
ΑΕΠΠ κεφ2 μέρος Α Βασικές Εννοιες ΑλγορίθμωνΑΕΠΠ κεφ2 μέρος Α Βασικές Εννοιες Αλγορίθμων
ΑΕΠΠ κεφ2 μέρος Α Βασικές Εννοιες Αλγορίθμων
evoyiatz
 
το εσωτερικο του υπολογιστη
το εσωτερικο του υπολογιστητο εσωτερικο του υπολογιστη
το εσωτερικο του υπολογιστη
Popi Magaliou
 

La actualidad más candente (20)

λογισμικό(Software)
λογισμικό(Software)λογισμικό(Software)
λογισμικό(Software)
 
εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμόεισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
 
Προστασία λογισμικού – Ιοί
Προστασία λογισμικού – ΙοίΠροστασία λογισμικού – Ιοί
Προστασία λογισμικού – Ιοί
 
Δομή Επανάληψης
Δομή ΕπανάληψηςΔομή Επανάληψης
Δομή Επανάληψης
 
Διαφάνειες για αλγόριθμο και προγραμματισμό - Πληροφορική Γ ' Γυμνασίου
Διαφάνειες για αλγόριθμο και προγραμματισμό - Πληροφορική Γ ' ΓυμνασίουΔιαφάνειες για αλγόριθμο και προγραμματισμό - Πληροφορική Γ ' Γυμνασίου
Διαφάνειες για αλγόριθμο και προγραμματισμό - Πληροφορική Γ ' Γυμνασίου
 
ΑΕΠΠ - Βασικές έννοιες προγραμματισμού
ΑΕΠΠ - Βασικές έννοιες προγραμματισμούΑΕΠΠ - Βασικές έννοιες προγραμματισμού
ΑΕΠΠ - Βασικές έννοιες προγραμματισμού
 
ΚΕΦΑΛΑΙΟ 3 - ΕΡΓΟΝΟΜΙΑ
ΚΕΦΑΛΑΙΟ 3 - ΕΡΓΟΝΟΜΙΑ ΚΕΦΑΛΑΙΟ 3 - ΕΡΓΟΝΟΜΙΑ
ΚΕΦΑΛΑΙΟ 3 - ΕΡΓΟΝΟΜΙΑ
 
Πληροφορική Α΄ γυμνασίου Κεφάλαιο 2
Πληροφορική Α΄ γυμνασίου Κεφάλαιο 2Πληροφορική Α΄ γυμνασίου Κεφάλαιο 2
Πληροφορική Α΄ γυμνασίου Κεφάλαιο 2
 
Το εσωτερικό του υπολογιστή
Το εσωτερικό του υπολογιστήΤο εσωτερικό του υπολογιστή
Το εσωτερικό του υπολογιστή
 
Αναλογικό - Ψηφιακό
Αναλογικό - ΨηφιακόΑναλογικό - Ψηφιακό
Αναλογικό - Ψηφιακό
 
Κεφάλαιο 6: Το Γραφικό Περιβάλλον Επικοινωνίας
Κεφάλαιο 6: Το Γραφικό Περιβάλλον ΕπικοινωνίαςΚεφάλαιο 6: Το Γραφικό Περιβάλλον Επικοινωνίας
Κεφάλαιο 6: Το Γραφικό Περιβάλλον Επικοινωνίας
 
Τι είναι αλγόριθμος-Ιδιότητες ενός Αλγορίθμου
Τι είναι αλγόριθμος-Ιδιότητες ενός ΑλγορίθμουΤι είναι αλγόριθμος-Ιδιότητες ενός Αλγορίθμου
Τι είναι αλγόριθμος-Ιδιότητες ενός Αλγορίθμου
 
Κεφ. 2 Βασικές Έννοιες Αλγορίθμων
Κεφ. 2 Βασικές Έννοιες ΑλγορίθμωνΚεφ. 2 Βασικές Έννοιες Αλγορίθμων
Κεφ. 2 Βασικές Έννοιες Αλγορίθμων
 
ΑΕΠΠ κεφ2 μέρος Α Βασικές Εννοιες Αλγορίθμων
ΑΕΠΠ κεφ2 μέρος Α Βασικές Εννοιες ΑλγορίθμωνΑΕΠΠ κεφ2 μέρος Α Βασικές Εννοιες Αλγορίθμων
ΑΕΠΠ κεφ2 μέρος Α Βασικές Εννοιες Αλγορίθμων
 
Εφαρμογές νέφους (cloud computing)
Εφαρμογές νέφους (cloud computing)Εφαρμογές νέφους (cloud computing)
Εφαρμογές νέφους (cloud computing)
 
το εσωτερικο του υπολογιστη
το εσωτερικο του υπολογιστητο εσωτερικο του υπολογιστη
το εσωτερικο του υπολογιστη
 
Eισαγωγή στις αρχές της επιστήμης των HY κεφ 1
Eισαγωγή στις αρχές της επιστήμης των HY κεφ 1Eισαγωγή στις αρχές της επιστήμης των HY κεφ 1
Eισαγωγή στις αρχές της επιστήμης των HY κεφ 1
 
Εισαγωγή στις αρχές της επιστήμης των Η/Υ
Εισαγωγή στις αρχές της επιστήμης των Η/ΥΕισαγωγή στις αρχές της επιστήμης των Η/Υ
Εισαγωγή στις αρχές της επιστήμης των Η/Υ
 
Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό
Εισαγωγή στην έννοια του αλγορίθμου και στον ΠρογραμματισμόΕισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό
Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό
 
Πληροφορική Γ' γυμνασίου
Πληροφορική Γ' γυμνασίουΠληροφορική Γ' γυμνασίου
Πληροφορική Γ' γυμνασίου
 

Destacado

προβλήματα αλγόριθμοι-προγραμμα
προβλήματα   αλγόριθμοι-προγραμμαπροβλήματα   αλγόριθμοι-προγραμμα
προβλήματα αλγόριθμοι-προγραμμα
Tsormpatzoglou Nestor
 
ΗΛΙΑΚΗ ΕΝΕΡΓΕΙΑ
ΗΛΙΑΚΗ ΕΝΕΡΓΕΙΑΗΛΙΑΚΗ ΕΝΕΡΓΕΙΑ
ΗΛΙΑΚΗ ΕΝΕΡΓΕΙΑ
michvour
 
Ενέργεια και ισχύς - ΦΩΤΟΒΟΛΤΑΪΚΑ
Ενέργεια και ισχύς - ΦΩΤΟΒΟΛΤΑΪΚΑΕνέργεια και ισχύς - ΦΩΤΟΒΟΛΤΑΪΚΑ
Ενέργεια και ισχύς - ΦΩΤΟΒΟΛΤΑΪΚΑ
Kats961
 
εισαγωγή στην έννοια του αλγορίθμου και στον προγραμματισμό
εισαγωγή στην έννοια του αλγορίθμου και στον προγραμματισμόεισαγωγή στην έννοια του αλγορίθμου και στον προγραμματισμό
εισαγωγή στην έννοια του αλγορίθμου και στον προγραμματισμό
emitsou
 

Destacado (8)

προβλήματα αλγόριθμοι-προγραμμα
προβλήματα   αλγόριθμοι-προγραμμαπροβλήματα   αλγόριθμοι-προγραμμα
προβλήματα αλγόριθμοι-προγραμμα
 
Φωτοβολταϊκά
ΦωτοβολταϊκάΦωτοβολταϊκά
Φωτοβολταϊκά
 
ΗΛΙΑΚΗ ΕΝΕΡΓΕΙΑ
ΗΛΙΑΚΗ ΕΝΕΡΓΕΙΑΗΛΙΑΚΗ ΕΝΕΡΓΕΙΑ
ΗΛΙΑΚΗ ΕΝΕΡΓΕΙΑ
 
Ενέργεια και ισχύς - ΦΩΤΟΒΟΛΤΑΪΚΑ
Ενέργεια και ισχύς - ΦΩΤΟΒΟΛΤΑΪΚΑΕνέργεια και ισχύς - ΦΩΤΟΒΟΛΤΑΪΚΑ
Ενέργεια και ισχύς - ΦΩΤΟΒΟΛΤΑΪΚΑ
 
εισαγωγή στην έννοια του αλγορίθμου και στον προγραμματισμό
εισαγωγή στην έννοια του αλγορίθμου και στον προγραμματισμόεισαγωγή στην έννοια του αλγορίθμου και στον προγραμματισμό
εισαγωγή στην έννοια του αλγορίθμου και στον προγραμματισμό
 
Ψηφιακός Κόσμος
Ψηφιακός ΚόσμοςΨηφιακός Κόσμος
Ψηφιακός Κόσμος
 
スタートアップ組織づくりの具体策を学ぶ 先生:金子 陽三
スタートアップ組織づくりの具体策を学ぶ 先生:金子 陽三スタートアップ組織づくりの具体策を学ぶ 先生:金子 陽三
スタートアップ組織づくりの具体策を学ぶ 先生:金子 陽三
 
Slideshare Powerpoint presentation
Slideshare Powerpoint presentationSlideshare Powerpoint presentation
Slideshare Powerpoint presentation
 

Similar a προβλήματα αλγόριθμοι-προγραμμα

γ 1 εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
γ 1 εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμόγ 1 εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
γ 1 εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
Informatics 2
 
ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 1o.pdf
ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 1o.pdfΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 1o.pdf
ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 1o.pdf
Anthimos Misailidis
 
G 1 algorithms_programming
G 1 algorithms_programmingG 1 algorithms_programming
G 1 algorithms_programming
ganidoud
 
G 1 algorithms_programming
G 1 algorithms_programmingG 1 algorithms_programming
G 1 algorithms_programming
ganidoud
 
Tutorial xatzikyriakou-pascalby example
Tutorial xatzikyriakou-pascalby exampleTutorial xatzikyriakou-pascalby example
Tutorial xatzikyriakou-pascalby example
evaplyta
 
σχέδιο μαθήματος για το σχεδιασμό γεωμετρικών σχημάτων
σχέδιο μαθήματος για το σχεδιασμό γεωμετρικών σχημάτωνσχέδιο μαθήματος για το σχεδιασμό γεωμετρικών σχημάτων
σχέδιο μαθήματος για το σχεδιασμό γεωμετρικών σχημάτων
Tsormpatzoglou Nestor
 
κεφάλαιο 02 anaptixi-2
κεφάλαιο 02 anaptixi-2κεφάλαιο 02 anaptixi-2
κεφάλαιο 02 anaptixi-2
evaplyta
 

Similar a προβλήματα αλγόριθμοι-προγραμμα (20)

Αλγόριθμος και Προγραμματισμός
Αλγόριθμος και ΠρογραμματισμόςΑλγόριθμος και Προγραμματισμός
Αλγόριθμος και Προγραμματισμός
 
Algorithm program(new version)
Algorithm program(new version)Algorithm program(new version)
Algorithm program(new version)
 
γ 1 εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
γ 1 εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμόγ 1 εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
γ 1 εισαγωγή στην εννοια του αλγορίθμου και στον προγραμματισμό
 
Αλγόριθμος- Πρόγραμμα
Αλγόριθμος- ΠρόγραμμαΑλγόριθμος- Πρόγραμμα
Αλγόριθμος- Πρόγραμμα
 
1η Ενότητα - 1.1 Η έννοια του προβλήματος - 1.2 Τι είναι Αλγόριθμος
1η Ενότητα - 1.1 Η έννοια του προβλήματος - 1.2 Τι είναι Αλγόριθμος1η Ενότητα - 1.1 Η έννοια του προβλήματος - 1.2 Τι είναι Αλγόριθμος
1η Ενότητα - 1.1 Η έννοια του προβλήματος - 1.2 Τι είναι Αλγόριθμος
 
Εισαγωγή στους Αλγορίθμους και τον Προγραμματισμό
Εισαγωγή στους  Αλγορίθμους και τον Προγραμματισμό Εισαγωγή στους  Αλγορίθμους και τον Προγραμματισμό
Εισαγωγή στους Αλγορίθμους και τον Προγραμματισμό
 
ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 1o.pdf
ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 1o.pdfΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 1o.pdf
ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ 1o.pdf
 
G 1 algorithms_programming
G 1 algorithms_programmingG 1 algorithms_programming
G 1 algorithms_programming
 
G 1 algorithms_programming
G 1 algorithms_programmingG 1 algorithms_programming
G 1 algorithms_programming
 
παρουσιαση αλγοριθμος γλωσσες προγραμματισμου
παρουσιαση  αλγοριθμος γλωσσες προγραμματισμουπαρουσιαση  αλγοριθμος γλωσσες προγραμματισμου
παρουσιαση αλγοριθμος γλωσσες προγραμματισμου
 
Exam&ans 2014
Exam&ans 2014Exam&ans 2014
Exam&ans 2014
 
Tutorial xatzikyriakou-pascalby example
Tutorial xatzikyriakou-pascalby exampleTutorial xatzikyriakou-pascalby example
Tutorial xatzikyriakou-pascalby example
 
Exam2015
Exam2015Exam2015
Exam2015
 
diafanies.ppt
diafanies.pptdiafanies.ppt
diafanies.ppt
 
Εξάσκηση σε Υποπρογράμματα με αφορμή την Εικασία Κόλατς
Εξάσκηση σε Υποπρογράμματα με αφορμή την Εικασία ΚόλατςΕξάσκηση σε Υποπρογράμματα με αφορμή την Εικασία Κόλατς
Εξάσκηση σε Υποπρογράμματα με αφορμή την Εικασία Κόλατς
 
Algorithms
AlgorithmsAlgorithms
Algorithms
 
Kefalaio1
Kefalaio1Kefalaio1
Kefalaio1
 
B 7 M 1 Algorithms
B 7 M 1 AlgorithmsB 7 M 1 Algorithms
B 7 M 1 Algorithms
 
σχέδιο μαθήματος για το σχεδιασμό γεωμετρικών σχημάτων
σχέδιο μαθήματος για το σχεδιασμό γεωμετρικών σχημάτωνσχέδιο μαθήματος για το σχεδιασμό γεωμετρικών σχημάτων
σχέδιο μαθήματος για το σχεδιασμό γεωμετρικών σχημάτων
 
κεφάλαιο 02 anaptixi-2
κεφάλαιο 02 anaptixi-2κεφάλαιο 02 anaptixi-2
κεφάλαιο 02 anaptixi-2
 

Más de Iliopoulou Anthi

ΣΥΝΕΡΓΑΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΣΤΟ GOOGLE SLIDES.pdf
ΣΥΝΕΡΓΑΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΣΤΟ GOOGLE SLIDES.pdfΣΥΝΕΡΓΑΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΣΤΟ GOOGLE SLIDES.pdf
ΣΥΝΕΡΓΑΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΣΤΟ GOOGLE SLIDES.pdf
Iliopoulou Anthi
 

Más de Iliopoulou Anthi (20)

What is Informatics.pptx
What is Informatics.pptxWhat is Informatics.pptx
What is Informatics.pptx
 
ΣΥΝΕΡΓΑΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΣΤΟ GOOGLE SLIDES.pdf
ΣΥΝΕΡΓΑΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΣΤΟ GOOGLE SLIDES.pdfΣΥΝΕΡΓΑΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΣΤΟ GOOGLE SLIDES.pdf
ΣΥΝΕΡΓΑΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΣΤΟ GOOGLE SLIDES.pdf
 
A European school for all children- διάχυση.pptx
A European school for all children- διάχυση.pptxA European school for all children- διάχυση.pptx
A European school for all children- διάχυση.pptx
 
ppt TO BE KIND.pptx
ppt TO BE KIND.pptxppt TO BE KIND.pptx
ppt TO BE KIND.pptx
 
Ocean waste
Ocean wasteOcean waste
Ocean waste
 
Net works part b internet
Net works part b   internetNet works part b   internet
Net works part b internet
 
Email
EmailEmail
Email
 
Www world wide web
Www world wide webWww world wide web
Www world wide web
 
Networks part a
Networks part aNetworks part a
Networks part a
 
Ergonomy
ErgonomyErgonomy
Ergonomy
 
Internet
InternetInternet
Internet
 
Inside the pc ports- cards
Inside the pc  ports- cardsInside the pc  ports- cards
Inside the pc ports- cards
 
Copyright
CopyrightCopyright
Copyright
 
Cyberattacks
CyberattacksCyberattacks
Cyberattacks
 
Virus computer protection
Virus  computer protectionVirus  computer protection
Virus computer protection
 
Inside the computer intro
Inside the computer introInside the computer intro
Inside the computer intro
 
Software
SoftwareSoftware
Software
 
Hardware input- output
Hardware  input- outputHardware  input- output
Hardware input- output
 
Analog digital b
Analog digital bAnalog digital b
Analog digital b
 
Analog digital a
Analog digital aAnalog digital a
Analog digital a
 

προβλήματα αλγόριθμοι-προγραμμα

  • 1. Ο προγραμματισμός ασχολείται με την επίλυση προβλημάτων Γενικά ως πρόβλημα θεωρούμε κάθε ζήτημα που τίθεται προς επίλυση, κάθε κατάσταση που μας απασχολεί και πρέπει να αντιμετωπιστεί. Η έννοια του προβλήματος πρόβλημα αλγόριθμος πρόγραμμα
  • 2. Γενικά προβλήματα: •η οργάνωση μιας σχολικής εκδρομής •η εύρεση της ταχύτητας ενός αυτοκινήτου όταν γνωρίζουμε την απόσταση που διανύει και το χρόνο που έκανε •Η συναρμολόγηση ενός μικρού μοντέλου αυτοκινήτου •Η πραγματοποίηση μιας χημικής αντίδρασης Προβλήματα με τα οποία ασχολείται ένας προγραμματιστής: •Η κατασκευή ενός κειμενογράφου •Η δημιουργία μιας ιστοσελίδας •Η δημιουργία ενός ηλεκτρονικού πελατολόγιου (βάση δεδομένων) •Η κατασκευή ενός ηλεκτρονικού παιχνιδιού π.χ tetris
  • 3. Κατανόηση του προβλήματος (βρίσκουμε τα γνωστά στοιχεία και ποιο είναι το ζητούμενο) Χωρίζουμε σε υποπροβλήματα Σχεδιάζουμε τη λύση Υλοποιούμε την λύση ΜΕΘΟΔΟΛΟΓΙΑ ΕΠΙΛΥΣΗΣ ΕΝΌΣ ΠΡΟΒΛΗΜΑΤΟΣ
  • 4. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Πρόβλημα: Οργάνωση Εκπαιδευτικής Εκδρομής Τρόπος Μεταφοράς Εύρεση Τόπου Επίσκεψης Συγκέντρωση Βεβαιώσεων Συμμετοχής Συγκέντρωση Χρημάτων Καθορισμός Ημερομηνίας Επίσκεψης Υπολογισμός Αντιτίμου Συμμετοχής Σχήμα 1.1: Ανάλυση του προβλήματος «Οργάνωση Εκπαιδευτικής Εκδρομής» σε απλούστερα προβλήματα.
  • 5. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Πρόβλημα: Κατασκευή κειμενογράφου (Word) Κατασκευή εργαλείων μορφοποίησης κειμένου (Bold, Italic, underline) Δημιουργία περιβάλλοντος διεπαφής Κατασκευή εργαλείων μορφοποίησης παραγράφων (εσοχές, κενά) Κατασκευή των εντολών εκτύπωσης και διαμόρφωσης σελίδας Κατασκευή εργαλείων στοίχισης κειμένου
  • 6. Η λέξη αλγόριθμος προέρχεται από μία μελέτη του Πέρση μαθηματικού του 8ου αιώνα μ.Χ. Αλ Χουαρίζμι (Abu Ja'far Mohammed ibn Musa Αl- Khwarismi), η οποία περιείχε συστηματικές τυποποιημένες λύσεις αλγεβρικών προβλημάτων και αποτελεί ίσως την πρώτη πλήρη πραγματεία άλγεβρας. Πέντε αιώνες αργότερα η μελέτη μεταφράστηκε στα Λατινικά και άρχιζε με τη φράση "Algorithmus dixit ...." (ο Αλγόριθμος είπε...). Έτσι η λέξη αλγόριθμος καθιερώθηκε αργά τα επόμενα χίλια χρόνια με την έννοια «συστηματική διαδικασία αριθμητικών χειρισμών».
  • 7. Γ΄ τάξηΓ΄ τάξη Τι είναι Αλγόριθμος Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών-βημάτων, με σκοπό την επίλυση ενός προβλήματος. Όταν σχεδιάζουμε έναν αλγόριθμο, πρέπει να είμαστε ιδιαίτερα προσεκτικοί, ώστε να βάζουμε με λογική σειρά τις οδηγίες (instructions) που θα μας οδηγήσουν στη λύση του προβλήματός μας. παράδειγμα ας δούμε τα βήματα που πρέπει να ακολουθηθούν, ώστε να μαγειρέψει ένας άπειρος μάγειρας μια μακαρονάδα: 1. Άνοιξε το μάτι της κουζίνας στο 2. 2. Βάλε 3 λίτρα νερό σε μία κατσαρόλα χωρητικότητας 4 λίτρων. 3. Τοποθέτησε την κατσαρόλα στο μάτι της κουζίνας, που έχεις ήδη ανάψει. 4. Πρόσθεσε στην κατσαρόλα μία κουταλιά της σούπας αλάτι. 5. Περίμενε μέχρι να βράσει το νερό. 6. Βγάλε τα μακαρόνια από το πακέτο. 7. Βάλε τα μακαρόνια στην κατσαρόλα. 8. Ανακάτευε τα μακαρόνια για 10 λεπτά. 9. Κλείσε το μάτι της κουζίνας που άνοιξες. 10. Βγάλε την κατσαρόλα από το μάτι της κουζίνας. 11. Άδειασε τα μακαρόνια από την κατσαρόλα σε ένα σουρωτήρι. 12. Ρίξε κρύο νερό από τη βρύση στα μακαρόνια για 20 δευτερόλεπτα. 13. Άφησε για 2 λεπτά τα μακαρόνια να στραγγίξουν. 14. Σερβίρισε τα μακαρόνια στο πιάτο. 15. Πρόσθεσε σε κάθε πιάτο 3 κουταλιές της σούπας τριμμένο τυρί. Πριν προχωρήσουμε παρακάτω προσπάθησε να απαντήσεις στις ακόλουθες ερωτήσεις: 1 Τι θα συμβεί αν ξεχάσουμε την εντολή 9 στον παραπάνω αλγόριθμο; 2 Μπορούμε να αντιμεταθέσουμε τις εντολές 7 και 8; 3 Τι θα συμβεί, αν αντικαταστήσουμε την εντολή στο βήμα 4 με την εντολή «πρόσθεσε αλάτι»; 4 Αν αντιμεταθέσουμε τις εντολές 1 και 2, θα υπάρξει κάποιο πρόβλημα στον αλγόριθμο;
  • 8. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Ιδιότητες ενός Αλγορίθμου • Τα βήματα που αποτελούν έναν αλγόριθμο ονομάζονται οδηγίες ή εντολές. • Οι αλγόριθμοι που κατασκευάζουμε πρέπει να πληρούν κάποιες προϋποθέσεις όπως: • Ότι κάποτε θα τελειώσει • Να έχει ακρίβεια • Να έχει σαφήνεια • Οι εντολές να είναι εκφρασμένες με απλά λόγια Αλγόριθμος δημιουργίας ενός λουλουδιού με 10 πέταλα Το αποτέλεσμα υλοποίησης του Αλγορίθμου επανάλαβε 10 φορές[σχεδίασε_πέταλο]
  • 9. Περίπτωση 1Περίπτωση 1 1.1. Ευθεία 100Ευθεία 100 βήματα 2.2. ΔεξιάΔεξιά στροφήστροφή 3.3. Ευθεία 100Ευθεία 100 βήματα 4.4. ΔεξιάΔεξιά στροφήστροφή 5.5. Ευθεία 100Ευθεία 100 βήματα 6.6. ΔεξιάΔεξιά στροφήστροφή 7.7. Ευθεία 100Ευθεία 100 βήματα 8.8. τέλοςτέλος Περίπτωση 2Περίπτωση 2 1.1. Ευθεία 100Ευθεία 100 βήματα 2.2. ΔεξιάΔεξιά στροφή 90στροφή 90οο 3.3. Ευθεία 100Ευθεία 100 βήματα 4.4. ΔεξιάΔεξιά στροφή 90στροφή 90οο 5.5. Ευθεία 100Ευθεία 100 βήματα 6.6. ΔεξιάΔεξιά στροφή 90στροφή 90οο 7.7. Ευθεία 100Ευθεία 100 βήματα 8.8. ΔεξιάΔεξιά στροφή 90στροφή 90οο 9.9. Επανάλαβε τα βήματα 1-8Επανάλαβε τα βήματα 1-8 10.10. ΤέλοςΤέλος Περίπτωση 3Περίπτωση 3 1.1. Ευθεία 100Ευθεία 100 βήματα 2.2. ΔεξιάΔεξιά στροφή 90στροφή 90οο 3.3. Ευθεία 100Ευθεία 100 βήματα 4.4. ΔεξιάΔεξιά στροφή 90στροφή 90οο 5.5. Ευθεία 100Ευθεία 100 βήματα 6.6. ΔεξιάΔεξιά στροφή 90στροφή 90οο 7.7. Ευθεία 100Ευθεία 100 βήματα 8.8. ΔεξιάΔεξιά στροφή 90στροφή 90οο 9.9. ΤέλοςΤέλος Παράδειγμα 2: Κατασκευή τετραγώνου με πλευρές 100 βήματα
  • 10. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Παράδειγμα 2: Κατασκευή ορθογωνίου παραλληλογράμμου με πλευρές 50 και 100 βήματα 1.1. Ευθεία 100Ευθεία 100 βήματα 2.2. ΔεξιάΔεξιά στροφή 90στροφή 90οο 3.3. Ευθεία 50Ευθεία 50 βήματα 4.4. ΔεξιάΔεξιά στροφή 90στροφή 90οο 5.5. Ευθεία 100Ευθεία 100 βήματα 6.6. ΔεξιάΔεξιά στροφή 90στροφή 90οο 7.7. Ευθεία 50Ευθεία 50 βήματα 8.8. ΔεξιάΔεξιά στροφή 90στροφή 90οο 9.9. ΤέλοςΤέλος
  • 11. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Παράδειγμα 3: Κατασκευή ισόπλευρου τριγώνου με πλευρές 100 βήματα 1.1. Ευθεία 100Ευθεία 100 βήματα 2.2. ΔεξιάΔεξιά στροφήστροφή 120120οο 3.3. Ευθεία 100Ευθεία 100 βήματα 4.4. ΔεξιάΔεξιά στροφήστροφή 120120οο 5.5. Ευθεία 100Ευθεία 100 βήματα 6.6. ΔεξιάΔεξιά στροφήστροφή 120120οο 7.7. ΤέλοςΤέλος
  • 12. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Παράδειγμα 3: Κατασκευή ισόπλευρου τριγώνου με πλευρές a βήματα. Όπου το α το δίνει ο χρήστης 1.1. Δώσε πλευρά αΔώσε πλευρά α 2.2. Ευθεία αΕυθεία α βήματα 3.3. ΔεξιάΔεξιά στροφήστροφή 120120οο 4.4. Ευθεία αΕυθεία α βήματα 5.5. ΔεξιάΔεξιά στροφήστροφή 120120οο 6.6. Ευθεία αΕυθεία α βήματα 7.7. ΔεξιάΔεξιά στροφήστροφή 120120οο 8.8. ΤέλοςΤέλος
  • 13. Σύμβολα για την αναπαράσταση ενός αλγόριθμου
  • 14. Ο αλγόριθμος για την διαίρεση δύο τυχαίων αριθμών α / β 1. Διάβασε το α 2. Διάβασε το β 3. Αν β = 0 τότε τύπωσε ΔΙΑΙΡΕΣΗ ΑΔΥΝΑΤΗ και πήγαινε στο 6 4. Αν β # 0 τότε αποτέλεσμα= α / β 5. τύπωσε αποτέλεσμα 6. ΤΕΛΟΣ ΕΊΝΑΙ ΤΟ Β = 0; ΤΥΠΩΣΕ ΔΙΑΙΡΕΣΗ ΑΔΥΝΑΤΗ ΑΠΟΤΕΛΕΣΜΑ= Α / Β ΤΥΠΩΣΕ ΑΠΟΤΕΛΕΣΜΑ ΤΕΛΟΣ ΑΡΧΗ ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ ΓΙΑ ΤΗΝ ΔΙΑΙΡΕΣΗ ΔΥΟ ΑΡΙΘΜΩΝ Α, Β ΔΩΣΕ ΤΟ Α ΚΑΙ ΤΟ Β ΝΑΙ ΟΧΙ
  • 15. ΕΊΝΑΙ ΤΟ Α>=0; ΑΠΟΛΥΤΗ ΤΙΜΗ= Α ΑΠΟΛΥΤΗ ΤΙΜΗ=- Α ΤΥΠΩΣΕ ΑΠΟΛΥΤΗ ΤΙΜΗ ΤΕΛΟΣ ΑΡΧΗ ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ ΓΙΑ ΤΗΝ ΑΠΟΛΥΤΗ ΤΙΜΗ ΑΡΙΘΜΟΥ ΔΩΣΕ ΤΟ Α ΝΑΙ ΟΧΙ 1. Διάβασε το α 3. Αν α >0 τότε απόλυτο= α πήγαινε στο 5 4. απόλυτο= -α 5. τύπωσε απόλυτο 6. ΤΕΛΟΣ
  • 16. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Υλοποίηση Αλγορίθμου με υπολογιστή - Προγραμματισμός Ένα πρόγραμμα είναι η αναπαράσταση ενός αλγορίθμου γραμμένη σε γλώσσα κατανοητή για έναν υπολογιστή. • Ένα πρόγραμμα αποτελείται από μία σειρά εντολών που δίνονται στον υπολογιστή με σκοπό να εκτελέσει κάποια συγκεκριμένη λειτουργία ή να υπολογίσει κάποιο επιθυμητό αποτέλεσμα. • Η εργασία σύνταξης των προγραμμάτων ονομάζεται προγραμματισμός. • Tα άτομα που γράφουν και συντάσσουν ένα πρόγραμμα ονομάζονται προγραμματιστές.
  • 17. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη void DisplayBlock(SBlock Block) { if (Block.nY < 1) return; RECT rcBlock = g_rcBlock; rcBlock.left = Block.nColor * BLOCK_DIAMETER; rcBlock.right = Block.nColor * BLOCK_DIAMETER + BLOCK_DIAMETER; g_pDisplay->Blt( (DWORD)Block.nX * BLOCK_DIAMETER - 2 , (DWORD)Block.nY * BLOCK_DIAMETER , g_pSecondarySurface, &rcBlock ); } Εικόνα 1.2: Το γνωστό παιχνίδι ΤΕΤΡΙΣ είναι ένα πρόγραμμα το οποίο περιλαμβάνει μια σειρά εντολών (ένα μικρό υποσύνολο των εντολών του μπορείτε να δείτε στα δεξιά της εικόνας).
  • 18. Μια ιστοσελίδα όπως την βλέπει ένας χρήστης του διαδικτύου
  • 19. Ο κώδικας που βρίσκεται από πίσω από μια ιστοσελίδα
  • 20. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Γλώσσες Προγραμματισμού • Γλώσσα Μηχανής • Visual BASIC • PASCAL • FORTRAN • C • C++ • Logo • Java • ADA • PROLOG 00000000 00000001 00000010 00000110 00000000 00100000 Τμήμα Προγράμματος σε γλώσσα μηχανής Οι μεταφραστές είναι προγράμματα που μετατρέπουν εντολές που είναι γραμμένες σε κάποια από τις γλώσσες προγραμματισμού σε γλώσσα μηχανής
  • 21. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Χαρακτηριστικά Γλωσσών Προγραμματισμού Βασικά χαρακτηριστικά: • το αλφάβητο (είναι το σύνολο των χαρακτήρων που χρησιμοποιούνται από τη γλώσσα) • το λεξιλόγιο (το σύνολο των λέξεων που αναγνωρίζει η γλώσσα και έχουν συγκεκριμένη και μοναδική σημασία) • το συντακτικό (το σύνολο των κανόνων που πρέπει να ακολουθούμε, για να συνδέουμε λέξεις σε προτάσεις)
  • 22. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη Το ολοκληρωμένο προγραμματιστικό περιβάλλον Ένα περιβάλλον προγραμματισμού αποτελείται από διάφορα εργαλεία που βοηθάνε τον προγραμματιστή να γράψει και να διορθώσει το πρόγραμμά του. Τα κύρια εργαλεία είναι: • ένας εξειδικευμένος κειμενογράφος, που χρησιμεύει για τη σύνταξη και τη διόρθωση του προγράμματος και • ένα πρόγραμμα-μεταφραστής που μετατρέπει τις οδηγίες μας στη μορφή που τις καταλαβαίνει ο επεξεργαστής, δηλαδή σε μια σειρά από 0 και 1.
  • 23. ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις ΚλειδιάΛέξεις Κλειδιά:: Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα,Αλγόριθμος, Γλώσσες Προγραμματισμού, Δεδομένα, Εντολή, Ζητούμενα, Κατανόηση Προβλήματος, Πρόβλημα, Πρόγραμμα, Προγραμματισμός, Προγραμματιστής.Πρόγραμμα, Προγραμματισμός, Προγραμματιστής. Γ΄ τάξηΓ΄ τάξη • Οι μεταφραστές είναι δυνατόν να βρουν οποιοδήποτε λάθος υπάρχει στη σύνταξη, στο αλφάβητο ή στο λεξιλόγιο μιας εντολής. Τέτοιου είδους λάθη ονομάζονται συντακτικά • Τα λάθη που αφορούν τον αλγόριθμο κατασκευής και οδηγούν σε μη αναμενόμενα αποτελέσματα κατά την εκτέλεση ενός προγράμματος ονομάζονται λογικά. Τέτοιου είδους λάθη δεν αναγνωρίζονται από τους μεταφραστές Σχήμα 1.3: Στάδια για την εκτέλεση ενός αλγορίθμου από τον υπολογιστή Αλγόριθμος Πρόγραμμα Μετατροπή του προγράμματος σε 0 και 1 (γλώσσα μηχανής) Εκτέλεση του προγράμματος στον επεξεργαστή