Λύσεις — Κεφάλαιο 3: Βασικά στοιχεία γλώσσας προγραμματισμού (σελ. 39) – ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Γ΄ ΕΠΑΛ

Λύσεις — Κεφάλαιο 3: Βασικά στοιχεία γλώσσας προγραμματισμού (σελ. 39)

Λύση της ενσωματωμένης δραστηριότητας εμπέδωσης του κεφαλαίου 3 (επαλήθευση των ενσωματωμένων συναρτήσεων float, int, str, abs, pow, divmod στο shell της Python).


Δραστηριότητα εμπέδωσης — Επαλήθευση ενσωματωμένων συναρτήσεων

Ερώτηση: Στο περιβάλλον της γλώσσας Python, επαληθεύστε τις παρακάτω συναρτήσεις: Η float() μετατρέπει ακεραίους και συμβολοσειρές σε δεκαδικούς αριθμούς. Η int() δέχεται οποιαδήποτε αριθμητική τιμή και τη μετατρέπει σε ακέραιο κόβοντας τα δεκαδικά ψηφία, αν υπάρχουν. H str() δέχεται οποιαδήποτε τιμή και την μετατρέπει σε συμβολοσειρά. Η abs() επιστρέφει την απόλυτη τιμή ενός αριθμού. Η pow(a,b) επιστρέφει τη δύναμη του α υψωμένη στο β. H divmod(x,y) επιστρέφει το ακέραιο πηλίκο και το ακέραιο υπόλοιπο της διαίρεσης x/y.

Απάντηση:

  • Επαλήθευση στο διαλογικό περιβάλλον (IDLE shell, Python 2) — κάθε κλήση και το αποτέλεσμά της:
  • >>> float(10)          # ακέραιος -> δεκαδικός
    10.0
    >>> float("3.25")      # συμβολοσειρά -> δεκαδικός
    3.25
    >>> int(5.678)         # κόβει τα δεκαδικά (δεν στρογγυλοποιεί)
    5
    >>> int(-5.678)        # η αποκοπή γίνεται προς το 0
    -5
    >>> int(7)             # ακέραιος μένει ακέραιος
    7
    >>> str(5.678)         # οποιαδήποτε τιμή -> συμβολοσειρά
    '5.678'
    >>> str(True)
    'True'
    >>> abs(-45)           # απόλυτη τιμή
    45
    >>> abs(3.5)
    3.5
    >>> pow(2, 3)          # 2 στην 3η = 8 (ισοδύναμο με 2**3)
    8
    >>> divmod(10, 3)      # (ακέραιο πηλίκο, υπόλοιπο) = (3, 1)
    (3, 1)
    >>> divmod(17, 5)
    (3, 2)
  • Παρατηρήσεις: η int() αποκόπτει τα δεκαδικά (5.678 → 5, −5.678 → −5) και δεν στρογγυλοποιεί· η str() εμφανίζει το αποτέλεσμα μέσα σε εισαγωγικά στο shell, γιατί πρόκειται για συμβολοσειρά· η pow(2,3) ταυτίζεται με 2**3· η divmod(x,y) επιστρέφει πλειάδα δύο τιμών, ίδιες με x/y (ακέραιο πηλίκο στην Python 2) και x%y.
  • Χρήσιμη εφαρμογή (σελ. 39): για να διαβάσουμε ακέραιο από το πληκτρολόγιο, a = int(input('Δώσε έναν αριθμό: ')) — αν ο χρήστης δώσει 2345.10, η print a εμφανίζει 2345.

Σύνοψη: float(10)→10.0, int(5.678)→5, str(5.678)→'5.678', abs(-45)→45, pow(2,3)→8, divmod(10,3)→(3, 1) — όλες οι περιγραφές επαληθεύονται στο shell.

Κριτήρια αξιολόγησης:

  • Κάθε συνάρτηση με μία τουλάχιστον κλήση και το ακριβές αποτέλεσμα· η int() αποκόπτει, δεν στρογγυλοποιεί.

 ΣΧΟΛΙΚΟ ΒΙΒΛΙΟ