Η Απάντηση. Φύλλο Εργασίας. Μηνύματα

Σχετικά έγγραφα
Η Απάντηση. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μηνύματα. 1. Πληκτρολογήστε την εντολή:

3. Γράψτε μία εντολή που να εμφανίζει π.χ. «Πόσα είναι τα κορίτσια του;» και μία που να εμφανίζει: «Τα κορίτσια του Τζειμς Μποντ είναι 4»

Μάντεψε τον Αριθμό. Φύλλο Εργασίας. Οδηγίες

Η Απάντηση 1. Πες Τουλάχιστον Μια Καλημέρα

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Οδηγίες

Mπαρμπούτι. Φύλλο Εργασίας. Τυχαιότητα

Τυχαίοι αριθμοί ρίξε μια «ζαριά»

Mπαρμπούτι. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Τυχαιότητα

Το Παιχνίδι της Αφαίρεσης

Μάντεψε τον Αριθμό. Φύλλο Εργασίας. Μάντεψε!

Μάντεψε τον Αριθμό Φύλλο Εργασίας 2

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

Προγραμματιστικό Περιβάλλον

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6)

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μάντεψε!

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Φύλλο Εργασίας 3. Μια γρήγορη επανάληψη από τα προηγούμενα

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE

Ελέγξτε την ταινία σας

Το Παιχνίδι της Αφαίρεσης

ΘΕΜΑ : «Από την ΜicroWorlds Pro στην Python. Μια Βιωματική Διδακτική Πρόταση.»

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ

7 ο Γυμνάσιο Καβάλας Καλλιόπη Παρσέλια Σχολ. έτος: Το περιβάλλον προγραμματισμού MicroWorlds Pro

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo;

Γ ε ν ι κ ό Λ ύ κ ε ι ο Ε λ ε υ θ ε ρ ο ύ π ο λ η ς. Α λ γ ό ρ ι θ μ ο ι

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα;

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ 1. ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΚΕΦ.

Να γράψετε τους αριθμούς 1, 2, 3 από τη Στήλη Α και δίπλα το γράμμα α, β, γ, δ, ε από τη Στήλη Β που δίνει τη σωστή αντιστοιχία.

Διαδικασιακός Προγραμματισμός

Αναπαραγωγή με αρχεία ήχου

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

ΣΚΟΠΟΙ ΒΗΜΑ 1 Ο. Θα εμφανιστεί το λογότυπο του προγράμματος.. ..και μετά από λίγο ένα παράθυρο με τίτλο Προβολές CMap Tools. [1]

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ ΥΠΟΛΕΙΠΟΜΕΝΕΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

Εισαγωγή στην PHP. ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας. Περιεχόμενα. Περιεχόμενα

α. Οι συμβολοσειρές είναι μια ακολουθία από χαρακτήρες. Μια συμβολοσειρά μπορεί να αποτελείται από περισσότερες από μία λέξεις.

Ερωτήσεις Σωστού-Λάθους

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ ΤΡΙΤΗ 11 ΙΟΥΝΙΟΥ 2019 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ

Διαδικασιακός Προγραμματισμός

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ: Εντολές κίνησης και στροφής στο προγραμματιστικό περιβάλλον Scratch. ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

ττιαογή και επανάληψη

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ΚΑΙ Β ) ΤΡΙΤΗ 13 ΙΟΥΝΙΟΥ 2017

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

ΤΡΙΩΡΗ ΓΡΑΠΤΗ ΔΟΚΙΜΑΣΙΑ

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 7/1/2014, 22:00

Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού "ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ" (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C)

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 2 ο Αν χ και y μεταβλητές με τιμές 5 και 10 αντίστοιχα να εξηγηθούν οι ακόλουθες εντολές εξόδου.

Πληρουορική Γ Γσμμασίοσ

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Διαδικασιακός Προγραμματισμός

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 2 Εντολές Εισόδου/Εξόδου Τελεστές. Δρ. Γιώργος Λαμπρινίδης 23/10/2015 Η - Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

ΦΡΟΝΤΙΣΤΗΡΙΟ ΦΑΣΜΑ 12/10/2014

8 FORTRAN 77/90/95/2003

Σημειωματάριο Δευτέρας 9 Οκτ. 2017

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΕΠΠ / Γ ΛΥΚΕΙΟΥ-ΘΕΡΙΝΑ ΣΕΙΡΑ: 1 η ΗΜΕΡΟΜΗΝΙΑ: 09/09/2012

