Μάθημα : Πληροφορική Α΄ τάξης Γυμνασίου

Κωδικός : G1173300

G1173300  -  ΕΥΣΤΑΘΙΑ ΧΡΙΣΤΟΠΟΥΛΟΥ

Ενότητες - Προγραμματισμός

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

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

Ως πρόβλημα θεωρούμε κάθε ζήτημα που τίθεται προς επίλυση, κάθε κατάσταση που μας απασχολεί και πρέπει να αντιμετωπιστεί.

Η λύση ενός προβλήματος δεν μας είναι γνωστή, ούτε προφανής.

Υπάρχουν προβλήματα  απλά και σύντομα  που βρίσκουμε ευκολά τη λύση τους. Πολλά προβλήματα, όμως, είναι πιο πολύπλοκα και η επίλυσή τους μας δυσκολεύει ιδιαίτερακαθώς είναι  σύνθετα . Υπάρχουν επίσης και άλλες κατηγορίες προβλημάτων που:

  • είτε δεν μπορούμε να τα επιλύσουμε με τις μέχρι τώρα γνώσεις μας, όπως η ακριβής πρόβλεψη των σεισμών, η γήρανση του ανθρώπου, η ανακάλυψη εξωγήινων πολιτισμών και η επικοινωνία μαζί τους,
  • είτε έχει αποδειχθεί ότι δεν μπορούμε να τα επιλύσουμε, όπως: ο τετραγωνισμός του κύκλου με κανόνα και διαβήτη ή το ταξίδι στο παρελθόν.

Τα προβλήματα που καλούμαστε να επιλύσουμε στο σχολείο είναι συνήθως υπολογιστικά και απαιτούν μια σειρά από λογικές σκέψεις και μαθηματικές πράξεις

Τα βήματα που ακολούθούμε γι ανα λύσουμε ένα πρόβλημα είναι τα πάρακάτω:

  1. Εντοπίζουμε τα δεδομένα του προβλήματος ( Δεδομένα προβλήματος είναι τα στοιχεία που μας είναι γνωστά και μπορούν να μας βοηθήσουν στη λύση του προβλήματος)
  2. Εντοπίζουμε τα ζητούμενα του προβλήματος (Αυτό που ψάχνουμε είναι το ζητούμενο)
  3. Προχωράμε στην επίλυση του προβλήματος

Για να επιλύσουμε ένα πρόβλημα πρέπει αρχικά να το κατανοήσουμε. Πρέπει δηλαδή να καταλάβουμε καλά το περιεχόμενο του, να διακρίνουμε τα δεδομένα που έχουμε στη διάθεσή μας και τα ζητούμενά του. Είναι σημαντικό, όμως, να προσδιορίσουμε και το «περιβάλλον» ή το πλαίσιο μέσα στο οποίο εντάσσεται το πρόβλημα

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

Η έννοια του αλγορίθμου

Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών - βημάτων, με σκοπό την επίλυση ενός προβλήματος.

Στη ζωή μας, σε καθημερινή βάση, εκτελούμε δεκάδες απλές ή σύνθετες διαδικασίες που μπορούν να περιγραφούν με αλγόριθμους. Οι διαδικασίες αυτές δεν είναι απαραίτητο να σχετίζονται με ηλεκτρονικούς υπολογιστές. Μερικές τέτοιες διαδικασίες (αλγόριθμοι) είναι οι ακόλουθες:

Ο υπολογισμός του εμβαδού ενός γεωμετρικού σχήματος (π.χ. ενός ορθογωνίου) Εύρεση του μεγαλύτερου ή μικρότερου αριθμού από μία ομάδα αριθμών
Η αποστολή ηλεκτρονικού μηνύματος μέσω του ηλεκτρονικού μας υπολογιστή
 Ο έλεγχος των φώτων της τροχαίας σε μία πόλη.
Η πορεία που ακολουθεί καθημερινά ένας διανομέας εφημερίδων για να διανείμει τις εφημερίδες
Ένα ηλεκτρονικό παιχνίδι με πολλά στάδια

