Επιστημονικά Θέματα, Τεχνολογικά Νέα, Μουσική, Τραγούδια, Προγραμματισμός, Φωτογραφίες, Βίντεο, Καλλιτεχνικά θέματα, Τρόπος Ζωής, Θέματα θρησκείας, Συμβουλές και άλλα πολλά από το www.iliasblog.gr  

Μεταβλητές & Υπολογισμοί


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

ΕΠΕΞΕΡΓΑΣΙΑ ΜΕΤΑΒΛΗΤΩΝ

  • Η τιμή μιας μεταβλητής μπορεί να αλλάξει κάθε στιγμή του προγράμματος.

  • Επίσης, μπορούμε να εκχωρούμε την ίδια τιμή σε περισσότερες από μία μεταβλητές.


ΟΝΟΜΑΣΙΑ ΜΕΤΑΒΛΗΤΩΝ
  • Τα ονόματα των μεταβλητών περιέχουν γράμματα, αριθμούς και το χαρακτήρα underscore (_).
  • Τα ονόματα δεν μπορούν να ξεκινάνε με αριθμό.
  • Μπορούμε να χρησιμοποιούμε από απλά γράμματα μέχρι μεγάλες προτάσεις ως ονόματα μεταβλητών.
  1. Σωστά Ονόματα: a, side, side_length
  2. Λάθος Ονόματα: a 10, 2side, side-length

ΣΥΜΒΟΥΛΕΣ ΟΝΟΜΑΣΙΑΣ ΜΕΤΑΒΛΗΤΩΝ
  • Επιλογή περιγραφικών ονομάτων:
    • το όνομα μιας μεταβλητής πρέπει να είναι σχετικό του περιεχομένου της και όχι άσχετο με αυτό.
  • Συνέπεια:
    • όταν έχουμε μεταβλητές πολλών λέξεων, ακολουθούνται 2 γνωστές τεχνικές. Η μία χρησιμοποιεί underscores και η άλλη κεφαλαία γράμματα π.χ. my_name και myName.
  • Παράδοση της κάθε γλώσσας:
    • στις περισσότερες γλώσσες οι μεταβλητές συνήθως αρχίζουν με πεζό γράμμα. Επίσης, αποφεύγουμε να ξεκινάμε με underscore.
  • Μικρό μήκος λέξης:
    • μεγάλα ονόματα μεταβλητών μπορούν να προκαλέσουν προβλήματα κάνοντας των κώδικα λιγότερο αναγνώσιμο. Συνιστάται το μήκος των μεταβλητών να μην υπερβαίνει τους 15 χαρακτήρες.
ΠΑΡΑΔΕΙΓΜΑ ΜΕ ΜΕΤΑΒΛΗΤΕΣ


Οι μεταβλήτες που χρησιμοποιούνται:
books, book_cost, pencils, pencil_cost, total_cost, my_money, change

ΧΡΗΣΗ ΑΡΙΘΜΩΝ
  • Οι πιο κοινοί τύποι αριθμών είναι οι ακέραιοι και οι πραγματικοί (αριθμοί κινητής υποδιαστολής).
    • ΑΚΕΡΑΙΟΙ (Integers) είναι αριθμοί που δεν έχουν κλασματικό μέρος και άρα γράφονται χωρίς χρήση υποδιαστολής π.χ. 3, 25, -50, 0.
    • ΠΡΑΓΜΑΤΙΚΟΙ (Floats) είναι αριθμοί που περιέχουν υποδιαστολή για να διακρίνουν το ακέραιο από το κλασματικό μέρος π.χ. -2.475, 3.12, 0.65 κλπ.

ΥΠΟΛΟΓΙΣΜΟΙ
  • Με τη βοήθεια του Python Shell μπορούμε να εκτελούμε υπολογισμούς:
    • >>> 2 + 5
    • >>> 12 - 7
    • >>> 3 * 80
    • >>> 20 / 4

