Sotiris Liagas/

Εισαγωγή στην Python - Μάθημα 5 - if, else και Συγκρίσεις

image-10.jpeg
Παιδιά, σήμερα είδαμε πώς μπορούμε να κάνουμε συγκρίσεις στην Python. Τις συγκρίσεις τις χρησιμοποιούμε συνήθως μαζί με το if, αλλά όχι απαραίτητα.
Στις συγκρίσεις, όταν κάτι ισχύει λέμε ότι είναι "αληθές", ενώ όταν κάτι δεν ισχύει λέμε ότι είναι "ψευδές".
Παρακάτω έχω μια λίστα με τα σύμβολα των συγκρίσεων και μερικά παραδείγματα για το πώς χρησιμοποιούνται:

μεγαλύτερο από >
μικρότερο από <
ίσο με ==
μικρότερο από ή ίσο με <=
μεγαλύτερο από ή ίσο με >=

Απλά παραδείγματα με συγκρίσεις (δείτε προσεκτικά τα σηματάκια μετά από κάθε if, στην τελευταία γραμμή κάθε προγράμματος εξηγώ):

if 5 > 4 :
    print("Γεια σου!")

# ο υπολογιστής θα δείξει "γεια σου" γιατί ΙΣΧΥΕΙ ότι το 5 είναι μεγαλύτερο από το 4.

ilikia = 12
if ilikia >= 18 :
    print("είσαι ενήλικος")

# ο υπολογιστής δε θα δείξει τίποτα γιατί η ilikia είναι 12, δεν είναι ΟΥΤΕ ΜΕΓΑΛΥΤΕΡΗ ΟΥΤΕ ΙΣΗ ΜΕ ΤΟ 18 που θα έπρεπε να ισχύει για να φανεί το μήνυμα.

ilikia = 18
if ilikia >= 18 :
    print("είσαι ενήλικος")

# ο υπολογιστής θα δείξει το μήνυμα "είσαι ενήλικος" γιατί η ilikia είναι ΙΣΗ ΜΕ ΤΟ 18.

x = input("γράψε έναν αριθμό: ")
x = int(x)
if x <= 100 :
    print("ο αριθμός που έγραψες είναι μέχρι το 100")

# ο υπολογιστής θα δείξει το μήνυμα μόνο αν ο αριθμός που γράψαμε είναι ΜΙΚΡΟΤΕΡΟΣ ή ΙΣΟΣ με το 100.

x = input("γράψε έναν αριθμό: ")
x = int(x)
if x == 100 :
    print("ο αριθμός που έγραψες είναι το 100")

# ο υπολογιστής θα δείξει το μήνυμα μόνο αν ο αριθμός που γράψαμε είναι 100.

Υπάρχει ένα ακόμη τελευταίο σύμβολο για τις συγκρίσεις, είναι το != που θα δούμε την επόμενη φορά τι σημαίνει!

Σήμερα κάναμε αρκετή εξάσκηση με το if και το else και την σειρά των πράξεων. Θυμίζω ένα από τα προβλήματα που λύσατε όλοι, για να το ξαναδείτε. Έχω κάποιες σημειώσεις για να καταλάβουν κι όσοι έλειπαν.

ΠΡΟΒΛΗΜΑ
Να φτιάξετε ένα πρόγραμμα που να βάζουμε 2 αριθμούς, να τους προσθέτει και ΜΕΤΑ να διαιρεί το άθροισμά τους με το 2.
Αν το αποτέλεσμα της διαίρεσης (πηλίκο) είναι μεγαλύτερο από 100, να εμφανίζεται το μήνυμα "Αποτέλεσμα μεγαλύτερο από 100", αν το αποτέλεσμα είναι ίσο με 100 να εμφανίζεται το μήνυμα "Το αποτέλεσμα είναι 100" και αν το αποτέλεσμα είναι μικρότερο από 100 να εμφανίζεται "Αποτέλεσμα μικρότερο από 100"

ΛΥΣΗ

a = input("1ος αριθμός: ")
b = input("2ος αριθμός: ")
a = int(a)
b = int(b)
if (a+b)/2 > 100 :
    print("Αποτέλεσμα μεγαλύτερο από 100")
if (a+b)/2 == 100 :
    print("Το αποτέλεσμα είναι 100")
if (a+b)/2 < 100 :
    print("Αποτέλεσμα μικρότερο από 100")
input()

ΕΞΗΓΗΣΗ
Στην πρώτη γραμμή περιμένουμε να γράψει ο χρήστης τον 1ο αριθμό. Ο υπολογιστής θα τον θυμάται ως a
Στη δεύτερη γραμμή περιμένουμε να γράψει ο χρήστης τον 2ο αριθμό. Ο υπολογιστής θα τον θυμάται ως b

