G 1 algorithms_programming

69
ΕΝΟΤΗΤΑ 1, Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου και στον Προγραμματισμό Λέξεις Κλειδιά: Πρόβλημα, Κατανόηση Προβλήματος, Δεδομένα, Ζητούμενα, Επίλυση Αλγόριθμος, Γλώσσες Προγραμματισμού, Πρόγραμμα, Εντολή, Προγραμματισμός, Προγραμματιστής Γ΄ τάξη Γ΄ τάξη Αλγόριθμος Προγραμματισμός

Transcript of G 1 algorithms_programming

Page 1: G 1 algorithms_programming

ΕΝΟΤΗΤΑ 1, Κεφάλαιο 1: Εισαγωγή στην έννοια του αλγορίθμου

και στον Προγραμματισμό

Λέξεις Κλειδιά:Πρόβλημα,

Κατανόηση Προβλήματος,Δεδομένα,Ζητούμενα,

ΕπίλυσηΑλγόριθμος,

Γλώσσες Προγραμματισμού, Πρόγραμμα,

Εντολή, Προγραμματισμός, Προγραμματιστής

Γ΄ τάξηΓ΄ τάξη

Αλγόριθμος Προγραμματισμός

Page 2: G 1 algorithms_programming

Η έννοια του προβλήματος

• Ζήτημα που τίθεται προς επίλυση• Εμβαδόν αίθουσας πληροφορικής• Εβδομαδιαίο χαρτζηλίκι

• Κατάσταση που μας απασχολεί και πρέπει να αντιμετωπιστεί• Συντομότερη διαδρομή για το σχολείο• Τακτοποίηση δισκοθήκης μου

Page 3: G 1 algorithms_programming

Κατηγορίες προβλημάτων• Συνήθως υπολογιστικά

• Απαιτούν • Λογικές σκέψεις• Μαθηματικές πράξεις

• Καθημερινής ζωής• Προβλήματα που

• Λύνονται• Εύκολα• Δύσκολα

• δεν μπορούμε να τα επιλύσουμε με τις μέχρι τώρα γνώσεις μας

• έχει αποδειχθεί ότι δεν μπορούμε να τα επιλύσουμε

Page 4: G 1 algorithms_programming

Επίλυση προβλήματος• Κατανόηση

• Δεδομένα (αυτά που μας δίνουν)• Ζητούμενο (αυτό που ψάχνουμε)• «Περιβάλλον»

• Χτίστης

• Αφαίρεση αριθμών• Επίλυση

• Μοναδική λύση• Περισσότερες από μια λύσεις

• Περιγραφή λύσης

Ένας εργάτης χτίζει 1 μέτρο τοίχο σε 2 ώρες. Σε πόσο χρόνο θα έχει ολοκληρώσει το χτίσιμο 11 μέτρων, αν δουλέψει μόνος του;

Page 5: G 1 algorithms_programming

Σύνθετα προβλήματα

• Κατανόηση• Ανάλυση σε επιμέρους

μικρότερα και απλούστερα προβλήματα

• Διατύπωση σωστών οδηγιών

Page 6: G 1 algorithms_programming

Πρόβλημα:Οργάνωση Εκπαιδευτικής Εκδρομής

Τρόπος Μεταφοράς

Εύρεση Τόπου

Επίσκεψης

Συγκέντρωση Βεβαιώσεων Συμμετοχής

Συγκέντρωση Χρημάτων

Καθορισμός Ημερομηνίας Επίσκεψης

Υπολογισμός Αντιτίμου Συμμετοχής

Εκπαιδευτική εκδρομή

Page 7: G 1 algorithms_programming

Πρόβλημα:Αγορά Η/Υ

Έρευνα αγοράςΠροδιαγραφές

Προϋπολογισμός

Αγορά Υπολογιστή

Page 8: G 1 algorithms_programming

Ανακεφαλαίωση

• Τι είναι Τι είναι • πρόβλημαπρόβλημα• δεδομένα προβλήματοςδεδομένα προβλήματος• επίλυση προβλήματοςεπίλυση προβλήματος

• Πως λύνουμε προβλήματαΠως λύνουμε προβλήματα• ΚατανόησηΚατανόηση• ΔεδομέναΔεδομένα• ΠεριβάλλονΠεριβάλλον• Ανάλυση σε απλούστεραΑνάλυση σε απλούστερα

Page 9: G 1 algorithms_programming

Από το βιβλίο μας

• Κεφάλαιο 1 : Κεφάλαιο 1 : Εισαγωγή στην έννοια του Εισαγωγή στην έννοια του αλγόριθμου και στον προγραμματισμό, αλγόριθμου και στον προγραμματισμό,

