Η πληροφορική στην Εκπαίδευση


Η δομή επιλογής
6 Δεκεμβρίου, 2013, 1:21 μμ
από nmpako | Κάτω από: Γενικά

Tμήμα Μηχανικών Η/Υ, Δικτύων και Τηλεπικοινωνιών

Πανεπιστήμιο Θεσσαλίας

Δεκέμβριος 2010

απο το βιβλίο “δημιουργώ παιχνίδια στο scratch”

Ο κόσμος γύρω μας είναι γεμάτος επιλογές οι οποίες εξαρτώνται από διάφορες συνθήκες. Εάν βρέχει, παίρνουμε ομπρέλα. Εάν έχει ήλιο, φοράμε καπέλο. Εάν είναι σαββατοκύριακο, ξεκουραζόμαστε, αλλιώς πάμε σχολείο. Το ίδιο όμως ισχύει και στον υπολογιστικό κόσμο. Όταν ένα αυτοκινητάκι πατάει στο γρασίδι, τότε επιβραδύνεται. Όταν ένα κακό μπαρμπαδελάκι ακουμπήσει τον Packman, τότε αφαιρείται μια ζωή. Αν ο Packman ακουμπήσει ένα φρουτάκι, τότε το φρουτάκι εξαφανίζεται και εμείς κερδίζουμε πόντους. Αν προσπαθήσουμε να αντιγράψουμε ένα αρχείο σε ένα φάκελο που περιέχει ένα αρχείο με το ίδιο όνομα, τότε το λειτουργικό σύστημα θα μας ρωτήσει τι ακριβώς θέλουμε να κάνουμε. Όταν ένα αντικείμενο στο Scratch θέλει να προσδιορίσει τη συμπεριφορά του ανάλογα με το τι συμβαίνει γύρω του, τότε χρησιμοποιούμε τις εντολές εάν… και εάν… αλλιώς…

Είδαμε ότι ο οδηγός σε έναν αγώνα ράλι επαναλαμβάνει το γύρο της πίστας όσες φορές έχει οριστεί από τον αγώνα. Τι γίνεται όμως όταν του τελειώνουν τα καύσιμα; Εάν του τελειώνουν τα καύσιμα τότε ο οδηγός θα μπει στο pit stop για ανεφοδιασμό, όπως φαίνεται στην επόμενη εικόνα. Αλλιώς, ο οδηγός θα συνεχίσει να επαναλαμβάνει την πορεία του.

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

Όλοι σας έχετε δώσει την απάντηση «Εάν βρέξει, δεν θα μπορέσουμε»  στην ερώτηση «Θα πάμε μετά το σχολείο να παίξουμε;». Στο συγκεκριμένο παράδειγμα, η συνθήκη βρίσκεται στην έκφραση «Εάν βρέξει». Υπάρχουν δυο πιθανές περιπτώσεις. Είτε να βρέξει είτε να μην βρέξει και η επιλογή μας για το

αν τελικά θα πάμε για παιχνίδι εξαρτάται από αυτήν ακριβώς τη συνθήκη.

Στο προγραμματισμό μπορούμε να επιλέξουμε την υπό συνθήκη εκτέλεση ορισμένων εντολών, δηλαδή να προσδιορίσουμε ότι κάποιες εντολές θα τρέχουν μόνο εφόσον ισχύει μια συνθήκη. Η δομή της εντολής εάν… στον προγραμματισμό είναι η ακόλουθη:

Εάν (συνθήκη) (εντολές)

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

Υποθέστε ότι ο καθηγητής των μαθηματικών σας ανακοινώνει ότι την Δευτέρα θα έχετε διαγώνισμα στην ύλη που έχετε καλύψει μέχρι τώρα. Πηγαίνετε σπίτι και το ανακοινώνετε στους γονείς σας. Εκείνοι με την σειρά τους σας λένε ότι θα πάτε για παιχνίδι μόνο αν σας εξετάσουν και δουν ότι είστε διαβασμένοι. Επίσης σας λένε ότι, επειδή θεωρούν το μάθημα αυτό πολύ σημαντικό για την εξέλιξη σας, αν γράψετε είκοσι θα σας αγοράσουν το πολυπόθητο παιχνίδι του υπολογιστή που τόσο καιρό ζητούσατε. Οπότε εσείς σκέφτεστε «Να η ευκαιρία μου!!». Και επειδή όλοι ξέρουμε ότι το παιχνίδι δεν βγαίνει ποτέ από το μυαλό σας σκέφτεστε: «αν αρχίσω το διάβασμα τώρα και τελειώσω νωρίς, τότε θα έχω χρόνο και για παιχνίδι με τον φίλο μου». Βέβαια υπάρχει και το ενδεχόμενο ο φίλος σας να διαβάζει ακόμα αλλά αυτό δεν σας ενοχλεί καθόλου καθώς αν διαβάζει ακόμα, τότε εσείς θα σερφάρετε στις αγαπημένες σας ιστοσελίδες στο διαδίκτυο.

Όπως θα έχετε ήδη διαπιστώσει αυτή η ιστορία έχει αρκετές συνθήκες και πολλές διαφορετικές ενδεχόμενες καταλήξεις. Αλλά αυτή δεν είναι η πραγματικότητα; Ας προσπαθήσουμε να τις αναλύσουμε με την βοήθεια ενός διαγράμματος ροής. Το διάγραμμα ροής απεικονίζει κάθε συνθήκη σε ένα ρόμβο και κάθε δυνατή ενέργεια που μπορεί να προκύψει μετά τον έλεγχο της συνθήκης σε ένα ορθογώνιο. Με βέλη σχηματίζουμε τα διάφορα πιθανά μονοπάτια. Κάθε συνθήκη έχει δυο πιθανά μονοπάτια:

Α) αν ισχύει, θα πραγματοποιηθούν οι ενέργειες που είναι υπό συνθήκη

Β) αν δεν ισχύει, δεν θα πραγματοποιηθούν.




Δεν υπάρχουν σχόλια μέχρι τώρα
Αφήστε ένα σχόλιο



Αφήστε μια απάντηση



Αλλαγή μεγέθους γραμματοσειράς
Αντίθεση
Μετάβαση σε γραμμή εργαλείων