7. Βασικά στοιχεία προγραµµατισµού.

ΣΥΝΟΛΟ ΣΕΛΙ ΩΝ: ΕΠΤΑ (7)

Κεφ 2. Βασικές Έννοιες Αλγορίθμων

Μεταβλητές τύπου χαρακτήρα

Γράψτε ένα πρόγραμμα που να τυπώνει τον Αριθμό Μητρώου σας με χρήση της συνάρτησης print.

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

2.2.3 Η εντολή Εκτύπωσε

Movie Maker (Δημιουργία βίντεο)

Βασικά στοιχεία γλώσσας προγραμματισμού. Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19

Εντολές της LOGO (MicroWorlds Pro)

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ. Δρ. Π. Νικολαΐδου

Μαθήματα Scratch -Δραστηριότητα 1 Παλέτα Κίνηση

Διορθώσεις Συμπληρώσεις επί της επανεκτύπωσης 2003 της 2 ης έκδοσης του βιβλίου «Διαδικαστικός Προγραμματισμός C»

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Α1. Να χαρακτηρίσετε καθεμία από τις παρακάτω προτάσεις με τη λέξη Σωστή ή με τη λέξη Λάθος.

Σημειωματάριο Τετάρτης 25 Οκτ. 2017

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ

Θέματα Προγραμματισμού Η/Υ

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 4 η. Βασίλης Στεφανής

ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ

Εισαγωγή στην Αριθμητική Ανάλυση

Transcript:

Η Απάντηση Φύλλο Εργασίας Στο βιβλίο The Hitchhiker s Guide to the Galaxy, περιγράφεται μια υπερευφυής φυλή η οποία αποφασίζει να φτιάξει έναν υπολογιστή που θα δώσει οριστικά την απάντηση για το νόημα της ζωής. Ο υπολογιστής χρειάστηκε 7.5 εκατομμύρια χρόνια για να υπολογίσει και να ελέγξει την Απάντηση για τη Ζωή, το Σύμπαν και τα Πάντα. Η Απάντηση ήταν σαράντα δύο. Ο υπολογιστής λέγονταν Deep Thought και μπορούμε να φτιάξουμε κι εμείς ένα πρόγραμμα σαν το δικό του. Επειδή γνωρίζουμε ήδη την Απάντηση, θα κλέψουμε λίγο: το πρόγραμμά μας δεν θα υπολογίζει την Απάντηση, αλλά μόνο θα την ανακοινώνει στο χρήστη. Έννοιες: είσοδος, έξοδος, μεταβλητές, δομή επιλογής. 1 22 Ιουλίου 2016 13:14 Με αυτό το φύλλο εργασίας θα γνωρίσουμε τα βασικά είδη εντολών που θα επιτρέπουν στα προγράμματά μας να αλληλεπιδρούν με το χρήστη, δηλαδή να του εμφανίζουν μηνύματα στην οθόνη και να του ζητούν να εισάγει τιμές από το πληκτρολόγιο. Θα εξετάσουμε επίσης πως μπορούμε να κάνουμε τα προγράμματά μας να επιλέγουν τον τρόπο που θα συμπεριφερθούν, εξετάζοντας τις συνθήκες που επικρατούν κατά την εκτέλεσή τους. Διαβάστε το αντίστοιχο κεφάλαιο: pythonies.mysch.gr/chapters/ answer.pdf Στη διεύθυνση pythonies.mysch.gr μπορείτε να βρείτε κι άλλα φύλλα εργασίας σαν αυτό, καθώς και το συνοδευτικό τους υλικό. Μηνύματα 1. Πληκτρολογήστε την εντολή: print("καλημέρα.") Αυτό είναι το πρώτο σας πρόγραμμα. Εκτελέστε το για να δείτε τι θα συμβεί. 2. Βασιστείτε στην εντολή του προηγούμενου βήματος και προσθέστε στο πρόγραμμά σας μια ακόμα εντολή, έτσι ώστε να εμφανίζεται στην οθόνη η Απάντηση. Η Απάντηση είναι... 42 Εκτελέστε ξανά το πρόγραμμα. Τα καταφέρατε; 1