Εισαγωγή Εισαγωγή - - &&1.1 (1.1 (Σελ 176 -178)Σελ 176 -178)• Ερωτήσεις 1 – 2 (σελ 185)Ερωτήσεις 1 – 2 (σελ 185)• Ασκήσεις αυτο-αξιολόγησης :Ασκήσεις αυτο-αξιολόγησης :

• Προτάσεις σωστού λάθους : 1-4 (σελ 200)Προτάσεις σωστού λάθους : 1-4 (σελ 200)• Δραστηριότητες :Δραστηριότητες :

• 1, 3 (σελ 201)1, 3 (σελ 201)

Page 10: G 1 algorithms_programming

Δραστηριότητα : Κλεψύδρες

• Έχω δύο κλεψύδρεςΈχω δύο κλεψύδρες• ο χρόνος τους είναι ο χρόνος τους είναι 44 και 7 λεπτά αντίστοιχα και 7 λεπτά αντίστοιχα• Πώς μπορώ να μετρήσω 9 λεπτάΠώς μπορώ να μετρήσω 9 λεπτά

Page 11: G 1 algorithms_programming

Δραστηριότητα : Κλεψύδρες

Page 12: G 1 algorithms_programming

Αλγόριθμος

• Περιγραφή ξεχωριστών οδηγιών-βημάτων• σαφή • ακριβή• λογική σειρά

• Σκοπός : επίλυση προβλήματος.• Πχ οδηγίες για

• κατασκευή χαρταετού• Μαγείρεμα μακαρονάδας

Page 13: G 1 algorithms_programming

Πριν προχωρήσουμε παρακάτω προσπάθησε να απαντήσεις στις ακόλουθες ερωτήσεις:1 Τι θα συμβεί αν ξεχάσουμε την εντολή 9 στον παραπάνω αλγόριθμο;2 Μπορούμε να αντιμεταθέσουμε τις εντολές 7 και 8;3 Τι θα συμβεί, αν αντικαταστήσουμε την εντολή στο βήμα 4 με την εντολή

«πρόσθεσε αλάτι»;4 Αν αντιμεταθέσουμε τις εντολές 1 και 2, θα υπάρξει κάποιο πρόβλημα στον

αλγόριθμο;

Παράδειγμα αλγόριθμου - μακαρονάδα1. Άνοιξε το μάτι της κουζίνας στο 2.2. Βάλε 3 λίτρα νερό σε μία κατσαρόλα χωρητικότητας 4 λίτρων.3. Τοποθέτησε την κατσαρόλα στο μάτι της κουζίνας, που έχεις ήδη ανάψει.4. Πρόσθεσε στην κατσαρόλα μία κουταλιά της σούπας αλάτι.5. Περίμενε μέχρι να βράσει το νερό. 6. Βγάλε τα μακαρόνια από το πακέτο. 7. Βάλε τα μακαρόνια στην κατσαρόλα.8. Ανακάτευε τα μακαρόνια για 10 λεπτά.9. Κλείσε το μάτι της κουζίνας που άνοιξες.10. Βγάλε την κατσαρόλα από το μάτι της κουζίνας.11. Άδειασε τα μακαρόνια από την κατσαρόλα σε ένα σουρωτήρι.12. Ρίξε κρύο νερό από τη βρύση στα μακαρόνια για 20 δευτερόλεπτα.13. Άφησε για 2 λεπτά τα μακαρόνια να στραγγίξουν.14. Σερβίρισε τα μακαρόνια στο πιάτο. 15. Πρόσθεσε σε κάθε πιάτο 3 κουταλιές της σούπας τριμμένο τυρί.

Page 14: G 1 algorithms_programming

Τετράγωνο στην άμμο• Θέλουμε να περιγράψουμε σε ένα μικρό παιδί πώς θα

δημιουργήσει με τις πατούσες του ένα τετράγωνο στην άμμο.

• γνωρίζει το παιδί τι είναι τετράγωνο; • κλειστό γεωμετρικό σχήμα με

• 4 ίσες πλευρές. • 4 ορθές γωνίες (90ο).

Page 15: G 1 algorithms_programming

Αλγόριθμος τετραγώνου στην άμμο1. Περπάτησε 5 βήματα μπροστά.2. Στρίψε δεξιά κατά ενενήντα μοίρες. 3. Περπάτησε 5 βήματα μπροστά.4. Στρίψε δεξιά κατά ενενήντα μοίρες.5. Περπάτησε 5 βήματα μπροστά.6. Στρίψε δεξιά κατά ενενήντα μοίρες.7. Περπάτησε 5 βήματα μπροστά.

