Η ΑΔΙΚΕΙΑ ΤΟΥ ΔΙΑΓΩΝΙΣΜΟΥ ΑΣΕΠ 2008 ΓΙΑ ΕΚΠΑΙΔΕΥΤΙΚΟΥΣ
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΓΡΑΜΜΑ
1. Τπάρχουν πολλά προβλήματα:
Σι κινητό να αγοράσω;
Ποιους να καλέσω στη γιορτή μου;
Σι να σπουδάσω;
Σι επάγγελμα τα επιλέξω;
Και πιο σοβαρά προβλήματα:
Σο πρόβλημα της ανεργίας
Η κλιματική αλλαγή
2. Γενικά ως πρόβλημα θεωρούμε κάθε
ζήτημα που τίθεται προς επίλυση, κάθε
κατάσταση που μας απασχολεί και
πρέπει να αντιμετωπιστεί. Η λύση ενός
προβλήματος δεν μας είναι γνωστή, ούτε
προφανής.
3. Η επίλυση ενός προβλήματος
προϋποθέτει την κατανόησή του.
Για το λόγο αυτό, πρέπει αρχικά να
καταλάβουμε καλά το περιεχόμενο του
προβλήματος και να διακρίνουμε το
συσχετισμό των δεδομένων με τα
ζητούμενά του, αποσαφηνίζοντας ακόμα
και παρερμηνείες που προκύπτουν από
τη διατύπωσή του. Η εργασία αυτή
καλείται κατανόηση του προβλήματος.
4. Έχει κάποιος ένα πρόβατο, ένα λύκο και ένα
καφάσι με χόρτα στη μία όχθη ενός
ποταμού και θέλει να τα περάσει στην
απέναντι όχθη χρησιμοποιώντας μία βάρκα.
5. Η βάρκα όμως είναι μικρή και μπορεί να
μεταφέρει, εκτός από τον ίδιο, άλλο ένα από
τα ζώα ή το καφάσι.
Ωστόσο δεν πρέπει να μείνουν μαζί ο
λύκος με το πρόβατο και το πρόβατο με
τα χόρτα.
6. Πρέπει να ορίσουμε τα δεδομένα
Δεδομένα:
1 πρόβατο
1 λύκος
1 καφάσι με χόρτα
μία θέση επιπλέον στη βάρκα
2 όχθες ποταμού
7. Πρέπει να ορίσουμε το ζητούμενο
Ζητούμενο:
Να περάσει ο λύκος, το πρόβατο και το
καφάσι με τα χόρτα στην απέναντι όχθη.
Πρέπει να ορίσουμε τις σχέσεις που
συνδέουν δεδομένα και ζητούμενα
Ο λύκος δεν πρέπει να μείνει μαζί με το
πρόβατο.
Σο πρόβατο δεν πρέπει να μείνει μαζί με τα
χόρτα.
8. Πρέπει να ορίσουμε τα βήματα που θα
ακολουθήσει ο βαρκάρης έτσι ώστε να
καταφέρει να περάσει το λύκο, το πρόβατο και
τα χόρτα στην απέναντι όχθη.
Για παράδειγμα:
1 Βάλε το πρόβατο στη βάρκα
2 Πήγαινε στην απέναντι όχθη
3 Άφησε το πρόβατο στην όχθη
Τα βήματα αυτά αποτελούν τον
για την λύση στο πρόβλημα μας
9. Αλγόριθμο ονομάζουμε τη σαφή και ακριβή
περιγραφή
μιας
σειράς
ξεχωριστών
οδηγιών-βημάτων, με σκοπό την επίλυση
ενός προβλήματος
ΑΚΡΙΒΕΙΑ
ΑΠΟΣΕΛΕΜΑΣΙΚΟΣΗΣΑ
ΠΕΡΑΣΟΣΗΣΑ
10. Κάθε βήμα να είναι διατυπωμένο με
σαφήνεια
Δεν υπάρχουν αμφιβολίες για το τι πρέπει να
κάνουμε.
Παράδειγμα
Σα ακόλουθα βήματα είναι διατυπωμένα με
σαφήνεια;
1.Βάλε ένα ζώο στη βάρκα
2.Πήγαινε απέναντι
11. Κάθε βήμα πρέπει να είναι εκφρασμένο με
απλά λόγια και να μην είναι σύνθετο ώστε
να είναι απόλυτα κατανοητό
Παράδειγμα
Σο ακόλουθο βήμα είναι διατυπωμένο με
απλά λόγια;
1.Βρες ποιο ζώο ή καφάσι με χορτάρι θα
βάλεις πρώτο στη βάρκα
12. Ο αλγόριθμος πρέπει κάποτε να τελειώσει
Παράδειγμα
Θα τελειώσει ποτέ ο παρακάτω αλγόριθμος;
1.Πήγαινε στην απέναντι όχθη
2.Επανέλαβε το βήμα 1 για πάντα
13.
Ένα πρόγραμμα είναι η αναπαράσταση
ενός αλγορίθμου γραμμένη σε γλώσσα
κατανοητή για έναν υπολογιστή
Ένα πρόγραμμα αποτελείται από μία
σειρά
εντολών
που
δίνονται
στον
υπολογιστή με σκοπό να εκτελέσει κάποια
συγκεκριμένη λειτουργία ή να υπολογίσει
κάποιο επιθυμητό αποτέλεσμα.
15. Είναι οι γλώσσες που καταλαβαίνουν οι υπολογιστές
και με αυτές φτιάχνουμε τα προγράμματα
Τπάρχουν πολλές γλώσσες προγραμματισμού :
Γλώσσα
Visual
Μηχανής
BASIC
Java
C
C++
Logo
Scratch
16. Ένα πρόγραμμα σε γλώσσα μηχανής είναι μια
ακολουθία δυαδικών ψηφίων, που αποτελούν
εντολές προς τον επεξεργαστή για στοιχειώδεις
λειτουργίες
Παράδειγμα προγράμματος γραμμένο σε
γλώσσα μηχανής
000111101010001
111111111000000
000111001111001
100010001010001
000011101111000
Γλώσσα χαμηλού επιπέδου γιατί είναι πολύ
κοντά στον υπολογιστή και απόμακρη για τον
άνθρωπο
17. Με την πάροδο των χρόνων οι γλώσσες
προγραμματισμού εξελίχθηκαν ώστε να μοιάζουν
όλο και περισσότερο με τη φυσική μας γλώσσα. Γι’
αυτό και λέγονται υψηλού επιπέδου
Παράδειγμα προγράμματος γραμμένο σε γλώσσα
υψηλού επιπέδου
18. ΑΛΥΑΒΗΣΟ
Είναι το σύνολο των χαρακτήρων που χρησιμοποιούνται
από τη γλώσσα
ΛΕΞΙΛΟΓΙΟ
Είναι το σύνολο των λέξεων που αναγνωρίζει η γλώσσα και
έχουν συγκεκριμένη και μοναδική σημασία
ΤΝΣΑΚΣΙΚΟ
Είναι το σύνολο των κανόνων που πρέπει να ακολουθούμε,
για να συνδέουμε λέξεις σε προτάσεις
19. Κάθε πρόγραμμα γραμμένο σε γλώσσα
υψηλού επιπέδου, χρειάζεται μετάφραση
(μετατροπή) σε γλώσσα μηχανής (0,1) για
να μπορέσει να εκτελεστεί άμεσα από τον
υπολογιστή. Η μετάφραση αυτή γίνεται από
ειδικά προγράμματα τα οποία χωρίζονται σε
δυο κατηγορίες
τους μεταγλωττιστές
τους διερμηνείς
20.
Ο μεταγλωττιστής δέχεται ένα πρόγραμμα
γραμμένο σε γλώσσα υψηλού επιπέδου και
παράγει ένα ισοδύναμο πρόγραμμα σε
γλώσσα μηχανής
Ο διερμηνευτής διαβάζει μία προς μία τις
εντολές του αρχικού προγράμματος και για
κάθε μία εκτελεί αμέσως μια ισοδύναμη
ακολουθία εντολών μηχανής
21. ΤΝΣΑΚΣΙΚΑ ΛΑΘΗ
Αν σε κάποια οδηγία έχουμε κάνει λάθος
στο αλφάβητο, στο λεξιλόγιο ή στο
συντακτικό
ΛΟΓΙΚΑ ΛΑΘΗ
Αν το τελικό αποτέλεσμα δεν είναι το
αναμενόμενο
22.
23.
ήμερα το να μπορεί να γράφει κανείς
ένα μικρό πρόγραμμα είναι κοινή
πρακτική για χιλιάδες ανθρώπους,
κυρίως νέους
Σο να γίνει βέβαια κανείς καλός
προγραμματιστής θέλει πολύ κόπο…
Σο να κατανοήσει όμως τα βασικά
σχετικά με το πώς φτιάχνονται τα
προγράμματα και να φτιάξει ένα απλό
πρόγραμμα είναι εφικτό στα πλαίσια του
γυμνασίου
και
ταυτόχρονα
διασκεδαστικό!
24.
Μελέτες έχουν δείξει ότι άτομα τα οποία
έχουν
μάθει
να
σκέφτονται
με
προγραμματιστικό τρόπο, έχουν την
ικανότητα να λύσουν τα προβλήματα της
καθημερινότητας τους πιο εύκολα, πιο
γρήγορα, πιο αποδοτικά
25. Θα ικανοποιήσεις την περιέργειά σου για
το πώς φτιάχνονται τα προγράμματα
Θα νιώσεις χαρά δημιουργώντας τα δικά
σου έργα
Θα γίνεις συν-δημιουργός του μέλλοντος,
αφού εσύ ο ίδιος μπορείς να δημιουργείς
τεχνολογία
Θα ακονίσεις το μυαλό σου και θα
βελτιώσεις τα αντανακλαστικά σου
Και φυσικά θα ΔΙΑΚΕΔΑΕΙ!