Η ΑΠΑΝΤΗΣΗ 2 3. Προσθέστε πριν την print του προηγούμενου βήματος την εντολή: answer = 42 Η answer είναι μια μεταβλητή στην οποία δίνουμε την τιμή 42. Tώρα μπορούμε να αναφερόμαστε στην Απάντηση, χωρίς να έχει σημασία ποια είναι αυτή. Τροποποιήστε την print του βήματος 2 ως εξής: print("η Απάντηση είναι...", answer ) Εκτελέστε το πρόγραμμα. Παρατηρείτε κάποια διαφορά στα μηνύματα που εμφανίζονται μετά από τις τροποποιήσεις που κάνατε; Σε τι πιστεύετε ότι διαφέρει το πρόγραμμα μετά από αυτές τις τροποποιήσεις; Πιστεύετε ότι θα λειτουργούσε το πρόγραμμα αν είχατε τοποθετήσει την εντολή answer = 42 μετά τις print; Δικαιολογήστε την απάντησή σας. 4. Τροποποιήστε την εντολή που δίνει τιμή στην answer: answer = 3 + 13 * 3 Ποιά πιστεύετε ότι θα είναι τώρα η τιμή της answer; Εκτελέστε το πρόγραμμα. Ποιά είναι η τιμή της answer; Το σύμβολο * αντιστοιχεί στην πράξη του πολλαπλασιασμού. Mπορείτε επίσης να χρησιμοποιήσετε τα κλασικά + και -, καθώς επίσης και το / για τη διαίρεση, το // για το πηλίκο της ακέραιας διαίρεσης και το % για το υπόλοιπο της ακέραιας διαίρεσης. Η τιμή της answer προέκυψε τώρα από τον υπολογισμό της τιμής μιας έκφρασης. Προσπαθήστε να γράψετε άλλες δύο παρόμοιες αριθμητικές εκφράσεις που χρησιμοποιούν διαφορετικά νούμερα και διαφορετικές πράξεις αλλά δίνουν την ίδια τιμή στην answer. Προσπαθήστε να χρησιμοποιήσετε και τους τελεστές // και % για το πηλίκο και το υπόλοιπο της ακέραιας διαίρεσης.

Η ΑΠΑΝΤΗΣΗ 3 Ερωταποκρίσεις Θα προγραμματίσουμε τον Deep Thought έτσι ώστε να ζητάει το όνομα του χρήστη και να τον καλημερίζει κατάλληλα. Έτσι θα υπάρχει ένας στοιχειώδης διάλογος, πριν ανακοινωθεί η Απάντηση. 5. Στην αρχή του προγράμματος προσθέστε τις παρακάτω εντολές: print("πώς σε λένε;") name = input() Η input() επιστρέφει το κείμενο που πληκτρολόγησε ο χρήστης, επιστρέφει δηλαδή μια αλφαριθμητική τιμή. Εδώ χρησιμοποιούμε την input() για να διαβάσουμε την απάντηση του χρήστη, η οποία αποθηκεύεται στη μεταβλητή name. 6. Συμπληρώστε την εντολή print("καλημέρα.") έτσι ώστε το πρόγραμμα να χαιρετά τον χρήστη χρησιμοποιώντας το όνομά του, το οποίο είναι αποθηκευμένο στη μεταβλητή name. Για παράδειγμα: Καλημέρα Μαρία Αν δυσκολευτείτε, ανατρέξτε στο βήμα 3, όπου γίνεται κάτι ανάλογο με τη μεταβλητή answer. Εκτελέστε το πρόγραμμα σας 2 3 φορές και, παίζοντας το ρόλο του χρήστη, πληκτρολογήστε κάθε φορά ένα διαφορετικό όνομα. Λειτουργεί το πρόγραμμα όπως θα περιμένατε; Ποιά θα ήταν η διαφορά αν επιχειρούσατε να καλημερίσετε τον χρήστη με την εντολή print("καλημέρα name"); Ποιά θα ήταν η διαφορά αν, στο βήμα 5, χρησιμοποιούσαμε την εντολή name = "Μαρία", αντί για την εντολή name = input(); Ποιά θα ήταν η διαφορά αν, στο βήμα 3, χρησιμοποιούσαμε την εντολή answer = input() αντί για την εντολή answer = 42;