Page 16: G 1 algorithms_programming

Ορθογώνιο στην άμμο• Θέλουμε να περιγράψουμε σε ένα μικρό παιδί πώς θα

δημιουργήσει με τις πατούσες του ένα ορθογώνιο στην άμμο.

Page 17: G 1 algorithms_programming

Αλγόριθμος δημιουργίας ενός λουλουδιού με 10 πέταλα

Το αποτέλεσμα υλοποίησης του Αλγορίθμου

επανάλαβε 10 φορές[σχεδίασε_πέταλο]

Ιδιότητες ενός Αλγορίθμου• Τα βήματα : οδηγίες ή εντολές• Προϋποθέσεις

• έχει τέλος • ακριβής • σαφής • απλά λόγια• Λογική σειρά

Page 18: G 1 algorithms_programming

«Έχει κάποιος ένα πρόβατο, ένα λύκο και ένα καφάσι με χόρτα στη μία όχθη ενός ποταμού και θέλει να τα περάσει στην απέναντι όχθη χρησιμοποιώντας μία βάρκα. Η βάρκα όμως είναι μικρή και μπορεί να μεταφέρει, εκτός από τον ίδιο, άλλο ένα από τα ζώα ή το καφάσι. Ωστόσο δεν πρέπει να μείνουν μαζί ο λύκος με το πρόβατο και το πρόβατο με τα χόρτα. Μπορείτε να δώσετε οδηγίες στο βαρκάρη για το πώς πρέπει να κάνει τη μεταφορά τους;»

Δεδομένα: 1 πρόβατο, 1 λύκος, 1 καφάσι με χόρτα, μία θέση επιπλέον στη βάρκα, 2 όχθες ποταμού.

Πλαίσιο του προβλήματος:

Ο λύκος δεν πρέπει να μείνει μαζί με το πρόβατο.Το πρόβατο δεν πρέπει να μείνει μαζί με τα χόρτα.

Ζητούμενο: Να περάσει ο λύκος, το πρόβατο και το καφάσι με τα χόρτα στην απέναντι όχθη.

Πρόβλημα

Page 19: G 1 algorithms_programming

Δραστηριότητα : μεταφορά με τη βάρκα

• Ανοίξτε τον υπολογιστή σαςΑνοίξτε τον υπολογιστή σας• Χρησιμοποιείστε το εικονίδιο Χρησιμοποιείστε το εικονίδιο Course Course για να ξεκινήσετε το για να ξεκινήσετε το

«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»• Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»• Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»• Επιλέξτε «Εισαγωγή στην έννοια του αλγόριθμου»Επιλέξτε «Εισαγωγή στην έννοια του αλγόριθμου»• Στη βαλίτσα επιλέξτε το 5, «Συνεργατική δραστηριότητα»Στη βαλίτσα επιλέξτε το 5, «Συνεργατική δραστηριότητα»• Διαβάστε τις οδηγίες κι ενεργήστε ανάλογαΔιαβάστε τις οδηγίες κι ενεργήστε ανάλογα• Κάντε κλικ πάνω στο αντικείμενο που θα μεταφέρει κάθε Κάντε κλικ πάνω στο αντικείμενο που θα μεταφέρει κάθε

φορά η βάρκαφορά η βάρκα

Page 20: G 1 algorithms_programming

Αρχή του αλγορίθμου:

– Βάλε το πρόβατο στη βάρκα.– Πήγαινε στην απέναντι όχθη.– Άφησε το πρόβατο στην όχθη.– Γύρνα πίσω στην αρχική όχθη.– Φόρτωσε το καφάσι με τα χόρτα.– Πήγαινε στην απέναντι όχθη.– Άφησε το καφάσι στην όχθη.– Βάλε το πρόβατο στη βάρκα.

• Πήγαινε στην αρχική όχθη. • Άφησε το πρόβατο στην όχθη. • Βάλε το λύκο στη βάρκα.• Πήγαινε στην απέναντι όχθη.• Άφησε το λύκο στην όχθη.• Γύρνα πίσω στην αρχική όχθη.• Βάλε το πρόβατο στη βάρκα• Πήγαινε στην απέναντι όχθη.• Άφησε το πρόβατο στην όχθη.Τέλος του αλγορίθμου

Αλγόριθμος επίλυσης του προβλήματος

Page 21: G 1 algorithms_programming

Από το βιβλίο μας

• Κεφάλαιο 1 : Κεφάλαιο 1 : Εισαγωγή στην έννοια του Εισαγωγή στην έννοια του αλγόριθμου και στον προγραμματισμό, αλγόριθμου και στον προγραμματισμό,

