Στον Πανούλη Γιάννης
Φίλη μαθήτρια, φίλε μαθητή, Στο βιβλίο δόθηκε ιδιαίτερη έμφαση στη μεθοδολογία αντιμετώπισης των θεμάτων που καλύπτουν την προς εξέταση ύλη. Αυτό επιτυγχάνεται με την επίλυση και τον εκτενή σχολιασμό προσεκτικά επιλεγμένων, αυξανόμενης δυσκολίας, θεμάτων. Επιπλέον, όπου αυτό κρίνεται απαραίτητο, συγκεντρώνουμε τα σημαντικά στοιχεία, τους κανόνες αντιμετώπισης ασκήσεων, καθώς και τις μικρές εκείνες λεπτομέρειες οι οποίες, αν και είναι εξαιρετικά σημαντικές, συχνά διαφεύγουν της προσοχής. Το κάθε κεφάλαιο είναι χωρισμένο σε διδακτικές ενότητες, οι οποίες μπορούν να εκληφθούν ως ξεχωριστά μαθήματα. Τα τελευταία συνοδεύονται από συγκεκριμένες ασκήσεις, τις οποίες καλείσαι να λύσεις στοχεύοντας στην πληρέστερη κατανόηση και την εμπέδωση της ύλης. Τέλος, οι απαντήσεις του συνόλου των προς λύση θεμάτων βρίσκονται στο τέλος του βιβλίου και είναι δοσμένες αναλυτικά και σε πολλές περιπτώσεις συνοδεύονται και από επεξηγηματικά σχόλια. Διάφορα χρήσιμα στοιχεία που αφορούν το συγκεκριμένο βιβλίο και γενικότερα το μάθημα της ΑΕΠΠ μπορούν να βρεθούν στον ιστότοπο www.algorithmoi.gr. Στην ολοκλήρωση και τελική διαμόρφωση του βιβλίου αυτού συνέβαλαν σημαντικά και πρέπει να ευχαριστήσουμε τους Έ. Χατζηδάκη, Π. Καραγιώργο, Φ. Θέο, Σ. Σταυρόπουλο, Μ. Μπουρούνη, Π. Σινούρη και Α. Τσέρτου. Τέλος, ευχαριστούμε ιδιαίτερα τον Ηλία Μιχαλίτση για την επιμέλεια του βιβλίου και τις εύστοχες παρατηρήσεις του, καθώς και τον Νίκο Κωστόπουλο για την ανάπτυξη και επιμέλεια του ιστότοπου του βιβλίου. Κώστας Γ. Ντζιός - Γιάννης Χ. Κοψίνης Καθηγητές Πληροφορικής
Περιεχόµενα Ανάλυση προβλήματος 1. Ανάλυση προβλήματος... 11 Η έννοια του προβλήματος... 11 Κατανόηση προβλήματος... 11 Δομή προβλήματος... 12 Καθορισμός απαιτήσεων... 15 Κατηγορίες προβλημάτων... 15 Πρόβλημα και υπολογιστής... 17 Ερωτήσεις και προβλήματα για απάντηση... 18 Βασικές έννοιες Αλγορίθμων και Προγραμμάτων 2. Εισαγωγή στις έννοιες «Αλγόριθμος» και «Πρόγραμμα»... 27 Ερωτήσεις και προβλήματα για απάντηση... 36 3. Μεταβλητές και Σταθερές. Εντολές εισόδου, εξόδου και εκχώρησης τιμής... 39 Μεταβλητές και σταθερές... 39 Εντολές εισόδου, εξόδου και εκχώρησης τιμής... 45 Ερωτήσεις και προβλήματα για απάντηση... 54 4. Μαθηματικές παραστάσεις στους αλγόριθμους και τα προγράμματα... 61 Ερωτήσεις και προβλήματα για απάντηση... 68 Δομή ακολουθίας 5. Δομή ακολουθίας... 75 Ερωτήσεις και προβλήματα για απάντηση... 87 Δομή επιλογής 6. Λογικές συνθήκες... 95 Απλές λογικές συνθήκες... 95 Σύνθετες λογικές συνθήκες... 97 Αντιστροφή μιας λογικής συνθήκης... 102 Ερωτήσεις και προβλήματα για απάντηση... 104 7. Βασικές δομές επιλογής...109 Η δομή επιλογής αν τότε αλλιώς και η απλή δομή επιλογής αν τότε... 109 Η δομή εμφωλευμένης επιλογής...115 Ερωτήσεις και προβλήματα για απάντηση... 118 8. Εφαρμογή των βασικών δομών επιλογής στην ανάπτυξη αλγόριθμων και προγραμμάτων...127 Χρήση των δομών επιλογής σε μαθηματικά προβλήματα... 133 Υπολογισμός ελάχιστης και μέγιστης τιμής... 137 Εφαρμογή των δομών επιλογής στην επίλυση γενικών προβλημάτων... 141 Ερωτήσεις και προβλήματα για απάντηση... 149 9. Δομές πολλαπλής επιλογής...161 Η πολλαπλή δομή επιλογής αν τότε αλλιώς_αν... 161 Προβλήματα με διαδοχικά διαστήματα τιμών... 166
Η πολλαπλή δομή επιλογής Επίλεξε... 171 Ερωτήσεις και προβλήματα για απάντηση... 176 10. Διαγραμματικές τεχνικές στις δομές επιλογής...189 Μετατροπή αλγόριθμου από ψευδοκώδικα σε ισοδύναμο με χρήση διαγράμματος ροής... 189 Μετατροπή αλγόριθμου με μορφή διαγράμματος ροής σε ψευδοκώδικα... 194 Μετατροπή αλγόριθμων με πολλαπλές δομές επιλογής σε διάγραμμα ροής... 200 Ερωτήσεις και προβλήματα για απάντηση... 204 Δομή επανάληψης 11. Εισαγωγή στις επαναληπτικές δομές...219 Επαναληπτική δομή όσο επανάλαβε... 220 Επαναληπτική δομή αρχή_επανάληψης μέχρις_ότου... 224 Επαναληπτική δομή για από μέχρι... 228 Βρόχοι - Εμφωλευμένοι βρόχοι... 232 Υπολογισμός αθροίσματος, γινομένου, πλήθους και μέσου όρου αριθμών... 236 Ερωτήσεις και προβλήματα για απάντηση... 239 12. Βασικές μεθοδολογίες χρήσης των επαναληπτικών δομών...261 Ασκήσεις κατανόησης της δομής για από μέχρι... 263 Ασκήσεις κατανόησης της δομής όσο επανάλαβε... 268 Ασκήσεις κατανόησης της δομής μέχρις_ότου... 273 Εφαρμογή των επαναληπτικών δομών στον έλεγχο εγκυρότητας - ορθότητας τιμών εισόδου... 276 Εφαρμογή των επαναληπτικών δομών στην εύρεση του μέγιστου και του ελάχιστου αριθμού... 280 Ερωτήσεις και προβλήματα για απάντηση... 283 13. Εφαρμογές των επαναληπτικών δομών σε μαθηματικά προβλήματα...291 Μαθηματικά προβλήματα υπολογισμού αθροίσματος και γινομένου διαδοχικών αριθμών... 291 Διάφορα άλλα μαθηματικά προβλήματα... 300 Ερωτήσεις και προβλήματα για απάντηση... 309 14. Εφαρμογή των επαναληπτικών δομών σε προβλήματα γενικής φύσης...317 Ερωτήσεις και προβλήματα για απάντηση... 334 15. Μετατροπές από μια δομή επανάληψης σε άλλη ισοδύναμή της...347 Μετατροπή της επαναληπτικής δομής για από μέχρι στη δομή όσο επανάλαβε... 347 Μετατροπή της επαναληπτικής δομής όσο επανάλαβε στη δομή για από μέχρι... 349 Μετατροπή της επαναληπτικής δομής μέχρις_ότου στη δομή όσο επανάλαβε... 354 Μετατροπή της επαναληπτικής δομής όσο επανάλαβε στη δομή μέχρις_ότου... 357 Μετατροπή της επαναληπτικής δομής για από μέχρι στη δομή μέχρις_ότου... 359 Μετατροπή της επαναληπτικής δομής μέχρις_ότου στη δομή για από μέχρι... 360 Ερωτήσεις και προβλήματα για απάντηση... 363 16. Διαγράμματα ροής και φυσική γλώσσα κατά βήματα στις επαναληπτικές δομές...371 Μετατροπή αλγόριθμου από ψευδοκώδικα σε ισοδύναμο με χρήση διαγράμματος ροής... 371 Μετατροπή αλγόριθμου από μορφή με χρήση διαγράμματος ροής σε ψευδοκώδικα... 381 Μετατροπή αλγόριθμου από φυσική γλώσσα κατά βήματα σε ψευδογλώσσα... 386 Ερωτήσεις και προβλήματα για απάντηση... 389 Απαντήσεις...403
Ανάλυση προβλήµατος
Η έννοια του προβλήµατος 1.1 Τι εννοούμε με τον όρο πρόβλημα; Με τον όρο πρόβλημα εννοούμε μία κατάσταση η οποία χρήζει αντιμετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή ούτε προφανής. 1.2 Τι ονομάζουμε επίλυση ενός προβλήματος; Η επίλυση ενός προβλήματος είναι η διαδικασία μέσω της οποίας βρίσκουμε το ζητούμενο, δηλαδή το σημείο στο οποίο πρέπει να φτάσουμε για να βγούμε από την «προβληματική» κατάσταση στην οποία βρισκόμαστε. Κατανόηση προβλήµατος 1.3 Από ποιους παράγοντες επηρεάζεται η κατανόηση ενός προβλήματος; Η κατανόηση ενός προβλήματος αποτελεί συνάρτηση δύο παραγόντων, της σωστής διατύπωσης εκ μέρους του δημιουργού του και της αντίστοιχα σωστής ερμηνείας από τη μεριά εκείνου που καλείται να το αντιμετωπίσει. Όσον αφορά τη διατύπωση, η άστοχη χρήση ορολογίας και η λανθασμένη σύνταξη είναι δύο στοιχεία που μπορούν να προκαλέσουν παρερμηνείες και παραπλανήσεις. Όσον αφορά τη σωστή ερμηνεία, σημαντικό ρόλο παίζει το επίπεδο της γνώσης και της αντίληψης του λύτη, το οποίο καθορίζεται από τις γενικές και τις ειδικές γνώσεις του πάνω στο αντικείμενο του προβλήματος, καθώς επίσης η εμπειρία, το ενδιαφέρον και η ευφυΐα του. 11
Η παρερμηνεία είναι δυνατή ακόμα και σε περιπτώσεις όπου οι λεξικολογικοί και οι συντακτικοί κανόνες τηρούνται με ευλάβεια. Για παράδειγμα, αν πούμε την πρόταση «Η Πάτρα είναι ωραία», κάποιος μπορεί να θεωρήσει ότι η Πάτρα είναι ωραία πόλη, ενώ κάποιος άλλος μπορεί να θεωρήσει ότι η κοπέλα με όνομα Πάτρα είναι όμορφη. 1.4 Τι εννοούμε με τους όρους «δεδομένα», «επεξεργασία δεδομένων» και «πληροφορία»; Δεδομένα είναι οποιαδήποτε στοιχεία μπορούν να γίνουν αντιληπτά από έναν παρατηρητή με μία από τις πέντε αισθήσεις του. Τα δεδομένα είναι τα στοιχεία πάνω στα οποία μπορούμε να στηριχτούμε για να λύσουμε ένα πρόβλημα. Επεξεργασία δεδομένων είναι η διαδικασία κατά την οποία ένας «μηχανισμός» δέχεται δεδομένα, τα επεξεργάζεται σύμφωνα με έναν προκαθορισμένο τρόπο και αποδίδει πληροφορίες. Πληροφορία αποτελεί οποιοδήποτε γνωσιακό στοιχείο προέρχεται από επεξεργασία δεδομένων. οµή προβλήµατος 1.5 Τι εννοούμε με τον όρο «δομή ενός προβλήματος»; Με τον όρο δομή ενός προβλήματος αναφερόμαστε στα συστατικά μέρη του προβλήματος, στα επιμέρους τμήματα που το αποτελούν, καθώς επίσης και στον τρόπο που αυτά τα μέρη συνδέονται μεταξύ τους. 1.6 Με ποιους τρόπους ελαττώνεται η δυσκολία αντιμετώπισης προβλημάτων; Η δυσκολία αντιμετώπισης των προβλημάτων ελαττώνεται όσο προχωράει η ανάλυση των προβλημάτων σε απλούστερα προβλήματα. Ο κατακερματισμός ενός προβλήματος σε απλούστερα είναι μια από τις διαδικασίες που ενεργοποιούν και οξύνουν τόσο τη σκέψη, αλλά κυρίως την αναλυτική ικανότητα του ατόμου. 12 ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ
1.7 Με ποιους τρόπους μπορούμε να αναπαραστήσουμε την ανάλυση ενός προβλήματος; Φραστικά: Περιγράφουμε με λόγια πώς και σε ποια επιμέρους προβλήματα αναλύεται το κυρίως πρόβλημα καθώς και τα υποπροβλήματα που προκύπτουν. Με διαγραμματική αναπαράσταση: Η περιγραφή γίνεται με ένα διάγραμμα σε σχήμα γενεαλογικού δένδρου, στο οποίο κάθε πρόβλημα έχει «παιδιά» τα υποπροβλήματα στα οποία αναλύεται. Σύμφωνα με αυτή: Το αρχικό πρόβλημα αναπαρίσταται από ορθογώνιο παραλληλόγραμμο. Κάθε ένα από τα απλούστερα προβλήματα στα οποία αναλύεται ένα οποιαδήποτε πρόβλημα αναπαρίσταται επίσης από ένα ορθογώνιο παραλληλόγραμμο. Τα παραλληλόγραμμα που αντιστοιχούν στα απλούστερα προβλήματα στα οποία αναλύεται ένα οποιαδήποτε πρόβλημα σχηματίζονται ένα επίπεδο χαμηλότερα. Έτσι σε κάθε κατώτερο επίπεδο δημιουργείται η γραφική αναπαράσταση των προβλημάτων στα οποία αναλύονται τα προβλήματα του αμέσως ψηλότερου επιπέδου. 1.8 Τι προσφέρει η διαγραμματική αναπαράσταση στη λύση ενός προβλήματος; Να δοθεί η γενική μορφή της διαγραμματικής αναπαράστασης ενός προβλήματος. Η διαγραμματική αναπαράσταση προσφέρει μια απτή απεικόνιση της δομής του προβλήματος. Η δημιουργία του σχετικού διαγράμματος βοηθάει τόσο στην καλύτερη κατανόηση του ίδιου του προβλήματος όσο και στη σχεδίαση της λύσης του. Στο παρακάτω σχήμα βλέπουμε τη γενική διαγραμματική αναπαράσταση ενός προβλήματος που αναλύεται σε δύο επίπεδα επιμέρους προβλημάτων (υποπροβλήματα). 13
1.9 Ένα σχολείο, στα πλαίσια μιας περιβαλλοντικής πενταήμερης εκδρομής, θα προβεί σε αναδάσωση ενός καμένου τμήματος γης. Να αναλυθεί το πρόβλημα σε επιμέρους προβλήματα τριών επιπέδων, τόσο φραστικά όσο και διαγραμματικά. Φραστική περιγραφή: Το πρόβλημα της αναδάσωσης μπορεί να χωριστεί σε τρία επιμέρους προβλήματα: 1. Εκπαίδευση μαθητών. 2. Αγορά δέντρων. 3. Μετακίνηση και διαμονή μαθητών. Αυτά τα τρία προβλήματα μπορούν με τη σειρά τους να αναλυθούν σε επιμέρους προβλήματα ως εξής: 1. Εκπαίδευση μαθητών: 1.1. Ποιες διδακτικές ώρες θα γίνει η διδασκαλία των μαθητών. 1.2. Τι βιβλία θα χρησιμοποιήσουν οι μαθητές για την εκπαίδευσή τους. 1.3. Ποιοι καθηγητές θα ενημερώσουν τους μαθητές για την αναδάσωση. 2. Αγορά δέντρων: 2.1. Έρευνα για το τι δέντρα ευδοκιμούν στην περιοχή. 2.2. Ποιοι θα χορηγήσουν τη χρηματοδότηση της αναδάσωσης. 3. Μετακίνηση και διαμονή μαθητών: 3.1. Ποια είναι η κατάλληλη ημερομηνία για την αναδάσωση. 3.2. Με ποιο τρόπο θα γίνει η μετακίνηση των μαθητών. 3.3. Πού θα διανυκτερεύσουν οι μαθητές. 3.4. Πόσα θα είναι τα διαθέσιμα χρήματα για τη μετακίνηση και τη διαμονή των μαθητών. Διαγραμματική αναπαράσταση: Η διαγραμματική αναπαράσταση της ανάλυσης που κάναμε για την αναδάσωση είναι η ακόλουθη: 14 ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ
Καθορισµός απαιτήσεων 1.10 Τι περιλαμβάνει ο καθορισμός των απαιτήσεων ενός προβλήματος; Ο καθορισμός των απαιτήσεων περιλαμβάνει τον επακριβή προσδιορισμό των δεδομένων που παρέχει το πρόβλημα καθώς και τη λεπτομερειακή καταγραφή των ζητούμενων που αναμένονται ως αποτελέσματα της επίλυσης του προβλήματος. Η αποσαφήνιση των δεδομένων και των ζητούμενων του προβλήματος συχνά απαιτεί μια σειρά διευκρινιστικών ερωτήσεων οι οποίες μπορεί να απευθύνονται είτε στον δημιουργό του προβλήματος είτε ακόμα και στον ίδιο μας τον εαυτό, αν εμείς καλούμαστε να αντιμετωπίσουμε το πρόβλημα. 1.11 Ποια είναι τα στάδια αντιμετώπισης ενός προβλήματος; Τα στάδια αντιμετώπισης ενός προβλήματος είναι τρία: Κατανόηση. Απαιτείται η σωστή και πλήρης αποσαφήνιση των δεδομένων και των ζητούμενων του προβλήματος. Ανάλυση. Ανάλυση είναι η διαδοχική τμηματοποίηση ενός προβλήματος σε άλλα απλούστερα προβλήματα, μέχρις ότου τα επιμέρους προβλήματα που θα προκύψουν να είναι εύκολο να επιλυθούν. Επίλυση. Η λύση του προβλήματος υλοποιείται μέσω της επίλυσης και της σύνθεσης των επιμέρους προβλημάτων. Κατηγορίες προβληµάτων 1.12 Σύμφωνα με ποιους παράγοντες μπορούμε να κατηγοριοποιήσουμε τα προβλήματα; Τα διάφορα προβλήματα μπορούμε να τα κατηγοριοποιήσουμε σύμφωνα με: τη δυνατότητα επίλυσής τους, τον βαθμό δόμησης των λύσεών τους, το είδος της επίλυσής τους. 1.13 Ποια είδη προβλημάτων διακρίνουμε με κριτήριο τη δυνατότητα επίλυσής τους; Τα προβλήματα, ως προς την επιλυσιμότητά τους διακρίνονται σε: Επιλύσιμα: Είναι τα προβλήματα των οποίων η λύση είναι ήδη γνωστή και έχει διατυπωθεί. Επίσης ως επιλύσιμα μπορούν να χαρακτηριστούν και τα προβλήματα 15
των οποίων η λύση δεν έχει ακόμα διατυπωθεί, αλλά η συνάφειά τους με άλλα ήδη επιλυμένα μάς επιτρέπει να θεωρούμε ως βέβαιη τη δυνατότητα επίλυσής τους. Παράδειγμα: Η εύρεση της περιμέτρου ενός κύκλου. Ανοικτά: Είναι τα προβλήματα για τα οποία δεν έχει βρεθεί λύση, αλλά παράλληλα δεν έχει αποδειχθεί η μη ύπαρξη λύσης γι αυτά. Ανοικτά θεωρούνται τέλος τα προβλήματα που μπορούν να λυθούν με τη βοήθεια ηλεκτρονικού υπολογιστή αλλά η επίλυσή τους απαιτεί ένα μεγάλο, πρακτικά μη αξιοποιήσιμο χρονικό διάστημα (χρόνια αιώνες). Παράδειγμα: Η απόδειξη της ύπαρξης εξωγήινων. Άλυτα: Είναι τα προβλήματα για τα οποία έχει αποδειχθεί ότι δεν υπάρχει λύση. Παράδειγμα: Η επίτευξη ταχύτητας μεγαλύτερης της ταχύτητας του φωτός. 1.14 Σε ποιες κατηγορίες διακρίνονται τα επιλύσιμα προβλήματα σύμφωνα με τον βαθμό δόμησης των λύσεών τους; Δομημένα: Στα δομημένα προβλήματα η διαδικασία επίλυσης είναι αυτοματοποιημένη και δεν υπάρχει δυνατότητα επιλογής μέσα από ένα πλήθος εναλλακτικών λύσεων. Παράδειγμα: Ο υπολογισμός του εμβαδού ενός κύκλου. Ημιδομημένα: Ημιδομημένα χαρακτηρίζονται τα προβλήματα εκείνα των οποίων η λύση μπορεί να επιλεγεί ανάμεσα από ένα εύρος δυνατών λύσεων. Παράδειγμα: Ποιον μήνα κάποιος θα φύγει κάποιος για διακοπές. (Εύρεση μίας ανάμεσα σε 12 πιθανές λύσεις.) Αδόμητα: Αδόμητα χαρακτηρίζονται τα προβλήματα εκείνα των οποίων οι λύσεις δεν μπορούν να δομηθούν ή δεν έχει διερευνηθεί σε βάθος η δυνατότητα δόμησής τους. Πρωτεύοντα ρόλο στην επίλυση αυτού του τύπου προβλημάτων αποτελεί η ανθρώπινη αίσθηση. Παράδειγμα: Σε ποιον τόπο θα πάει κάποιος διακοπές. 1.15 Σε ποιες κατηγορίες διακρίνονται τα προβλήματα με κριτήριο το είδος της επίλυσης που επιζητούν; Απόφασης: Είναι τα προβλήματα των οποίων η απόφαση που πρόκειται να ληφθεί ως λύση απαντά σε ένα ερώτημα και πιθανόν αυτή η απάντηση να είναι «Ναι» ή «Όχι», «Είναι» ή «Δεν είναι» κ.λπ. Παράδειγμα: Η ερώτηση «Σε λένε Μαρία;». Υπολογιστικά: Είναι τα προβλήματα των οποίων η απάντηση απαιτεί τη διενέργεια υπολογισμών. Με άλλα λόγια σε ένα υπολογιστικό πρόβλημα ζητάμε να βρούμε την τιμή της απάντησης που ικανοποιεί τα δεδομένα που έχουμε για το πρόβλημα. 16 ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ
Παράδειγμα: Δίνεται η ακτίνα R ενός κύκλου και ζητείται να βρεθεί το εμβαδόν του κύκλου. Βελτιστοποίησης: Είναι τα προβλήματα των οποίων η λύση πρέπει να είναι το βέλτιστο αποτέλεσμα για τα συγκεκριμένα δεδομένα που διαθέτουμε. Με άλλα λόγια δεν αναζητούμε μια οποιαδήποτε λύση, αλλά τη λύση εκείνη που ικανοποιεί με τον καλύτερο τρόπο τα δεδομένα που παρέχει το πρόβλημα. Παράδειγμα: Να βρεθεί το κλάσμα του οποίου ο αριθμητής και ο παρανομαστής είναι ακέραιοι και μικρότεροι ή ίσοι του 100 και το οποίο προσεγγίζει τον αριθμό π = 3,1416 με τον καλύτερο τρόπο. Πρόβληµα και υπολογιστής 1.16 Ποιοι είναι οι λόγοι για τους οποίους αναθέτουμε την επίλυση ενός προβλήματος σε υπολογιστή; Οι λόγοι για τους οποίους αναθέτουμε την επίλυση ενός προβλήματος σε υπολογιστή σχετίζονται με: την πολυπλοκότητα των υπολογισμών, την επαναληπτικότητα των διαδικασιών, την ταχύτητα εκτέλεσης των πράξεων, το μεγάλο πλήθος δεδομένων. 1.17 Ποιες είναι οι βασικές λειτουργίες που μπορεί να εκτελεί ένας υπολογιστής; Οι βασικές λειτουργίες ενός υπολογιστή είναι τρεις: Πρόσθεση, η οποία αποτελεί τη βασική αριθμητική πράξη, δεδομένου ότι και οι άλλες αριθμητικές πράξεις μπορούν να αντιμετωπιστούν ως διαδικασίες πρόσθεσης. Σύγκριση, η οποία συνιστά τη βασική λειτουργία για την εκτέλεση όλων των λογικών πράξεων. Μεταφορά δεδομένων, λειτουργία που προηγείται και έπεται της επεξεργασίας δεδομένων. 17
1.18 Ερωτήσεις ανάπτυξης 1. Τι εννοούμε με τον όρο πρόβλημα; 2. Τι ονομάζουμε επίλυση ενός προβλήματος; 3. Από ποιους παράγοντες επηρεάζεται η κατανόηση ενός προβλήματος; 4. Τι εννοούμε με τους όρους «δεδομένα», «επεξεργασία δεδομένων» και «πληροφορία»; 5. Τι εννοούμε με τον όρο «δομή ενός προβλήματος»; 6. Με ποιους τρόπους ελαττώνεται η δυσκολία αντιμετώπισης προβλημάτων; 7. Με ποιους τρόπους μπορούμε να αναπαραστήσουμε την ανάλυση ενός προβλήματος; 8. Τι προσφέρει η διαγραμματική αναπαράσταση στη λύση ενός προβλήματος; Να δώσετε τη γενική μορφή της διαγραμματικής αναπαράστασης ενός προβλήματος. 9. Τι περιλαμβάνει ο καθορισμός των απαιτήσεων ενός προβλήματος; 10. Ποια είναι τα στάδια αντιμετώπισης ενός προβλήματος; 11. Σύμφωνα με ποιους παράγοντες μπορούμε να κατηγοριοποιήσουμε τα προβλήματα; 12. Ποια είδη προβλημάτων διακρίνουμε με κριτήριο τη δυνατότητα επίλυσής τους; Να δώσετε ένα παράδειγμα για κάθε είδος. 13. Σε ποιες κατηγορίες διακρίνονται τα επιλύσιμα προβλήματα σύμφωνα με τον βαθμό δόμησης των λύσεών τους; Να δώσετε ένα παράδειγμα για κάθε κατηγορία. 14. Σε ποιες κατηγορίες διακρίνονται τα προβλήματα με κριτήριο το είδος της επίλυσης που επιζητούν; Να δώσετε ένα παράδειγμα για κάθε κατηγορία. 15. Ποιοι είναι οι λόγοι για τους οποίους αναθέτουμε την επίλυση ενός προβλήματος σε υπολογιστή; 16. Ποιες είναι οι βασικές λειτουργίες που μπορεί να εκτελεί ένας υπολογιστής; 1.19 Να χαρακτηρίσετε ως σωστή (Σ) ή λάθος (Λ) καθεμία από τις παρακάτω προτάσεις. 1. Πρόβλημα εννοείται μια κατάσταση η οποία χρήζει αντιμετώπισης. 2. Ο καθορισμός των απαντήσεων έχει άμεση σχέση με την κατανόηση του προβλήματος. 3. Το ζητούμενο στα προβλήματα είναι κάποιος αριθμός. 18 ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ
4. Πρόβλημα είναι μια οποιαδήποτε κατάσταση που πρέπει να αντιμετωπίσουμε. 5. H ύπαρξη προβλημάτων αποτελεί χαρακτηριστικό γνώρισμα μόνο της εποχής μας. 6. Η κατανόηση ενός προβλήματος εξαρτάται αποκλειστικά από τη φύση του προβλήματος. 7. Ο καθορισμός των απαιτήσεων ενός προβλήματος κάνει το ίδιο το πρόβλημα πιο εύκολα επιλύσιμο. 8. Συνηθέστερο μέσο για να διατυπωθεί ένα πρόβλημα είναι ο λόγος, είτε ο προφορικός είτε ο γραπτός. 9. Η άστοχη χρήση ορολογίας και η λανθασμένη σύνταξη είναι δύο στοιχεία που κάνουν τον λόγο μας να χαρακτηρίζεται από ασάφεια. 10. Η κατανόηση ενός προβλήματος αφορά μόνο τη διατύπωσή του. 1.20 Να χαρακτηρίσετε ως σωστή (Σ) ή λάθος (Λ) καθεμία από τις παρακάτω προτάσεις. 1. Η παρερμηνεία είναι δυνατή ακόμα και σε περιπτώσεις όπου οι λεξικολογικοί και οι συντακτικοί κανόνες τηρούνται με ευλάβεια. 2. Η πρόταση «η απόσταση 1000 είναι πολύ μεγάλη απόσταση για ένα αυτοκίνητο» έχει πρόβλημα σαφήνειας. 3. Όσο πιο σαφές είναι ένα πρόβλημα στη διατύπωσή του τόσο πιο εύκολο είναι στην επίλυσή του. 4. Για την παραγωγή πληροφοριών απαιτούνται δεδομένα. 5. Ο ανθρώπινος εγκέφαλος είναι ένας μηχανισμός επεξεργασίας δεδομένων. 6. Τα δεδομένα και η πληροφορία προηγούνται της επεξεργασίας δεδομένων. 7. Η πληροφορία είναι το στοιχείο πάνω στο οποίο μπορούμε να στηριχτούμε για να λύσουμε ένα πρόβλημα. 8. Η επεξεργασία δεδομένων παράγει πληροφορία. 9. Αέρας 12 μποφόρ είναι δεδομένο και ο τυφώνας είναι πληροφορία. 10. Σημαντικός παράγοντας στη σωστή αντιμετώπιση ενός προβλήματος είναι η αποσαφήνιση του χώρου στον οποίο αναφέρεται. 1.21 Να χαρακτηρίσετε ως σωστή (Σ) ή λάθος (Λ) καθεμία από τις παρακάτω προτάσεις. 1. Η δομή ενός προβλήματος εξαρτάται στην ουσία από το είδος της επίλυσης που επιζητεί το ίδιο το πρόβλημα. 19
2. Η παρουσίαση της ανάλυσης ενός προβλήματος γίνεται με δύο τρόπους. Με τη σχηματική περιγραφή της ανάλυσης και με διάγραμμα σε μορφή γενεαλογικού δένδρου. 3. Τα επιμέρους προβλήματα ενός αρχικού προβλήματος είναι δυνατό να αναλυθούν και σε άλλα απλούστερα υποπροβλήματα. 4. Η διαγραμματική αναπαράσταση της ανάλυσης ενός προβλήματος βοηθάει τη σχεδίαση της λύσης του ίδιου του προβλήματος. 5. Το αρχικό πρόβλημα στη διαγραμματική αναπαράσταση αναπαρίσταται με μια έλλειψη. 6. Ο καθορισμός απαιτήσεων έχει να κάνει με τα δεδομένα και τις πληροφορίες ενός προβλήματος. 7. Η καταγραφή της δομής ενός προβλήματος σημαίνει αυτόματα ότι έχει αρχίσει η διαδικασία ανάλυσης του προβλήματος σε άλλα απλούστερα. (Εξετάσεις 2008) 8. Μεθοδολογία προσδιορισμού των δεδομένων ενός προβλήματος δεν υπάρχει. 9. Τα στάδια αντιμετώπισης ενός προβλήματος είναι η ανάλυση, η επίλυση και η κατανόησή του. 10. Κατά την ανάλυση ενός προβλήματος το αρχικό πρόβλημα διασπάται σε άλλα απλούστερα επιμέρους προβλήματα. 1.22 Να χαρακτηρίσετε ως σωστή (Σ) ή λάθος (Λ) καθεμία από τις παρακάτω προτάσεις. 1. Ανοικτό ονομάζεται ένα πρόβλημα όταν μπορεί να λυθεί με περισσότερους από έναν τρόπους. 2. Υπάρχουν επιλύσιμα προβλήματα που δεν μπορούν να λυθούν με ηλεκτρονικό υπολογιστή. 3. Όλα τα προβλήματα που μπορούν να λυθούν με ηλεκτρονικό υπολογιστή είναι επιλύσιμα. 4. Αδόμητα ονομάζονται τα προβλήματα των οποίων η διαδικασία επίλυσης δεν είναι αυτοματοποιημένη επειδή οι δυνατές λύσεις είναι πρακτικά απεριόριστες. 5. Ημιδομημένα χαρακτηρίζονται τα προβλήματα των οποίων τα δεδομένα επιλέγονται μέσα από ένα περιορισμένο σύνολο τιμών. 6. Ανοικτό ονομάζεται ένα πρόβλημα που μπορεί εύκολα να παρεξηγηθεί αν το γνωστικό επίπεδο του λύτη είναι χαμηλό. 7. Άλυτο είναι το πρόβλημα για το οποίο δεν έχει βρεθεί λύση. 8. Απόφασης είναι και τα προβλήματα που μπορούμε να απαντήσουμε με το «υπάρχει» ή «δεν υπάρχει». 20 ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ
9. Στα προβλήματα βελτιστοποίησης αναζητούμε την απάντηση που ικανοποιεί κατά τον καλύτερο τρόπο τα δεδομένα που παρέχει το πρόβλημα. 10. Τα ανοικτά προβλήματα είναι σίγουρα και δομημένα. 1.23 Να χαρακτηρίσετε ως σωστή (Σ) ή λάθος (Λ) καθεμία από τις παρακάτω προτάσεις. 1. Κανένα υπολογιστικό πρόβλημα δεν λύνεται με τη βοήθεια υπολογιστή. 2. Οι βασικές λειτουργίες που εκτελεί ένας Η/Υ είναι η πρόσθεση, ο πολλαπλασιασμός και η σύγκριση. 3. Η σύγκριση λειτουργιών ανθρώπου και υπολογιστή επιφέρει μια τεράστια ποιοτική διαφορά υπέρ του ανθρώπου. 4. Ένας λόγος που αναθέτουμε την επίλυση ενός προβλήματος σε υπολογιστή είναι η επαναληπτικότητα των διαδικασιών. 5. Όλα τα προβλήματα λύνονται με τη βοήθεια υπολογιστή. 6. Το μεγάλο πλήθος δεδομένων κάνει απαγορευτική τη χρήση υπολογιστή. 7. Η ταχύτητα εκτέλεσης των πράξεων είναι βασικός λόγος της χρήσης υπολογιστή. 8. Η σύγκριση είναι μια λειτουργία του υπολογιστή για να μπορεί να κάνει αριθμητικές πράξεις. 9. Η λειτουργία που προηγείται και έπεται της επεξεργασίας δεδομένων είναι η μεταφορά δεδομένων. 10. Ένα σημείο στο οποίο υπερτερεί ο Η/Υ από τον άνθρωπο είναι η ταχύτητα εκτέλεσης των αριθμητικών πράξεων. 11. Η μεταφορά δεδομένων είναι μία από τις βασικές λειτουργίες που εκτελεί ο υπολογιστής. (Εξετάσεις 2008) 1.24 Να συνδέσετε τα στοιχεία της στήλης Α με τα στοιχεία που ταιριάζουν στη στήλη Β. Στήλη Α Στήλη Β 1. Εύστοχη χρήση ορολογίας α. Σαφήνεια διατύπωσης προβλήματος 2. Τήρηση λεξικολογικών και συντακτικών κανόνων β. Καθορισμός απαιτήσεων 3. Επακριβής προσδιορισμός δεδομένων 4. Λεπτομερειακή καταγραφή ζητουμένων (Εξετάσεις 2008) 21
1.25 Να συνδέσετε τα στοιχεία της στήλης Α με τα στοιχεία που ταιριάζουν στη στήλη Β. Στήλη Α (Προβλήματα) 1. Η διαδικασία λύσης τους είναι αυτοματοποιημένη. 2. Δεν έχει βρεθεί λύση, αλλά δεν έχει αποδειχθεί και η μη ύπαρξη λύσης. 3. Ο τρόπος λύσης τους μπορεί να επιλεγεί από πλήθος δυνατών λύσεων. Στήλη Β (Είδος προβλημάτων) α. Ανοικτά β. Δομημένα γ. Άλυτα δ. Ημιδομημένα (Εξετάσεις 2000) 1.26 Να συνδέσετε τα στοιχεία της στήλης Α με τα στοιχεία που ταιριάζουν στη στήλη Β. Στήλη Α (Προβλήματα) 1. Δίνονται οι συντελεστές μιας δευτεροβάθμιας εξίσωσης και ζητούνται οι ρίζες της. 2. Δίνεται ένας ακέραιος αριθμός Ν και ζητείται ποια είναι η παραγοντοποίησή του με το μεγαλύτερο πλήθος παραγόντων. Στήλη Β (Είδος προβλημάτων) α. Απόφασης β. Υπολογιστικά 3. Πήρε φέτος η ΑΕΚ το πρωτάθλημα; γ. Βελτιστοποίησης 4. Υπάρχουν χρήματα για να πάμε διακοπές; 1.27 Να συνδέσετε τα στοιχεία της στήλης Α με τα στοιχεία που ταιριάζουν στη στήλη Β. Στήλη Α (Προβλήματα) Στήλη Β (Είδος προβλημάτων) 1. Ποια σχολή θα δηλώσω στο μηχανογραφικό; α. Δομημένα 2. Υπολογισμός της περιμέτρου ενός κύκλου. β. Ημιδομημένα 3. Τι καιρό θα κάνει έπειτα από ένα μήνα; γ. Αδόμητα 4. Με τι μεταφορικό μέσο θα πάω διακοπές; 22 ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ
1.28 Να συμπληρώσετε τα κενά στις παρακάτω προτάσεις. 1. Η παρουσίαση της ανάλυσης ενός προβλήματος γίνεται με δύο τρόπους. Με τη και τη. 2. Με τον όρο προβλήματος αναφερόμαστε στα συστατικά μέρη που το αποτελούν. 3. ονομάζεται το πρόβλημα εκείνο για το οποίο δεν έχει βρεθεί λύση χωρίς όμως να έχει αποδειχθεί και η μη ύπαρξη λύσης γι αυτό. 4. ονομάζονται τα προβλήματα στα οποία δεν υπάρχει δυνατότητα επιλογής μέσα από ένα πλήθος εναλλακτικών λύσεων. 5. Η είναι το αποτέλεσμα της επεξεργασίας δεδομένων. 6. χαρακτηρίζονται τα προβλήματα εκείνα των οποίων οι λύσεις δεν μπορούν να δομηθούν ή δεν έχει διερευνηθεί σε βάθος η δυνατότητα δόμησής τους. 7. Η επίλυση ενός προβλήματος ξεκινά από την του. 8. Για να μπορέσουμε να επιλύσουμε ένα πρόβλημα θα πρέπει να γίνει ο καθορισμός των. 9. Οι βασικές λειτουργίες που εκτελεί ένας υπολογιστής είναι οι εξής:, και. 10. Οποιοδήποτε στοιχείο μπορεί να γίνει αντιληπτό με μία από τις πέντε αισθήσεις λέγεται. 1.29 Δίνεται το παρακάτω τμήμα κειμένου: Οι λόγοι που αναθέτουμε την επίλυση ενός προβλήματος σε υπολογιστή σχετίζονται με: την 1 των υπολογισμών. την 2 των διαδικασιών. την ταχύτητα εκτέλεσης των 3. το μεγάλο πλήθος των 4. Δίνονται οι παρακάτω λέξεις: α. πολυπλοκότητα β. δεδομένων γ. ζητουμένων δ. αληθοφάνεια ε. πράξεων στ. επαναληπτικότητα 23
Να γράψετε τους αριθμούς 1, 2, 3, 4, που βρίσκονται στα κενά διαστήματα και δίπλα να γράψετε το γράμμα α, β, γ, δ, ε, στ, που αντιστοιχεί στη σωστή λέξη. Δύο λέξεις δεν χρησιμοποιούνται. (Εξετάσεις 2008) 1.30 Στα πλαίσια των δραστηριοτήτων ενός σχολείου, μια ομάδα μαθητών υπό την επίβλεψη του καθηγητή τους θα πρέπει να κατασκευάσει την ιστοσελίδα του σχολείου τους. Να αναλύσετε το πρόβλημα σε επιμέρους προβλήματα τριών επιπέδων, τόσο φραστικά όσο και διαγραμματικά. 1.31 Ο σκηνοθέτης της θεατρικής ομάδας του Δήμου Παλλήνης πρέπει να επιλέξει τη θεατρική παράσταση που θα «ανεβάσει» η ομάδα του. Να αναλύσετε το πρόβλημα σε επιμέρους προβλήματα τριών επιπέδων, τόσο φραστικά όσο και διαγραμματικά. 24 ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