Παράδειγμα Αλγορίθμου για αποστολή ηλεκτρονικού μηνύματος (e-mail )
1. Μπαίνω στην ιστοσελίδα του παροχέα μου.
2. Πληκτρολογώ το User Name μου
3. Πληκτρολογώ το Password μου
4. Επιλέγω «Νέο Μήνυμα»
5. Πληκτρολογώ ή επιλέγω την ηλεκτρονική διεύθυνση του παραλήπτη
6. Γράφω το μήνυμα

7.Πληκτολογώ το θέμα

8. Επιλέγω «Αποστολή»
9. Επιλέγω «Έξοδος»

Τα χαρακτηριστικά ενός αλγορίθμου

Ένας αλγόριθμος δεν αποτελείται από μια οποιαδήποτε σειρά βημάτων ή εντολών αλλά μία σειρά από βήματα ή εντολές σε λογική σειρά

Σαφήνεια και Ακρίβεια : Κάθε βήμα (εντολή) του αλγορίθμου πρέπει να είναι απλό και να είναι διατυπωμένο με σαφήνεια, ώστε να μην υπάρχει αμφιβολία για τον τρόπο με τον οποίο θα εκτελεσθεί

Περατότητα: Κάθε αλγόριθμος πρέπει πάντα να τελειώνει ύστερα από την εκτέλεση ενός αριθμού βημάτων, με άλλα λόγια δεν μπορεί να συνεχίζει την εκτέλεσή του για πάντα.

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

Παραδείγματα αλγορίθμων

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

Δεδομένα 1 πρόβατο, 1 λύκος, 1 καφάσι με χόρτα, μία θέση επιπλέον στη βάρκα, 2 όχθες ποταμού.
Πλαίσιο του προβλήματος: Ο λύκος δεν πρέπει να μείνει μαζί με το πρόβατο. Το πρόβατο δεν πρέπει να μείνει μαζί με τα χόρτα.
Ζητούμενο: Να περάσει ο λύκος, το πρόβατο και το καφάσι με τα χόρτα στην απέναντι όχθη.

 

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

  1. Βάλε το πρόβατο στη βάρκα.
  2. Πήγαινε στην απέναντι όχθη.
  3. Άφησε το πρόβατο στην όχθη.
  4. Γύρνα πίσω στην αρχική όχθη.
  5. Φόρτωσε το καφάσι με τα χόρτα.
  6. Πήγαινε στην απέναντι όχθη.
  7. Άφησε το καφάσι στην όχθη.
  8. Βάλε το πρόβατο στη βάρκα.
  1. Πήγαινε στην αρχική όχθη.
  2. Άφησε το πρόβατο στην όχθη.
  3. Βάλε το λύκο στη βάρκα.
  4. Πήγαινε στην απέναντι όχθη.
  5. Άφησε το λύκο στην όχθη.
  6. Γύρνα πίσω στην αρχική όχθη.
  7. Βάλε το πρόβατο στη βάρκα.
  8. Πήγαινε στην απέναντι όχθη.
  9. Άφησε το πρόβατο στην όχθη.
Τέλος του αλγορίθμου

 

Αλγόριθμος του βαρκάρη (φωτόδεντρο)

Οι πύργοι του Ανόι

Ο Θρύλος: Σε κάποιους Ινδούς μοναχούς δόθηκε η δοκιμασία να μετακινήσουν 64 εύθραυστους δίσκους από μία τοποθεσία σε μια άλλη, έναν κάθε φορά, αποφεύγοντας την τοποθέτηση ενός μεγαλύτερου δίσκου πάνω σε έναν μικρότερο. Υπήρχε μόνο μια ακόμα ενδιάμεση τοποθεσία, πέρα από τις δύο, που ένας δίσκος μπορούσε να τοποθετηθεί.