• &1.1&1.1 - - &&1.2 (1.2 (Σελ 178 -181)Σελ 178 -181)• Ερωτήσεις 3 – 4 (σελ 185)Ερωτήσεις 3 – 4 (σελ 185)• Ασκήσεις αυτο-αξιολόγησης :Ασκήσεις αυτο-αξιολόγησης :

• Προτάσεις σωστού λάθους : 5-6 (σελ 200)Προτάσεις σωστού λάθους : 5-6 (σελ 200)• Δραστηριότητες :Δραστηριότητες :

• 5-7 (σελ 201)5-7 (σελ 201)

Page 22: G 1 algorithms_programming

Αναπαράσταση αλγόριθμου : Ψευδοκώδικας• Με απλά λόγιαΜε απλά λόγια• Απαριθμούμε τις οδηγίεςΑπαριθμούμε τις οδηγίες

1. Περπάτησε 5 βήματα μπροστά.2. Στρίψε δεξιά κατά ενενήντα μοίρες. 3. Περπάτησε 5 βήματα μπροστά.4. Στρίψε δεξιά κατά ενενήντα μοίρες.5. Περπάτησε 5 βήματα μπροστά.6. Στρίψε δεξιά κατά ενενήντα μοίρες.7. Περπάτησε 5 βήματα μπροστά.

Page 23: G 1 algorithms_programming

Αναπαράσταση αλγόριθμου Διάγραμμα ροής

• ΑρχήΑρχή

• ΤέλοςΤέλος

• ΕνέργειαΕνέργεια

• Ερώτηση – ΑπόφασηΕρώτηση – Απόφαση

• Ροή ενεργειώνΡοή ενεργειών

Αρχή

Περπάτησε 5 βήματα μπροστά

Στρίψε δεξιά 90 μοίρες

Περπάτησε 5 βήματα μπροστά

Στρίψε δεξιά 90 μοίρες

Περπάτησε 5 βήματα μπροστά

Στρίψε δεξιά 90 μοίρες

Περπάτησε 5 βήματα μπροστά

Τέλος

Page 24: G 1 algorithms_programming

Aρχή

Προχώρησε 5 βήματα μπροστά

Στρίψε δεξιά 900

Προχώρησε 5 βήματα μπροστά

Στρίψε δεξιά 900

Προχώρησε 5 βήματα μπροστά

Στρίψε δεξιά 900

Προχώρησε 5 βήματα μπροστά

Τέλος

Page 25: G 1 algorithms_programming

Αναπαράσταση αλγόριθμου Διάγραμμα ροής

• ΑρχήΑρχή

• ΤέλοςΤέλος

• ΕνέργειαΕνέργεια

• Ερώτηση – ΑπόφασηΕρώτηση – Απόφαση

• Ροή ενεργειώνΡοή ενεργειών

Page 26: G 1 algorithms_programming

Αρχή

Σήκωσε το ακουστικό

Τοποθέτησε την κάρταστη σχισμή

Έχει μονάδες;

Σχημάτισε τον Αριθμό

Τοποθέτησε το Ακουστικό στη θέση του

Τέλος

Συνομίλησε

Οχι

Ναί

Βγάλε την κάρτα

Page 27: G 1 algorithms_programming

Δραστηριότητα : Διαστημικός σταθμός Ι-47

• Ανοίξτε τον υπολογιστή σαςΑνοίξτε τον υπολογιστή σας• Χρησιμοποιείστε το εικονίδιο Χρησιμοποιείστε το εικονίδιο Course Course για να ξεκινήσετε το για να ξεκινήσετε το

«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»• Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»• Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»• Επιλέξτε «Εισαγωγή στην έννοια του αλγόριθμου»Επιλέξτε «Εισαγωγή στην έννοια του αλγόριθμου»• Επιλέξτε «Διδασκαλία»Επιλέξτε «Διδασκαλία» (No 1) (No 1)• Διαβάστε τις οδηγίεςΔιαβάστε τις οδηγίες• Κάντε διαδοχικά κλικ στα βήματα που πρέπει να Κάντε διαδοχικά κλικ στα βήματα που πρέπει να

ακολουθηθούνακολουθηθούν• Δείτε τις οδηγίες του αλγόριθμού σας.Δείτε τις οδηγίες του αλγόριθμού σας.

Page 28: G 1 algorithms_programming

Ο αλγόριθμος

Page 29: G 1 algorithms_programming

Βοηθήστε τη χελώνα να φτάσει στο σπίτι της

Page 30: G 1 algorithms_programming

