Πληροφορική · Γ΄ Γυμνασίου — Ενότητα 1
Πρόβλημα είναι κάθε ζήτημα που τίθεται προς επίλυση, κάθε κατάσταση που μας απασχολεί και πρέπει να αντιμετωπιστεί. Η λύση ενός προβλήματος δεν μας είναι ούτε γνωστή, ούτε προφανής από την αρχή.
Δεν είναι όλα τα προβλήματα ίδια — ξεχωρίζουμε τρία είδη:
Υπολογιστικά
Λύνονται με σειρά λογικών βημάτων και μαθηματικών πράξεων.π.χ. το εμβαδόν ενός τετραγώνου.
Άλυτα
Έχει αποδειχθεί ότι δεν μπορούν να λυθούν.π.χ. ο τετραγωνισμός του κύκλου.
Ανοικτά
Δεν έχουν λυθεί ακόμη με τις σημερινές μας γνώσεις.π.χ. η ακριβής πρόβλεψη σεισμών.
Σε κάθε πρόβλημα ξεχωρίζουμε δύο βασικά στοιχεία
Η διαδικασία με την οποία βρίσκουμε το ζητούμενο και φτάνουμε στον επιθυμητό στόχο ονομάζεται επίλυση του προβλήματος.
Πρόσεξε! Τα δεδομένα δεν αρκούν πάντα από μόνα τους
Ένας εργάτης χτίζει 1 μέτρο τοίχο σε 2 ώρες. Σε πόσο χρόνο θα χτίσει 11 μέτρα, αν δουλέψει μόνος του; Η απάντηση «22 ώρες» φαίνεται λογική με μια πρώτη ματιά, όμως ξεχνάμε ότι ένας άνθρωπος δεν μπορεί να δουλεύει 22 ώρες συνεχόμενα! Γι' αυτό, πριν λύσουμε ένα πρόβλημα, πρέπει πρώτα να το κατανοήσουμε πραγματικά.
Για να λύσουμε ένα πρόβλημα ακολουθούμε τρία βήματα, με αυτή τη σειρά:
1. Κατανόηση
Καταλαβαίνουμε καλά το περιεχόμενο του προβλήματος. Εδώ εντάσσονται:2. Ανάλυση
Χωρίζουμε ένα σύνθετο πρόβλημα σε απλούστερα, μικρότερα προβλήματα, ώστε να μπορούμε να τα αντιμετωπίσουμε το καθένα ξεχωριστά.3. Επίλυση
Αντιμετωπίζουμε κάθε απλούστερο πρόβλημα ξεχωριστά, και έτσι καταλήγουμε στη λύση ολόκληρου του αρχικού προβλήματος.Παράδειγμα ανάλυσης: «Οργάνωση Εκπαιδευτικής Εκδρομής» — ένα φαινομενικά απλό πρόβλημα, που στην πραγματικότητα είναι σύνθετο.
Ορισμός
Αλγόριθμος ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών – βημάτων, με σκοπό την επίλυση ενός προβλήματος.
Αλγόριθμος μπορεί να είναι μια συνταγή μαγειρικής, η βήμα‑προς‑βήμα περιγραφή της λύσης ενός μαθηματικού προβλήματος, ή οι οδηγίες κατασκευής ενός χαρταετού. Αυτός που ακολουθεί τις οδηγίες και «υλοποιεί» τον αλγόριθμο ονομάζεται εκτελεστής — μπορεί να είναι είτε ένας άνθρωπος, είτε ένας υπολογιστής.
Για να είναι σωστός, ένας αλγόριθμος πρέπει να πληροί τρεις βασικές προϋποθέσεις:
Τερματισμός
Ο αλγόριθμος πρέπει κάποια στιγμή να τελειώνει, έχοντας πετύχει τον αρχικό του σκοπό.π.χ. «επανάλαβε 10 φορές [σχεδίασε πέταλο]» είναι αλγόριθμος — «επανάλαβε συνεχώς» όχι, γιατί δεν σταματάει ποτέ.
Σαφήνεια & Ακρίβεια
Κάθε εντολή πρέπει να είναι σαφής και ακριβής, διατυπωμένη με απλά λόγια, ώστε να μην μπερδεύεται όποιος την εκτελεί.π.χ. «ρίξε μία κουταλιά του καφέ αλάτι» — όχι απλώς «ρίξε λίγο αλάτι».
Αποτέλεσμα
Αν ακολουθηθούν οι οδηγίες του, ο αλγόριθμος πρέπει να καταλήγει σε ένα αποτέλεσμα, ένα έργο.π.χ. ακολουθώντας μια συνταγή, παράγουμε το επιθυμητό φαγητό.
Σύνοψη — Η «αλυσίδα» της σκέψης μας
Ένας σωστός αλγόριθμος πρέπει πάντα να τερματίζει, να έχει σαφήνεια & ακρίβεια, και να παράγει ένα αποτέλεσμα.