Η ΑΠΑΝΤΗΣΗ 4 Βιβλιοθήκες Για να προσθέσουμε λίγο σασπένς, θα θέλαμε να υπάρχει μια καθυστέρηση πριν από την ανακοίνωση της Απάντησης. Επειδή στις βασικές εντολές της Python δεν συγκαταλέγεται κάποια εντολή καθυστέρησης, θα χρησιμοποιήσουμε τη βιβλιοθήκη time, η οποία παρέχει τη λειτουργικότητα που μας χρειάζεται. 7. Προσθέστε στην αρχή του προγράμματος την εντολή που ακολουθεί, για να εισάγετε στο πρόγραμμα τη βιβλιοθήκη time: import time Αμέσως πριν από την print που ανακοινώνει την Απάντηση στο χρήστη, προσθέστε τη γραμμή που ακολουθεί: time.sleep(3) Εδώ χρησιμοποιείται η συνάρτηση sleep, από τη βιβλιοθήκη time. Εκτελέστε το πρόγραμμα. Τί αποτέλεσμα έχει η προσθήκη αυτής της εντολής; Οι βιβλιοθήκες είναι συλλογές από έτοιμα μικρά προγράμματα που μπορούμε να χρησιμοποιήσουμε στα προγράμματά μας. Διερευνήστε τί θα συμβεί αν χρησιμοποιήσουμε άλλη τιμή, διαφορετική από το 3, ως παράμετρο της sleep. Tί ρόλο πιστεύετε ότι παίζει η παράμετρος της sleep; Μπορείτε να αναφέρετε ακόμα ένα ή δύο παραδείγματα εφαρμογών όπου θα χρησιμοποιούσατε την sleep; 8. Πριν από το σημείο καθυστέρησης του προηγούμενου βήματος, προσθέστε μια εντολή η οποία υπολογίζει πόσα δευτερόλεπτα αντιστοιχούν σε 7.5 εκατομμύρια χρόνια αναμονής και αποδίδει αυτή την τιμή σε μια νέα μεταβλητή wait. Αν δυσκολευτείτε, μπορείτε να ανατρέξετε στο βήμα 4, όπου υπολογίζεται με ανάλογο τρόπο η τιμή της μεταβλητής answer. 9. Τροποποιήστε προσωρινά τη γραμμή όπου χρησιμοποιείται η sleep έτσι ώστε, αντί για 3 δευτερόλεπτα, η καθυστέρηση να διαρκεί wait δευτερόλεπτα. Σε ορισμένα περιβάλλοντα προκαλείται σφάλμα με μια τόσο μεγάλη τιμή καθυστέρησης. Στην περίπτωση αυτή, δώστε τιμή στη μεταβλητή wait που αντιστοιχεί σε μικρότερη καθυστέρηση, π.χ. έναν χρόνο. Αν δεν θέλετε να περιμένετε, μπορείτε να διακόψετε την εκτέλεση του προγράμματός σας με τον συνδυασμό πλήκτρων Ctrl + C.

Η ΑΠΑΝΤΗΣΗ 5 Επιλογές: Τί Ώρα Είναι; Ο Deep Thought, που γνωρίζει την Απάντηση για τη Ζωή, το Σύμπαν και τα Πάντα, δεν θα έπρεπε να καλημερίζει τον χρήστη ακόμα κι όταν είναι βράδι Θα θέλαμε το πρόγραμμα να είναι περισσότερο ευέλικτο και να προσαρμόζει τον χαιρετισμό του ανάλογα με την ώρα της ημέρας. 10. Πριν από το σημείο όπου το πρόγραμμά σας καλημερίζει το χρήστη, προσθέστε την εντολή: hour = time.localtime().tm_hour Εδώ χρησιμοποιήσαμε και πάλι τη βιβλιοθήκη time. Οι συντακτικές λεπτομέρειες δεν έχουν σημασία, αυτό που μας νοιάζει είναι πως η τιμή της μεταβλητής hour είναι η τρέχουσα ώρα του συστήματος: ένας ακέραιος από το 0 μέχρι και το 23. Αν θέλετε να το επιβεβαιώσετε, μπορείτε να προσθέσετε προσωρινά μια print που εμφανίζει την τιμή της hour στην οθόνη. 11. Αμέσως μετά την print("καλημέρα", name) με την οποία το πρόγραμμα καλημερίζει το χρήστη, προσθέστε την εντολή: print("καλησπέρα", name) Εκτελέστε το πρόγραμμα. Εμφανίζονται και τα δύο μηνύματα; Εμείς θέλουμε να εκτελείται μόνο η μία από τις δύο εντολές, ανάλογα με την ώρα της ημέρας, δηλαδή την τιμή της μεταβλητής hour. Θα πρέπει λοιπόν να προγραμματίσουμε τον Deep Thought έτσι ώστε να ελέγχει την hour και να εμφανίζει διαφορετικό μήνυμα ανάλογα με το αποτέλεσμα του ελέγχου. 12. Τροποποιήστε το σημείο όπου το πρόγραμμα καλημερίζει το χρήστη: if hour < 16: print("καλημέρα", name) else: print("καλησπέρα", name) Δοκιμάστε να εκτελέσετε το πρόγραμμά σας. Δεν πρόκειται να λειτουργήσει, θα εμφανιστεί ένα μήνυμα σφάλματος. Για να συγκριθούν τιμές μεταξύ τους χρησιμοποιούμε τα < (μικρότερο), <= (μικρότερο ή ίσο), > (μεγαλύτερο) και >= (μεγαλύτερο ή ίσο). Επίσης, με τα == (ίσο) και το!= (διάφορο) ελέγχεται αν δύο τιμές είναι ίσες ή διαφορετικές. IndentationError: expected an indented block Στις περισσότερες γλώσσες προγραμματισμού δεν θα αντιμετωπίζατε κάποιο πρόβλημα, όμως η Python έχει μια ευαισθησία : Οι εντολές που εκτελούνται στη μία ή στην άλλη περίπτωση πρέπει να ξεχωρίζουν, πρέπει με κάποιον τρόπο να επισημανθεί ότι οι εντολές αυτές ανήκουν αντίστοιχα στην if και την else. Στην Python, αυτό επιτυγχάνεται με τις εσοχές.