Δραστηριότητα : η χελώνα• Ανοίξτε τον υπολογιστή σαςΑνοίξτε τον υπολογιστή σας• Χρησιμοποιείστε το εικονίδιο Χρησιμοποιείστε το εικονίδιο Course Course για να ξεκινήσετε το για να ξεκινήσετε το

«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»• Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»• Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»• Επιλέξτε «Εισαγωγή στον Προγραμματισμό»Επιλέξτε «Εισαγωγή στον Προγραμματισμό»• Επιλέξτε «Πρακτική άσκηση και εξάσκηση»Επιλέξτε «Πρακτική άσκηση και εξάσκηση» (No 2) (No 2)• Διαβάστε τις οδηγίεςΔιαβάστε τις οδηγίες• Πατήστε το πλήκτρο «επόμενο»Πατήστε το πλήκτρο «επόμενο»• Τοποθετήστε τις οδηγίες με τη σωστή σειράΤοποθετήστε τις οδηγίες με τη σωστή σειρά• Κάντε έλεγχο του αλγόριθμού σας.Κάντε έλεγχο του αλγόριθμού σας.

Page 31: G 1 algorithms_programming

Οδηγίες για τη χελώνα

1. Προχώρησε 2 θέσεις

2. Στριψε αριστερά 90 μοίρες

3. Προχώρησε 3 θέσεις

4. Στρίψε δεξιά 90 μοίρες

5. Προχώρησε 4 θέσεις

6. Ξανά στρίψε δεξιά 90 μοίρες

7. Προχώρησε 5 θέσεις

Page 32: G 1 algorithms_programming

Το ρομποτάκι

Page 33: G 1 algorithms_programming

Οι οδηγίες

Page 34: G 1 algorithms_programming

Δραστηριότητα : Το ρομποτάκι• Ανοίξτε τον υπολογιστή σαςΑνοίξτε τον υπολογιστή σας• Χρησιμοποιείστε το εικονίδιο Χρησιμοποιείστε το εικονίδιο Course Course για να ξεκινήσετε το για να ξεκινήσετε το

«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»• Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»• Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»• Επιλέξτε «Εισαγωγή στην έννοια του Αλγόριθμου»Επιλέξτε «Εισαγωγή στην έννοια του Αλγόριθμου»• Επιλέξτε «Πρακτική άσκηση και επίδειξη»Επιλέξτε «Πρακτική άσκηση και επίδειξη», No 2, No 2• Διαβάστε τις οδηγίεςΔιαβάστε τις οδηγίες• Πατήστε το πλήκτρο «επόμενο»Πατήστε το πλήκτρο «επόμενο»• Τοποθετήστε τις οδηγίες με τη σωστή σειράΤοποθετήστε τις οδηγίες με τη σωστή σειρά• Κάντε έλεγχο του αλγόριθμού σας.Κάντε έλεγχο του αλγόριθμού σας.

Page 35: G 1 algorithms_programming

Ο αλγόριθμος διάγραμμα ροής

Page 36: G 1 algorithms_programming

Δραστηριότητα : Οδηγός αεροσκάφους

• Επιλέξτε «Ατομικές δραστηριότητες»Επιλέξτε «Ατομικές δραστηριότητες», No 4, No 4• Διαβάστε τις οδηγίες κι ενεργήστε ανάλογαΔιαβάστε τις οδηγίες κι ενεργήστε ανάλογα• Πατήστε το πλήκτρο «επόμενο»Πατήστε το πλήκτρο «επόμενο»• Τοποθετήστε τις οδηγίες με τη σωστή σειράΤοποθετήστε τις οδηγίες με τη σωστή σειρά• Κάντε έλεγχο του αλγόριθμού σας.Κάντε έλεγχο του αλγόριθμού σας.

Page 37: G 1 algorithms_programming

Οδηγός αεροσκάφους : Αλγόριθμος με απόφαση

Page 38: G 1 algorithms_programming

Ο αλγόριθμος

Page 39: G 1 algorithms_programming

Ο συντομότερος αλγόριθμος• Ανοίξτε τον υπολογιστή σαςΑνοίξτε τον υπολογιστή σας• Χρησιμοποιείστε το εικονίδιο Χρησιμοποιείστε το εικονίδιο Course Course για να ξεκινήσετε το για να ξεκινήσετε το

«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»«Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»• Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»• Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»• Επιλέξτε «Εισαγωγή στον Προγραμματισμό»Επιλέξτε «Εισαγωγή στον Προγραμματισμό»• Επιλέξτε «Διδασκαλία»Επιλέξτε «Διδασκαλία» (No 1) (No 1)• Διαβάστε τις οδηγίεςΔιαβάστε τις οδηγίες• Κάντε διαδοχικά κλικ στα βήματα που πρέπει να Κάντε διαδοχικά κλικ στα βήματα που πρέπει να