ΑΡΙΘΜΗΤΙΚΟΙ ΤΕΛΕΣΤΕΣ
  • Τα σύμβολα που χρησιμοποιούμε για να φτιάχνουμε αριθμητικές εκφράσεις ονομάζονται τελεστές (operators).
  • Οι πιο χρήσιμοι μαθηματικοί τελεστές είναι:
    • +     Πρόσθεση                π.χ. 5 + 3    Αποτέλεσμα: 8
    • -      Αφαίρεση                π.χ. 5 - 3     Αποτέλεσμα: 2
    • *     Πολλαπλασιασμός   π.χ. 5 * 3    Αποτέλεσμα: 15
    • /      Διαίρεση                  π.χ. 5/3       Απ.: 1.6666666666666667
    • //     Ακέραιο Πηλίκο      π.χ. 5 // 3    Αποτέλεσμα: 1
    • %    Ακέραιο Υπόλοιπο  π.χ. 5 % 3   Αποτέλεσμα: 2

ΙΕΡΑΡΧΙΑ ΠΡΑΞΕΩΝ
  • Για να ελέγξουμε την προτεραιότητα των πράξεων, χρησιμοποιούμε παρενθέσεις που πρακτικά εκτελούνται πρώτες.
  • Πολλαπλασιασμοί και διαιρέσεις έχουν μεγαλύτερη προτεραιότητα από τις προσθέσεις και τις αφαιρέσεις.


ΕΜΦΩΛΕΥΜΕΝΕΣ ΠΑΡΕΝΘΕΣΕΙΣ
  • Σε περίπτωση που η παρενθέσεις είναι εμφωλευμένες (nested) δηλαδή η μία μέσα στην άλλη, τότε οι εσωτερικές έχουν προτεραιότητα.


ΚΑΝΟΝΑΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ
  • Οι πολλαπλασιασμοί και οι διαιρέσεις εκτελούνται πάντα πριν τις προσθέσεις και αφαιρέσεις, εκτός αν οι παρενθέσεις αλλάζουν τη σειρά των πράξεων.

ΕΠΑΥΞΗΜΕΝΟΙ ΤΕΛΕΣΤΕΣ
  • Οι Επαυξημένοι τελεστές είναι τελεστές που παρέχουν ένα πιο σύντομο τρόπο υπολογισμού, όταν δεν θέλουμε η ίδια μεταβλητή να εμφανίζεται και στα δύο άκρα του συμβόλου ίσον (=).
    • +=     π.χ. χ += 5     είναι το ίδιο με: χ = χ + 5
    • -=      π.χ. χ -= 5      είναι το ίδιο με: χ = χ - 5
    • *=     π.χ. χ *= 5     είναι το ίδιο με: χ = χ * 5
    • /=      π.χ. χ /= 5      είναι το ίδιο με: χ = χ / 5
    • //=     π.χ. χ //= 5     είναι το ίδιο με: χ = χ // 5
    • %=    π.χ. χ%=5      είναι το ίδιο με: χ = χ % 5

ΤΥΠΟΙ ΛΑΘΩΝ
  • Κατά τον προγραμματισμό μπορούν να συμβούν δύο κατηγορίες λαθών:
    • Τα συντακτικά λάθη (syntax errors) οφείλονται σε παραβίαση των γραμματικών κανόνων της γλώσσας π.χ. παραβίαση συντακτικού ή ορθογραφικά λάθη.
    • Τα λογικά λάθη (logical errors) οφείλονται στην υλοποίηση ενός εσφαλμένου αλγορίθμου.
ΣΥΝΤΑΚΤΙΚΑ ΛΑΘΗ
  • Τα λάθη αυτά ανιχνεύονται από το διερμηνευτή κατά την εκτέλεση και χρειάζονται διόρθωση από τον προγραμματιστή για να προχωρήσει το πρόγραμμα.

ΛΟΓΙΚΑ ΛΑΘΗ
  • Είναι πιο πολύπλοκα λάθη γιατί δεν ανιχνεύονται από κανένα interpreter κατά τη μετάφραση αλλά μόνο από τον προγραμματιστή στη φάση της εκτέλεσης.
  • Είναι λάθη δυσκολότερα στη διόρθωση γιατί όταν προκύψουν, το σύστημα δεν επιστρέφει σχετικό μήνυμα που να καταδεικνύει το λάθος.
  • Άρα, για να τα εντοπίσουμε, πρέπει να μελετάμε αναλυτικά τον κώδικα κατά την εκτέλεση.

ΠΟΙΟ ΕΙΝΑΙ ΤΟ ΛΟΓΙΚΟ ΛΑΘΟΣ ΣΤΟΝ ΠΑΡΑΚΑΤΩ ΚΩΔΙΚΑ;