Η ΑΠΑΝΤΗΣΗ 6 13. Προσθέστε 4 κενά πριν τις δύο print κι εκτελέστε το πρόγραμμα. if hour < 16: print("καλημέρα", name) else: print("καλησπέρα", name) Θυμηθείτε ότι η hour αντιστοιχεί στην ώρα της ημέρας και η τιμή της κυμαίνεται από το 0 μέχρι και το 23. Για ποιο διάστημα τιμών της hour θα εμφανιστεί το "Καλημέρα" και για ποιες το "Καλησπέρα"; hour μήνυμα........................ "Καλημέρα"........................ "Καλησπέρα" Εκτελέστε το πρόγραμμα. Συμπληρώστε παρακάτω την ώρα που το εκτελέσατε και ποιο από τα δύο μηνύματα εμφανίστηκε στην οθόνη. ώρα εκτέλεσης μήνυμα 0 23 "Καλημέρα" / "Καλησπέρα"................................................ Τί ώρα θα έπρεπε να εκτελέσετε το πρόγραμμα για να εμφανιστεί το αντίθετο μήνυμα; Υπάρχουν πολλές εναλλακτικές, συμπληρώστε μία από αυτές. ώρα εκτέλεσης μήνυμα 0 23 "Καλημέρα" / "Καλησπέρα"................................................ Για να δείτε το άλλο μήνυμα να εμφανίζεται και να διαπιστώσετε ότι το πρόγραμμα πράγματι προσαρμόζεται ανάλογα με την ώρα, θα πρέπει να αλλάξετε την ώρα! Tροποποιήστε λοιπόν προσωρινά την εντολή του βήματος 10 που δίνει τιμή στη μεταβλητή hour. Ορίστε την τιμή της hour να είναι ίση με την ώρα εκτέλεσης που συμπληρώσατε στην προηγούμενη ερώτηση. Εμφανίστηκε το σωστό μήνυμα και σ αυτή την περίπτωση; Κι Άλλες Επιλογές: Η Ηλικία Μετράει 14. Πριν την ανακοίνωση της Απάντησης, προσθέστε τις κατάλληλες εντολές στο πρόγραμμα έτσι ώστε να ζητά από το χρήστη να πληκτρολογήσει το έτος γέννησής του και να το αποθηκεύει σε μια μεταβλητή με όνομα birth. Για παράδειγμα:

Η ΑΠΑΝΤΗΣΗ 7 Ποιό έτος γεννήθηκες; 2001 Αν δυσκολευτείτε, μπορείτε να ανατρέξετε στο βήμα 5, όπου γίνεται κάτι ανάλογο για το όνομα του χρήστη. 15. Προσθέστε στο πρόγραμμά σας την παρακάτω εντολή, με την οποία η τιμή της μεταβλητής year γίνεται ίση με το τρέχον έτος. year = time.localtime().tm_year 16. Γνωρίζοντας το τρέχον έτος year και το έτος γέννησης του χρήστη birth, προσπαθήστε να υπολογίσετε την ηλικία του χρήστη και να αποθηκεύσετε την τιμή σε μια μεταβλητή age. Aνατρέξτε στα βήματα 4 και 8 για παραδείγματα όπου γίνεται κάτι ανάλογο. Αν επιχειρήσετε να εκτελέσετε το πρόγραμμα θα διαπιστώσετε ότι δεν λειτουργεί, ακόμα κι αν ο υπολογισμός σας είναι σωστός. Θα δείτε να εμφανίζεται ένα (μάλλον ακατάληπτο) μήνυμα λάθους. TypeError: unsupported operand type(s) for -: 'int' and 'str' Το μήνυμα εξηγεί ότι δεν είναι δυνατές οι πράξεις ανάμεσα σε αριθμούς και αλφαριθμητικές τιμες (κείμενα). Ίσως αναρωτιέστε που βρέθηκε η αλφαριθμητική τιμή. Η input(), που χρησιμοποιήσατε για να διαβάσετε το έτος γέννησης που πληκτρολογεί ο χρήστης, επιστρέφει την απάντηση του χρήστη σε μορφή κειμένου, κι έτσι η τιμή της birth θα έχει τη μορφή "2001" και όχι 2001. 17. Επιστρέψτε στη γραμμή όπου διαβάζεται το έτος γέννησης του χρήστη και τροποποιήστε την ως εξής: birth = int( input() ) H int μετατρέπει το κείμενο που πληκτρολογεί ο χρήστης σε ακέραιο αριθμό. Εκτελέστε και πάλι το πρόγραμμά σας και επιβεβαιώστε ότι δεν εμφανίζεται πια μήνυμα λάθους. 18. Συμπληρώστε το πρόγραμμά σας, έτσι ώστε να εμφανίζει στο χρήστη την ηλικία του. Για παράδειγμα: Ποιό έτος γεννήθηκες; 2001 Είσαι 15 χρονών. 19. Τροποποιήστε το πρόγραμμα και χρησιμοποιήστε την if, έτσι ώστε το μήνυμα που εμφανίζεται να εξαρτάται από το αν ο χρήστης έχει ξεπεράσει τα 18 έτη. Για παράδειγμα: Ποιό έτος γεννήθηκες; 2001 15 χρονών, η κατάλληλη ηλικία να μάθεις την Απάντηση.

Η ΑΠΑΝΤΗΣΗ 8 Ποιό έτος γεννήθηκες; 1976 Πάτησες τα 40, είναι λίγο αργά να μάθεις την Απάντηση. Εκτελέστε το πρόγραμμα σας δύο φορές. Την πρώτη, παίζοντας το ρόλο του χρήστη, δώστε ένα έτος γέννησης που αντιστοιχεί σε ηλικία μικρότερη των 18 ετών, ενώ τη δεύτερη το αντίθετο. Εμφανίζεται το κατάλληλο μήνυμα σε κάθε περίπτωση; 20. Τροποποιήστε το πρόγραμμα έτσι ώστε η Απάντηση να εμφανίζεται μόνο στην περίπτωση που ο χρήστης δεν έχει ξεπεράσει τα 18 έτη. Δεν χρειάζεται να γράψετε καμία νέα εντολή, μόνο να μετακινήσετε κάποια/κάποιες από τις ήδη υπάρχουσες μέσα στην if του προηγούμενου βήματος. Αν παρουσιαστεί κάποιο πρόβλημα, τότε θα πρέπει να βεβαιωθείτε ότι έχετε χρησιμοποιήσει σωστά τις εσοχές, μπροστά από τις εντολές που βρίσκονται μέσα στην if. Εκτελέστε το πρόγραμμα σας δύο φορές. Την πρώτη, παίζοντας το ρόλο του χρήστη, δώστε ένα έτος γέννησης που αντιστοιχεί σε ηλικία μικρότερη των 18 ετών, ενώ τη δεύτερη το αντίθετο. Εμφανίζεται η Απάντηση μόνο στην πρώτη περίπτωση; Δραστηριότητες για Εξάσκηση Για περισσότερη εξάσκηση στις έννοιες που γνωρίσατε σ αυτό το φύλλο εργασίας, μπορείτε ν ανατρέξετε στις ασκήσεις του Κεφαλαίου Η Απάντηση. pythonies.mysch.gr/complete