ακολουθηθούνακολουθηθούν• Δείτε τις οδηγίες του αλγόριθμού σας.Δείτε τις οδηγίες του αλγόριθμού σας.

Page 40: G 1 algorithms_programming

Πρόβλημα

• Να υπολογιστεί πόσα λεπτά είναι Χ ώρες και Υ λεπτάΝα υπολογιστεί πόσα λεπτά είναι Χ ώρες και Υ λεπτά• Λεπτά = Χ * 60 + ΥΛεπτά = Χ * 60 + Υ

Page 41: G 1 algorithms_programming

Κάθετη πρόσθεση διψήφιων αριθμών

ΑΡΧΗ

Τοποθετώ τους αριθμούς τον ένα κάτω από τον άλλο, στοιχίζοντας μονάδες και δεκάδες

Προσθέτω μονάδες

Γράφω το ψηφίο των μονάδων

Σημειώνω το κρατούμενο

Γράφω το αποτέλεσμα

Προσθέτω κρατούμενο και δεκάδες

Έχω κρατούμενο;

Προσθέτω δεκάδες

ναι

όχι

ΤΕΛΟΣ

Page 42: G 1 algorithms_programming

Από το βιβλίο μας

• Κεφάλαιο 1 : Κεφάλαιο 1 : Εισαγωγή στην έννοια του Εισαγωγή στην έννοια του αλγόριθμου και στον προγραμματισμό, αλγόριθμου και στον προγραμματισμό, &&1.2 - 1.2 - &&1.3 (σ1.3 (σελ 178 -181)ελ 178 -181)

• Ερωτήσεις 3 – 4 (σελ 185)Ερωτήσεις 3 – 4 (σελ 185)• Ασκήσεις αυτο-αξιολόγησης :Ασκήσεις αυτο-αξιολόγησης :

• Προτάσεις σωστού λάθους : 5-6 (σελ 200)Προτάσεις σωστού λάθους : 5-6 (σελ 200)• Δραστηριότητες 5 - 7 (σελ 201)Δραστηριότητες 5 - 7 (σελ 201)

Page 43: G 1 algorithms_programming

Υλοποίηση αλγόριθμου με υπολογιστή Πρόγραμμα

Πρόγραμμα

• αναπαράσταση αλγορίθμου

• γραμμένη σε γλώσσα κατανοητή για έναν υπολογιστή

(γλώσσα προγραμματισμού)

• αποτελείται από μία σειρά εντολών

• Εντολές = οδηγίες : δίνονται στον υπολογιστή για

• να εκτελέσει κάποια συγκεκριμένη λειτουργία

• να υπολογίσει κάποιο επιθυμητό αποτέλεσμα.

Page 44: G 1 algorithms_programming

Υλοποίηση αλγόριθμου με υπολογιστή Προγραμματισμός

• Προγραμματισμός

• Η εργασία σύνταξης των προγραμμάτων

• Προγραμματιστές

• Tα άτομα που γράφουν και συντάσσουν ένα

πρόγραμμα

Page 45: G 1 algorithms_programming

Προγράμματα υπολογιστών

• Ζωγραφική

• Κειμενογράφος

• Φυλλομετρητές

• Παιχνίδια

Page 46: G 1 algorithms_programming

Παράδειγμα προγράμματος

Logo

Page 47: G 1 algorithms_programming

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 );

}

Το γνωστό παιχνίδι ΤΕΤΡΙΣ είναι ένα πρόγραμμα το οποίο περιλαμβάνει μια σειρά εντολών (ένα μικρό υποσύνολο των εντολών του μπορείτε να δείτε στα δεξιά της εικόνας).

Παράδειγμα προγράμματος

Page 48: G 1 algorithms_programming

Γλώσσες Προγραμματισμού• Βασικά χαρακτηριστικά:

• το αλφάβητο • το σύνολο των χαρακτήρων που

χρησιμοποιούνται από τη γλώσσα• το λεξιλόγιο

• το σύνολο των λέξεων που αναγνωρίζει η γλώσσα και έχουν συγκεκριμένη και μοναδική σημασία

• το συντακτικό • το σύνολο των κανόνων που πρέπει να

ακολουθούμε, για να συνδέουμε λέξεις σε προτάσεις

Page 49: G 1 algorithms_programming

Γνωστές Γλώσσες Προγραμματισμού• Γλώσσα Μηχανής• Γλώσσες Υψηλού επιπέδου

• Visual BASIC• PASCAL• FORTRAN• C• C++• Logo• Java• ADA• PROLOG

Page 50: G 1 algorithms_programming