Στην τρίτη γραμμή λέμε στον υπολογιστή να αντιμετωπίζει αυτό που γράψαμε στο a ως ακέραιο αριθμό.
Στην τέταρτη γραμμή λέμε στον υπολογιστή να αντιμετωπίζει αυτό που γράψαμε στο b ως ακέραιο αριθμό.

Η 3η και η 4η γραμμή είναι απαραίτητες γιατί έχουμε πει πως ο υπολογιστής αντιμετωπίζει ό,τι πληροφορία του δίνουμε εμείς με το input ως ΚΕΙΜΕΝΟ, ακόμη κι ας είναι αριθμός!!!

Στην πέμπτη γραμμή λέμε στον υπολογιστή ότι αν το αποτέλεσμα της πράξης (a+b) / 2 είναι μεγαλύτερο από 100 να δείξει το μήνυμα "Αποτέλεσμα μεγαλύτερο από 100".

Το a και το b εδώ είναι οι αριθμοί που έβαλε ο καθένας όταν "έτρεξε" το πρόγραμμα. Θυμίζω ότι τους είπαμε a και b γιατί δεν ξέρουμε τι αριθμό θα βάλει ο καθένας κάθε φορά!

ΠΡΟΣΕΞΤΕ: Κανονικά η διαίρεση στις αριθμητικές παραστάσεις προηγείται της πρόσθεσης, οπότε για να κάνει ο υπολογιστής πρώτα την πρόσθεση, τη βάλαμε μέσα σε παρένθεση, όπως θα κάναμε και στα Μαθηματικά.

Επίσης, θυμίζω ότι το σύμβολο της διαίρεσης στον προγραμματισμό είναι / και όχι το :

Το ίδιο ισχύει και για τα άλλα δύο if
To input() στην τελευταία γραμμή το βάζουμε πάντα για να μην κλείνει το πρόγραμμά μας αυτόματα.

ΠΑΡΑΔΕΙΓΜΑ
Ας πούμε ότι παραπάνω έγραψα 1ο αριθμό το 200 και 2ο αριθμό το 300.
Το πρόγραμμά μου θα θεωρεί ότι ο αριθμός a είναι 200 και ο αριθμός b είναι 300.
Όταν φτάσει στο πρώτο if, ο υπολογιστής θα ελέγξει αν το αποτέλεσμα της πράξης (a+b)/2 είναι μεγαλύτερο από 100.
Το (a+b)/2 είναι στην πραγματικότητα (200+300)/2 δηλαδή 500/2 δηλαδή 250.
Το 250 είναι μεγαλύτερο από 100, οπότε ο υπολογιστής θα δείξει το πρώτο μήνυμα που είναι μέσα στο πρώτο if
Τα άλλα δύο if θα είναι "ψευδή" γιατί το 250 δεν είναι ίσο με το 100 ούτε είναι μικρότερο από το 100.

Σήμερα στην τελευταία άσκηση είδαμε ξανά κάτι για το print()

onoma = input("πώς σε λένε? ")
ilikia = input("πόσο χρόνων είσαι? ")
print("Σε λένε", onoma, "και είσαι", ilikia, "χρόνων.")

ΠΡΟΣΕΞΤΕ πώς γράφω μέσα στο print()
Έβαλα το ΚΕΙΜΕΝΟ που δεν αλλάζει ποτέ μέσα σε εισαγωγικά (αυτάκια, που λέμε στο εργαστήριο).
Το όνομα και την ηλικία ΔΕΝ ΤΑ ΕΓΡΑΨΑ ΕΤΣΙ γιατί κάθε φορά αλλάζουν. Χρησιμοποίησα τις μεταβλητές τους για να τα δείχνω, δηλαδή onoma και ilikia.
Τα έχω ΧΩΡΙΣΕΙ ΜΕ ΚΟΜΜΑΤΑ, αλλιώς το πρόγραμμα δε θα λειτουργήσει.

Και στο επόμενο μάθημα θα κάνουμε παρόμοιες ασκήσεις και προβλήματα με συγκρίσεις.
Θα δούμε ένα ακόμη σύμβολο συγκρίσεων και θα κάνουμε εξάσκηση και στο print().
Εσείς πριν το επόμενο μάθημα ρίξτε ξανά μια ματιά σε αυτά που έχω παραπάνω και στο προηγούμενο μάθημα με το if και το else γιατί σήμερα αρκετοί μπερδευόσασταν.

There are 3 comments...

  1. Χαρά:

    είναι πολύ εύκολο!!!

    December 11th, 2019 at 07:36 pm
  2. Xαρά:

    μπορούμε το επόμενο μάθημα να το κάνουμε την Τρίτη?????

    December 16th, 2019 at 10:52 am
  3. Sotiris Liagas:

    Τώρα το είδα, Χαρά!

    December 18th, 2019 at 07:30 pm