Αν ....τότε.....ειδάλλως ......
Ειδάλλως
Όπως είπαμε νωρίτερα ο τύπος "if__, then___" χρησιμοποιείτε για να πούμε στον υπολογιστή ότι εάν συμβεί η συνθήκη IF, τότε κάνε την ενέργεια then . Μπορείτε επίσης να πείτε στον υπολογιστή τι πρέπει να κάνει εάν η συνθήκη ΔΕΝ συμβεί. Για να το κάνετε αυτό, πρέπει να χρησιμοποιήσετε έναν τύπο που ονομάζεται if-else statement. Μπορείτε να σκεφτείτε τη δήλωση if-else, ως ένα σταυροδρόμι απόφασης για ένα πρόγραμμα. Μια δήλωση if-else λέει στο πρόγραμμα: "Εάν πληρούται η προϋπόθεση, κάντε το πράγμα Α. Εάν η προϋπόθεση δεν πληρούται, κάντε το πράγμα Β.” Αυτό είναι το μπλοκ if-else στο EdScratch: Ακριβώς όπως το μπλοκ if , το μπλοκ if-else χρησιμοποιεί τον βασικό τύπο "if__, then___", αλλά λέει επίσης τι ενέργειες πρέπει να γίνουν όταν η συνθήκη δεν πληρούται. Μια δήλωση που αν μη τι άλλο σας επιτρέπει να κάνετε μια επιλογή υπό όρους : 1. if κάνει κρύο έξω, then βάζω ένα σακάκι πριν φύγω από το σπίτι. Else θα βγω με μπλουζάκι. 2. if πεινάω μετά το σχολείο, then τρώω ένα σνακ. Else περιμένω μέχρι την ώρα του δείπνου για να φάω. Η χρήση μιας δήλωσης if-else αναγκάζει ένα πρόγραμμα να διακλαδωθεί. Είτε θα ακολουθήσει ένα μονοπάτι, είτε θα ακολουθήσει ένα διαφορετικό μονοπάτι. Ακριβώς όπως ένα μπλοκ if, όταν ένα πρόγραμμα EdScratch φτάνει σε ένα if-else μπλοκ, ελέγχει για να δει αν η συνθήκη έχει εκπληρωθεί. Ένα μπλοκ if-else λέει στο ρομπότ τι πρέπει να κάνει αν πληρούται η προϋπόθεση και τι να κάνει αν δεν πληρούται η προϋπόθεση. Έτσι, το ρομπότ έχει μια ενέργεια να κάνει ότι και αν συμβεί. Παράδειγμα
Η χρήση μιας δήλωσης if-else αναγκάζει ένα πρόγραμμα να διακλαδωθεί επειδή το ρομπότ μπορεί να κάνει μόνο τον κωδικό "if" ή τον κωδικό "άλλο", αλλά όχι και τα δύο. Μόλις το ρομπότ τελειώσει είτε τον κωδικό "if" είτε τον κωδικό "άλλο", προχωρά στην επόμενη γραμμή κώδικα του προγράμματος. 1. Εάν τρέχατε αυτό το πρόγραμμα στο Edison και το ρομπότ ΔΕΝ εντόπιζε ένα πάτημα στρογγυλού κουμπιού, θα χτυπούσε το μπιπ; Όταν εκτελείται αυτό το πρόγραμμα, ποιες ενέργειες θα συμβαίνουν πάντα είτε το ρομπότ ανιχνεύει ένα στρογγυλό πάτημα κουμπιού είτε όχι; Ποια βελτίωση θα προτείνατε? Συμβουλή: Ακολουθήστε το πρόγραμμα με διαδοχική σειρά. Η δημιουργία του προγράμματος Και η εκτέλεσή του.
.Αν πληρούται η προυπόθεση το ρομπότ θα εκτελέσει τον κώδικα που βρίσκεται μέσα στο ‘if’ μπλοκ. Αν η προυπόθεση δεν πληρούται το ρομπότ θα εκτελέσει τον κώδικα μέσα στο else κομμάτι του μπλοκ
Κοιτάξτε αυτό το πρόγραμμα στο EdScratch