Εκτέλεση Προγράμματος

  • Ο μεγάλος αριθμός στο Grand Total δεν είναι το άθροισμα των αριθμών που έδωσε ο χρήστης αλλά η συνένωση των αριθμών.
  • Το σύμβολο + εφαρμόζεται σε strings αλλά και σε αριθμούς. Η χρήση ενός τελεστή με δύο διαφορετικούς τρόπους είναι γνωστή ως υπερφόρτωση (operator overloading)

ΜΕΤΑΤΡΟΠΗ ΤΙΜΩΝ
  • Για τη διόρθωση του προηγούμενου προβλήματος, πρέπει να μετατρέψουμε τα strings που επιστρέφει η συνάρτηση input() στους αντίστοιχους αριθμούς.
  • Για τη μετατροπή ενός string σε αριθμό, χρησιμοποιούμε τη συνάρτηση int() που δέχεται ένα string σαν όρισμα και επιστρέφει τον αντίστοιχο αριθμό.

ΣΥΝΑΡΤΗΣΕΙΣ ΜΕΤΑΤΡΟΠΗΣ
  • Η συνάρτηση int() δεν είναι η μοναδική συνάρτηση μετατροπής τιμών. Υπάρχει επίσης η συνάρτηση float() και η συνάρτηση str().
    • float(x)  Επιστρέφει πραγματικό αριθμό μετατρέποντας το χ  π.χ. float("10.0")  επιστρέφει 10.0
    • int(x)  Επιστρέφει ακέραιο μετατρέποντας το χ  π.χ. int("10") επιστρέφει 10
    • str(x)  Επιστρέφει string μετατρέποντας το χ   π.χ. str(10) επιστρέφει "10"

ΕΜΦΩΛΕΥΣΗ ΣΥΝΑΡΤΗΣΕΩΝ
  • Εμφώλευση συναρτήσεων έχουμε όταν τοποθετούμε την κλήση μιας συνάρτησης μέσα σε κάποια άλλη.
  • Αυτή είναι μια καλή τεχνική όταν η τιμές που επιστρέφει η εσωτερική συνάρτηση, χρησιμοποιούνται ως ορίσματα στην εξωτερική.
  • Συνήθως οι συναρτήσεις που εμφωλεύονται είναι αυτές που κάνουν μετατροπές τιμών: int(), float() και str().

num = int(input(“Give an integer number”))

ΤΥΧΑΙΟΙ ΑΡΙΘΜΟΙ
  • Για να παράγουμε τυχαίους αριθμούς, η Python πρέπει να εισάγει το άρθρωμα random (random module).
  • To άρθρωμα random περιέχει συναρτήσεις αναγκαίες για την παραγωγή τυχαίων αριθμών.
  • Για να φορτώσουμε το άρθρωμα random στο πρόγραμμά μας γράφουμε την εντολή import random.
  • Οι πιο συνήθεις συναρτήσεις του αρθρώματος random είναι η randint() και η randrange().
Τα αρθρώματα (modules) είναι αρχεία που περιέχουν κώδικα χρήσιμο για κάποια προγράμματα. Η κλήση μιας συνάρτησης από ένα άρθρωμα γίνεται με το όνομα του αρθρώματος, μία τελεία και το όνομα της συνάρτησης.

randint( )
  • Η συνάρτηση randint() παράγει τυχαίους αριθμούς μεταξύ δύο αριθμών που λειτουργούν ως όρια.
  • Χρησιμοποιεί δύο ακέραια ορίσματα ως όρια και επιστρέφει μια τυχαία τιμή ανάμεσα σε αυτά.
  • Το πρόγραμμα καλεί τη συνάρτηση μέσω του random module με την εντολή random.randint().
  • Για παράδειγμα, η κλήση random.randint(1,6) παράγει ένα τυχαίο αριθμό μεταξύ 1 και 6.
randrange( )
  • Η συνάρτηση randrange() παράγει ένα τυχαίο αριθμό, αλλά χρησιμοποιεί μόνο μία τιμή ως όρισμα.
  • Επιστρέφει ένα τυχαίο αριθμό από το 0 μέχρι και ένα λιγότερο από τον αριθμό που δόθηκε ως όρισμα.
  • Για παράδειγμα, η κλήση random.randrange(6) επιστρέφει έναν τυχαίο αριθμό μεταξύ του 0 και του 5.
Μακρής Ηλίας Π.Ε. Πληροφορικής