000000000000000100000010000001100000000000100000

Τμήμα Προγράμματοςσε γλώσσα μηχανής

Γλώσσα Μηχανής• Αλφάβητο : αποτελείται από 0 και 1• Η μόνη γλώσσα που καταλαβαίνει ο

υπολογιστής• Διαφορετική για κάθε τύπο υπολογιστή (για

κάθε επεξεργαστή• Δύσκολη στην εκμάθηση

Page 51: G 1 algorithms_programming

Γλώσσες Υψηλού επιπέδου• Αλφάβητο :

• γράμματα αγγλικού αλφάβητου• αριθμοί• Σύμβολα

• Λεξιλόγιο :• Λέξεις από την αγγλική γλώσσα

• συντακτικό • Κανόνες σχηματισμού εντολών

Page 52: G 1 algorithms_programming

Γλώσσες Υψηλού επιπέδου• ίδιες για κάθε τύπο υπολογιστή (για όλους τους

επεξεργαστές

• Εύκολες στην εκμάθηση

• Δεν τις καταλαβαίνει ο υπολογιστής

• Το πρόγραμμα σε γλώσσα υψηλού επιπέδου ονομάζεται πηγαίο πρόγραμμα

• Το πρόγραμμα χρειάζεται μετάφραση σε γλώσσα μηχανής

Page 53: G 1 algorithms_programming

Μεταφραστής

• Ελέγχει το πρόγραμμά μας αν ακολουθεί τους κανόνες συντακτικού της γλώσσας

• Εντοπίζει τα συντακτικά λάθη

• Μεταφράζει το πρόγραμμά μας σε γλώσσα μηχανής

Page 54: G 1 algorithms_programming

Είδη Μεταφραστών• Μεταγλωττιστές (compilers)

• Διερμηνείς (interpreters)

Page 55: G 1 algorithms_programming

Μεταγλωτιστές

• Μεταγλωττιστές (compilers)

• Ελέγχουν ολόκληρο το πρόγραμμα (πηγαίο

πρόγραμμα) για συντακτικά λάθη

• Μετατρέπουν ολόκληρο το πρόγραμμα σε γλώσσα

μηχανής (εκτελέσιμο πρόγραμμα)

Page 56: G 1 algorithms_programming

Διερμηνείς

• Διερμηνείς (interpreters)

• Ελέγχουν μια εντολή του προγράμματος για

συντακτικά λάθη

• Τη μετατρέπουν σε γλώσσα μηχανής

• Την εκτελούν

• Συνεχίζουν στην επόμενη εντολή

• Δεν παράγουν εκτελέσιμο πρόγραμμα

Page 57: G 1 algorithms_programming

Πρόγραμμα σε γλώσσα υψηλού επιπέδου

Page 58: G 1 algorithms_programming

Αλγόριθμος Πρόγραμμα Μετατροπή του προγράμματοςσε 0 και 1 (γλώσσα μηχανής)

Εκτέλεση του προγράμματος στον επεξεργαστή

Στάδια για την εκτέλεση ενός αλγορίθμου από τον υπολογιστή

Page 59: G 1 algorithms_programming

Λογικά λάθη

• Λάθη του αλγόριθμου

• Αντί να δώσουμε οδηγία αφαίρεσης, δίνουμε οδηγία πρόσθεσης

• Οδηγίες που «εννοούνται»

• Αν δεν δώσω κατάλληλη οδηγία, δεν μου εμφανίζει αποτελέσματα

Page 60: G 1 algorithms_programming

Το ολοκληρωμένο προγραμματιστικό περιβάλλον

• Περιβάλλον προγραμματισμού • αποτελείται από διάφορα εργαλεία που βοηθάνε τον

προγραμματιστή • να γράψει • να διορθώσει • να μεταφράσει το πρόγραμμά του

Page 61: G 1 algorithms_programming

Εργαλεία ολοκληρωμένου προγραμματιστικού περιβάλλοντος

• εξειδικευμένος κειμενογράφος για • σύνταξη • διόρθωση του πηγαίου προγράμματος

• πρόγραμμα-μεταφραστής που μετατρέπει τις οδηγίες μας σε γλώσσα μηχανής δηλαδή σε μια σειρά από 0 και 1.

Page 62: G 1 algorithms_programming

To περιβάλλον «Microworlds-Pro»

Page 63: G 1 algorithms_programming

To περιβάλλον «Χελωνόκοσμος»

Page 64: G 1 algorithms_programming

Από το βιβλίο μας

• Κεφάλαιο 1 : Κεφάλαιο 1 : Εισαγωγή στην έννοια του Εισαγωγή στην έννοια του αλγόριθμου και στον προγραμματισμό, αλγόριθμου και στον προγραμματισμό,

&&1.4 - 1.4 - &&1.5 (1.5 (Σελ 181 -185)Σελ 181 -185)• Ερωτήσεις 5 – 8 (σελ 185)Ερωτήσεις 5 – 8 (σελ 185)• Ασκήσεις αυτο-αξιολόγησης :Ασκήσεις αυτο-αξιολόγησης :

• Προτάσεις σωστού λάθους : 7-10 (σελ 200)Προτάσεις σωστού λάθους : 7-10 (σελ 200)

Page 65: G 1 algorithms_programming

Στο επόμενο μάθημα

• ΟΛΟΙ ΟΛΟΙ • φέρνουμε μνήμη φλασφέρνουμε μνήμη φλασ για για

• να αντιγράψουμε τη να αντιγράψουμε τη LOGO LOGO και και

• να την εγκαταστήσουμε στον υπολογιστή να την εγκαταστήσουμε στον υπολογιστή του σπιτιού μαςτου σπιτιού μας

Page 66: G 1 algorithms_programming

Δραστηριότητα : η χελώνα• Ανοίξτε τον υπολογιστή σαςΑνοίξτε τον υπολογιστή σας

• Χρησιμοποιείστε το εικονίδιο Χρησιμοποιείστε το εικονίδιο Course Course για να ξεκινήσετε το «Λογισμικό για να ξεκινήσετε το «Λογισμικό Υποστήριξης Πληροφορικής Γυμνασίου»Υποστήριξης Πληροφορικής Γυμνασίου»

• Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»Επιλέξτε «Αναχωρήσεις Γ Γυμνασίου»

• Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»Επιλέξτε «Γνωρίζω τον Υπολογιστή ως ενιαίο σύστημα»

• Επιλέξτε «Εισαγωγή στον Προγραμματισμό»Επιλέξτε «Εισαγωγή στον Προγραμματισμό»

• Επιλέξτε «Διδασκαλία»Επιλέξτε «Διδασκαλία» (No (No 11))

• Διαβάστε τις οδηγίεςΔιαβάστε τις οδηγίες

• «Οδηγείστε» τη χελώνα«Οδηγείστε» τη χελώνα

• Πατήστε το πλήκτρο «επόμενο»Πατήστε το πλήκτρο «επόμενο»

Page 67: G 1 algorithms_programming

Δραστηριότητα : Οι μεταγλωττιστές

• Επιλέξτε «Προσομοίωση εφαρμογών και λογισμικού»Επιλέξτε «Προσομοίωση εφαρμογών και λογισμικού», No , No 33• Διαβάστε το κείμενοΔιαβάστε το κείμενο• Πατήστε το πλήκτρο «επόμενο»Πατήστε το πλήκτρο «επόμενο»• Κάντε κλικ στο μεγεθυντικό φακό και μετακινήστε τον Κάντε κλικ στο μεγεθυντικό φακό και μετακινήστε τον

πάνω από την εικόνα του αεροδρομίου για να δείτε τις πάνω από την εικόνα του αεροδρομίου για να δείτε τις εντολές προγράμματος που αντιστοιχούνεντολές προγράμματος που αντιστοιχούν

Page 68: G 1 algorithms_programming

Δραστηριότητα γλώσσες προγραμματισμού και

προγράμματα εφαρμογών

• Επιλέξτε «Ατομικές δραστηριότητες»Επιλέξτε «Ατομικές δραστηριότητες», No , No 44• Διαβάστε το κείμενοΔιαβάστε το κείμενο• Πατήστε το πλήκτρο «επόμενο»Πατήστε το πλήκτρο «επόμενο»• Τοποθετήστε στις κατάλληλες θέσεις τις γλώσσες Τοποθετήστε στις κατάλληλες θέσεις τις γλώσσες

προγραμματισμού και τα προγράμματαπρογραμματισμού και τα προγράμματα

Page 69: G 1 algorithms_programming

Δραστηριότητα ερωτήσεις κατανόησης

• Επιλέξτε «αξιολόγηση»Επιλέξτε «αξιολόγηση», No , No 55• Διαβάστε την ερώτησηΔιαβάστε την ερώτηση• Πληκτρολογήστε την απάντησή σας, επιλλέγοντας μια από Πληκτρολογήστε την απάντησή σας, επιλλέγοντας μια από

τις προτεινόμενεςτις προτεινόμενες• Κάντε έλεγχο της απάντησης Κάντε έλεγχο της απάντησης • Πατήστε το πλήκτρο επόμενοΠατήστε το πλήκτρο επόμενο