Το παιχνίδι: Υπάρχει ένα παιχνίδι βασισμένο στο μύθο. Έχετε μια μικρή συλλογή από δίσκους και τρεις πασσάλους πάνω στους οποίους μπορείτε να τους τοποθετήσετε (ο κάθε δίσκος έχει στη μέση μία τρύπα ώστε να τοποθετείται στον πάσσαλο). Οι δίσκοι είναι όλοι τοποθετημένοι στον αριστερό πάσσαλο σε αύξουσα σειρά ανάλογα με το μέγεθός τους. Θα πρέπει να τους μετακινήσεις στο δεξιό πάσσαλο χωρίς ποτέ όμως να βάλεις έναν μεγαλύτερο δίσκο πάνω σε έναν μικρότερο. Καταγράψτε τον κατάλληλο αλγόριθμο που να περιγράφει πώς να μεταφέρετε τους δίσκους από τον αριστερό πάσσαλο στον δεξιό. (Ο ελάχιστος αριθμός βημάτων του αλγορίθμου είναι: 3 βήματα για 2 δίσκους, 7 βήματα για 3 δίσκους, 15 βήματα για 4 δίσκους και 31 βήματα για 5 δίσκους).

 

Ερωτήσεις κατανόησης στους Αλγορίθμους (Αίσωπος)

Τρόποι διατύπωσης αναπαράστασης αλγορίθμων

Έναν αλγόριθμο μπορούμε να τον διατυπώσουμε με τρεις τρόπους: Λεκτική Περιγραφή, Ψευδοκώδικα (pseudocode), και Λογικό Διάγραμμα (flowchart).
1.Λεκτική περιγραφή: Περιγραφή του αλγορίθμου σε βήματα χρησιμοποιώντας λέξεις από την καθημερινή μας ζωή.
2.Ψευδοκώδικας: Πιο αυστηρή διατύπωση του αλγορίθμου κατά την οποία χρησιμοποιούνται καθορισμένες εντολές/λέξεις και συμβολισμοί.
3.Λογικό διάγραμμα: Ένας γραφικός τρόπος παρουσίασης ενός αλγορίθμου, που αποτελείται από σύμβολα με συγκεκριμένη σημασία, που συνδέονται μεταξύ τους με βέλη, που δείχνουν τη ροή της εκτέλεσης

Παράδειγμα : Σε πόσα χρόνια ένας ανήλικος θα δικαιούται να βγάλει δίπλωμα οδήγησης;

Λογικά Διαγράμματα

Τα λογικά διαγράμματα (flowcharts) είναι ένας σχηματικός τρόπος για να αναπαριστούμε τη λύση ενός προβλήματος. Αποτελούνται από ένα σύνολο γεωμετρικών σχημάτων, όπου το καθένα δηλώνει μία συγκεκριμένη ενέργεια. Τα γεωμετρικά σχήματα ενώνονται μεταξύ τους με βέλη, που δηλώνουν τη σειρά εκτέλεσης των ενεργειών αυτών. Τα κυριότερα γεωμετρικά σχήματα που χρησιμοποιούμε είναι τα εξής:

Κατεβάστε το λογισμικό (Δημιουργός Διαγραμματων Ροής) DhmioyrgosDiaggramatwnRohs98_2000_Xp

Πρόγραμμα

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

Η εργασία σύνταξης των προγραμμάτων ονομάζεται προγραμματισμός, ενώ τα άτομα που γράφουν και συντάσσουν ένα πρόγραμμα ονομάζονται προγραμματιστές.

Όλα τα προγράμματα του υπολογιστή αποτελούνται από ένα πλήθος κατάλληλων εντολών, που είναι γραμμένες σε λογική σειρά. Τα παιχνίδια, ο Επεξεργαστής Κειμένου, η Ζωγραφική, το Λειτουργικό Σύστημα αποτελούνται από ένα πλήθος εντολών κατανοητών από τον υπολογιστή. Κάθε φορά που χρειαζόμαστε ένα πρόγραμμα, για να εκτελέσουμε μια λειτουργία ή να επιλύσουμε κάποιο πρόβλημα, ένα σύνολο εντολών αποθηκεύονται («φορτώνονται») στη μνήμη του υπολογιστή, για να εκτελεστούν στη συνέχεια πιστά από την Κεντρική Μονάδα Επεξεργασίας.