Παρασκευή 16 Ιανουαρίου 2026

Δομή Επιλογής If

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


Δομή Απλής Επιλογής


Στην δομή αυτή οι εντολές 1 θα εκτελεστούν μόνο αν είναι αληθής η συνθήκη που προηγείται. Αν δεν ισχύει, θα συνεχιστεί η εκτέλεση του προγράμματος χωρίς να εκτελεστεί αυτό το σετ εντολών. Αυτή η δομή ονομάζεται Δομή Απλής Επιλογής.

Δομή σύνθετης επιλογής

Στην δομή σύνθετης επιλογής προσθέτουμε κάποιες εντολές που οφείλει να εκτελέσει το πρόγραμμα, όταν ΔΕΝ ισχύει η συνθήκη που εξετάζουμε:

Για παράδειγμα,  αν η ηλικία του είναι μεγαλύτερη ή ίση του 18, να εμφανίζει "Ανήλικος", αλλιώς να εμφανίζει "Ενήλικος".

Ή αν κάποιος έχει μέσο όρο βαθμών μεγαλύτερο ή ίσο του 10,  να εμφανίζει "Προάγεται", αλλιώς "Απορρίπτεται".

To τελευταίο παράδειγμα στο Edublocks υλοποιείται ως εξής:






Είναι προφανές ότι αν ισχύει η συνθήκη μέσα στο if (MO>=10),  τότε εκτελούνται οι εντολές μέσα στο if, αν δεν ισχύει, εκτελούνται οι εντολές που βρίσκονται στο else.


Ήδη χρησιμοποιήσαμε έναν Σχεσιακό (ή συγκριτικό) Τελεστή, το  >= .

Οι σχεσιακοί τελεστές παίρνουν μόνο δύο τιμές: Αληθής - Ψευδής, True- False, ανάλογα αν ισχύει ή όχι η συνθήκη που περιγράφουν.

Στο συγκεκριμένο παράδειγμα ο χρήστης ή δίνει ΜΟ >=10 ή όχι. Δεν υπάρχει άλλη περίπτωση.



Προσέξτε ότι όταν ελέγχουμε αν είναι ίσο βάζουμε = = και όταν ελέγχουμε αν είναι διάφορο από, βάζουμε != (όχι ίσο).
Δηλαδή: 
Αν γράψουμε  χ=5, καταχωρούμε στην μεταβλητή χ τον αριθμό 5
Αν γράψουμε χ = =5, ελέγχουμε αν η τιμή της μεταβλητής ισούται με 5.
Αν γράψουμε χ != 5, ελέγχουμε αν η τιμή του χ ισούται με 5

Ασκήσεις

1. Να γραφεί πρόγραμμα που θα διαβάζει την ηλικία και θα εμφανίζει αν ο άνθρωπος είναι ανήλικος ή ενήλικος

2. Να γραφεί πρόγραμμα που θα διαβάζει το σύνολο των απουσιών  ενός μαθητή και θα εμφανίζει αν προάγεται, εφόσον οι απουσίες είναι λιγότερες από 114 ή αλλιώς θα εμφανίζει "Απορρίπτεται λόγω απουσιών"

3. Να γραφεί πρόγραμμα που να διαβάζει δύο αριθμούς x,y και θα εμφανίζει τον μεγαλύτερο.

4. Να γραφεί πρόγραμμα που να καταχωρεί τιμές σε δύο μεταβλητές x,y. Να ελέγχει αν το χ είναι διάφορο του μηδενός και αν είναι, να εκτελεί την διαίρεση: z=x/y. Διαφορετικά, να εμφανίζει το μήνυμα: "Η διαίρεση είναι αδύνατη!"



Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου

Σημείωση: Μόνο ένα μέλος αυτού του ιστολογίου μπορεί να αναρτήσει σχόλιο.