ΕΡΓΑΣΤΗΡΙΑ 1 και 2. Εργαςτήρια Πληροφορική ΙΙ. Ειςαγωγή ςτη Python

Σχετικά έγγραφα
ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 5 ο Εργαςτιριο Ειςαγωγι ςτθ Γραμμι Εντολϊν

Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8

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

Στα προθγοφμενα δφο εργαςτιρια είδαμε τθ δομι απόφαςθσ (ι επιλογισ ι ελζγχου ροισ). Ασ κυμθκοφμε:

ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ. Κεφάλαιο 8 Η γλϊςςα Pascal

Ειςαγωγι ςτο Δομθμζνο Προγραμματιςμό. Βαγγζλθσ Οικονόμου

ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Γνωριμία με το λογιςμικό του υπολογιςτι

Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2

ΗΥ101: Ειςαγωγι ςτθν Πλθροφορικι

ΡΟΓΑΜΜΑΤΙΣΤΙΚΟ ΡΕΙΒΑΛΛΟΝ MICRO WORLDS PRO

Διαχείριςθ του φακζλου "public_html" ςτο ΠΣΔ

ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι

Δομζσ Αφαιρετικότθτα ςτα Δεδομζνα

Ηλεκτρονικι Επιχειρθςιακι Δράςθ Εργαςτιριο 1

Ανάπτυξη Εφαρμογών Σε Προγραμματιςτικό Περιβάλλον

Πρόςβαςη και δήλωςη μαθημάτων ςτον Εφδοξο

ΕΝΟΤΘΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΘ. ΚΕΦΑΛΑΙΟ 6: Θ «Βοικεια» ςτον Υπολογιςτι

Ειςαγωγι ςτθν Επιςτιμθ Υπολογιςτϊν. Ειςαγωγι ςτθν Python

17. Πολυδιάςτατοι πίνακεσ

5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ

ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4.1

Οδηγίεσ για την Τποβολή Καταςτάςεων υμφωνητικών μζςω xml αρχείου

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΗ ΝΟΗΛΕΤΣΙΚΗ. Φιλιοποφλου Ειρινθ

Διαδικαςία Διαχείριςθσ Στθλϊν Βιβλίου Εςόδων - Εξόδων. (v.1.0.7)

16. Πίνακεσ και Συναρτήςεισ

Ένα πρόβλθμα γραμμικοφ προγραμματιςμοφ βρίςκεται ςτθν κανονικι μορφι όταν:

Ιδιότθτεσ πεδίων Γενικζσ.

Εργαςτιριο Πικανοτιτων Σθμειϊςεισ προγραμματιςμοφ: βαςικζσ γνϊςεισ ανάπτυξθσ εφαρμογϊν. Κϊςτασ Αρβανιτάκθσ

Α) Ενδεικτικϋσ απαντόςεισ των θεμϊτων

ΕΦΑΡΜΟΓΖσ ΒΆΕΩΝ ΔΕΔΟΜΖΝΩΝ ΚΑΙ ΔΙΑΔΙΚΣΥΟΤ. Ειρινθ Φιλιοποφλου

9 ΕΞΑΙΡΕΕΙ - EXCEPTIONS

8 τριγωνομετρία. βαςικζσ ζννοιεσ. γ ςφω. εφω και γ. κεφάλαιο

ΥΡΟΝΣΙΣΗΡΙΟ Μ. Ε. ΚΑΙ ΚΕΝΣΡΟ ΙΔΙΑΙΣΕΡΩΝ ΜΑΘΗΜΑΣΩΝ «ΚΤΡΙΣΗ» ΔΙΑΓΩΝΙΜΑ ΘΕΜΑΣΑ Β ΛΤΚΕΙΟΤ ΥΕΒΡΟΤΑΡΙΟ 2018 ΑΕΠΠ

Ειςαγωγή ςτην πληροφορική

1 ΕΙΣΑΓΩΓΗ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

ςυςτιματα γραμμικϊν εξιςϊςεων

Διαδικαςία Προγράμματοσ Ωρομζτρθςθσ. (v.1.0.7)

Ειδικά Θζματα Βάςεων Δεδομζνων

Η γλώςςα προγραμματιςμού C

ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 6: Το γραφικό περιβάλλον Επικοινωνίασ (Γ.Π.Ε)

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ

Δομθμζνοσ Προγραμματιςμόσ. Βαγγζλθσ Οικονόμου Εργαςτιριο 9

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο του Άβακα

ΗΛΕΚΣΡΟΝΙΚΗ ΤΠΗΡΕΙΑ ΑΠΟΚΣΗΗ ΑΚΑΔΗΜΑΪΚΗ ΣΑΤΣΟΣΗΣΑ

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 3 ο Εργαςτιριο υγχρονιςμόσ Διεργαςιϊν

ΥΡΟΝΣΙ ΣΗΡΙΟ Μ. Ε. ΚΑΙ ΚΕΝΣΡΟ ΙΔΙΑΙΣΕΡΩΝ ΜΑΘΗΜΑΣΩΝ «ΚΤΡΙΣ Η» ΔΙΑΓΩΝΙ ΜΑ ΑΕΠΠ

Παράςταςη ςυμπλήρωμα ωσ προσ 1

ΕΝΟΣΗΣΑ 1: ΓΝΩΡIΖΩ ΣΟΝ ΤΠΟΛΟΓΙΣΗ. ΚΕΦΑΛΑΙΟ 2: Σο Τλικό του Τπολογιςτι

Ονοματεπϊνυμο.. ΔΙΑΓΩΝΙΣΜΑ ΑΕΠΠ

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 20. Αρχεία. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

GNSS Solutions guide. 1. Create new Project

Μονάδες 6. Μονάδες ΓΑΨΕ Δεν υπάρχει ρίηα 2. ΑΝ Α>0 ΤΟΤΕ 3. ΤΕΛΟΣ_ΑΝ 4. ΑΛΛΙΩΣ 5. ίηα Τ_(Α)

8 ΥΜΒΟΛΟΕΙΡΕ - STRINGS

Πωσ δημιουργώ μάθημα ςτο e-class του ΠΣΔ [επίπεδο 1]

Οδηγίες αναβάθμισης χαρτών

Πόςο εκτατό μπορεί να είναι ζνα μη εκτατό νήμα και πόςο φυςικό. μπορεί να είναι ζνα μηχανικό ςτερεό. Συνιςταμζνη δφναμη versus «κατανεμημζνησ» δφναμησ

Εργαςτιριο Βάςεων Δεδομζνων

ΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Αρχεία - Φάκελοι

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο τησ Αριθμογραμμήσ

Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Εργαςτιριο 1

Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων. 18. Αλφαριθμητικά. Ιωάννθσ Κατάκθσ. ΕΡΛ 032: Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων

Θεςιακά ςυςτιματα αρίκμθςθσ

ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΝΟΣΘΣΑ 1: ΓΝΩΡIΗΩ ΣΟΝ ΤΠΟΛΟΓΙΣΘ Ω ΕΝΙΑΙΟ ΤΣΘΜΑ. ΚΕΦΑΛΑΙΟ 1: Ψθφιακόσ Κόςμοσ

Εισαγωγικές έννοιες. Αντώνησ Κ Μαώργιώτησ

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium V

1 ο Διαγώνιςμα για το Α.Ε.Π.Π.

ΟΝΟΜΑΣΟΛΟΓΙΑ ΠΑΡΑΜΕΣΡΩΝ ΓΙΑ ΠΡΟΑΡΜΟΜΕΝΕ ΑΝΑΦΟΡΕ. παραμζτρου> (Εμφανίηεται ςαν Caption ςτθν φόρμα των φίλτρων).

Εγχειρίδιο Χρήςησ Προςωποποιημζνων Υπηρεςιών Γ.Ε.ΜΗ. (Εθνικό Τυπογραφείο)

ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

ΔΟΜΗ ΑΠΛΗΣ ΕΠΙΛΟΓΗΣ Αςκήςεισ με ψευδογλώςςα/ διάγραμμα ροήσ. Αντώνης Μαϊργιώτης

Εγχειρίδιο Χρήςησ Προςωποποιημζνων Υπηρεςιών Γ.Ε.ΜΗ. (Εθνικό Τυπογραφείο)

Δ ιαγώνιςμα ς το μάθημα Ανάπτυξη Εφαρμογών ςε Προγ ραμματιςτικό Περιβάλ λον

Modellus 4.01 Συ ντομοσ Οδηγο σ

ΕΝΟΤΗΤΑ 3: Χριςθ εργαλείων ζκφραςθσ, επικοινωνίασ, ανακάλυψθσ και δθμιουργίασ. ΚΕΦΑΛΑΙΟ 8: Επεξεργαςία Δεδομζνων και Υπολογιςτικά Φφλλα

ΑΝΣΙΣΡΟΦΗ ΤΝΑΡΣΗΗ. f y x y f A αντιςτοιχίηεται ςτο μοναδικό x A για το οποίο. Παρατθριςεισ Ιδιότθτεσ τθσ αντίςτροφθσ ςυνάρτθςθσ 1. Η. f A τθσ f.

x n D 2 ENCODER m - σε n (m 2 n ) x 1 Παραδείγματα κωδικοποιθτϊν είναι ο κωδικοποιθτισ οκταδικοφ ςε δυαδικό και ο κωδικοποιθτισ BCD ςε δυαδικό.

Δομζσ Δεδομζνων Πίνακεσ

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. Διαφάνειεσ: Βαςικζσ Αρχζσ Προγραμματιςμοφ Α.Π.Θ. Δθμιτρθσ Βράκασ

Ψθφιακά Ηλεκτρονικά. Ενότθτα 7 : Ελαχιςτοποίθςθ και κωδικοποίθςθ καταςτάςεων Φϊτιοσ Βαρτηιϊτθσ

Εργαςτιρια Πλθροφορικι ΙΙ. Εαρινό εξάμθνο Ειςαγωγι ςτθ Python

Virtualization. Στο ςυγκεκριμζνο οδηγό, θα παρουςιαςτεί η ικανότητα δοκιμήσ τησ διανομήσ Ubuntu 9.04, χωρίσ την ανάγκη του format.

Πολυπλέκτες. 0 x 0 F = S x 0 + Sx 1 1 x 1

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 2 ο Εργαςτιριο Διαχείριςθ Διεργαςιϊν

Οδηγός χρήσης Blackboard Learning System για φοιτητές

Σχεδίαςη Σφγχρονων Ακολουθιακών Κυκλωμάτων

Το καλωςόριςμα των μαθητών ςτο Εργαςτήριο Φυςικών Επιςτημών

Μετατροπι Αναλογικοφ Σιματοσ ςε Ψθφιακό. Διάλεξθ 10

Αυτόνομοι Πράκτορες. Αναφορά Εργασίας Εξαμήνου. Το αστέρι του Aibo και τα κόκαλα του

1. Διαχείριςη ενθεμάτων

ΕΝΟΣΗΣΑ 1: ΓΝΩΡIΖΩ ΣΟΝ ΤΠΟΛΟΓΙΣΗ. ΚΕΦΑΛΑΙΟ 3: Εργονομία

TAXI-TRACK Σύςτημα εύρεςησ διαθέςιμων ταξί (για τουσ πελάτεσ των ταξί)

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

Πωσ δθμιουργώ φακζλουσ;

Μθχανολογικό Σχζδιο, από τθ κεωρία ςτο πρακτζο Χριςτοσ Καμποφρθσ, Κων/νοσ Βαταβάλθσ

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 19. Αλφαριθμητικά II. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

Αςφάλεια και Προςταςία Δεδομζνων

Βάςεισ Δεδομζνων Λ. Ενότθτα 8: SQL Γλώςςα χειριςμοφ δεδομζνων. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικών Πλθροφορικισ ΣΕ

Ραραμετροποίθςθ ειςαγωγισ δεδομζνων περιόδων

Transcript:

Εργαςτήρια Πληροφορική ΙΙ Ειςαγωγή ςτη Python 1 Σ ε λ ί δ α - Π λ θ ρ ο φ ο ρ ι κ ι Ι Ι τμι μ α Δ ι ο ί κ θ ς θ σ Ε π ι χ ε ι ρ ι ς ε ω ν Μαϊ ρ γ ι ϊ τ θ σ Α.

H Python είναι μια πολφ όμορφθ, ιδιαίτερα εκφραςτικι, αντικειμενοςτραφισ, υψθλοφ επιπζδου γλϊςςα προγραμματιςμοφ. Το ςφςτθμα τφπων τθσ είναι πλιρωσ δυναμικό και θ διαχείριςθ μνιμθσ αυτόματθ, θ standard υλοποίθςι τθσ (CPython) είναι ζνασ bytecode compiler και interpreter και θ βιβλιοκικθ τθσ πολφ πλοφςια. Βαςικι αρχι τθσ Python είναι ότι ο χρόνοσ του προγραμματιςτι είναι πολφ ςθμαντικότεροσ από τουσ κφκλουσ μθχανισ και τον απαλλάςςει από τισ χαμθλοφ επιπζδου λεπτομζρειεσ που πρζπει να φροντίςει ςτθ C/C++ ι, ωσ ζνα βακμό, ςτθ Java. Ζνα πρόγραμμα είναι μία ακολουκία εντολών θ οποία προςδιορίηει πωσ κα εκτελεςτεί ζνασ υπολογιςμόσ. Αυτόσ ο υπολογιςμόσ μπορεί να είναι κάτι μακθματικό, όπωσ το να λφνεισ ζνα ςφςτθμα εξιςϊςεων ι το να βρίςκεισ τισ ρίηεσ ενόσ πολυωνφμου, αλλά επίςθσ μπορεί να είναι ζνασ ςυμβολικόσ υπολογιςμόσ, όπωσ το να ψάχνεισ και να αντικακιςτάσ κείμενο μζςα ςε ζνα ζγγραφο ι (περιζργωσ) να μεταγλωττίηεισ ζνα πρόγραμμα. Ο προγραμματιςμόσ είναι επιρρεπισ ςε λάκθ. Τα λάκθ ςτον προγραμματι ςμό ονομάηονται ςτα αγγλικά bugs ενϊ ςτα ελλθνικά ςφάλματα και θ διαδικαςία εντοπιςμοφ τουσ ονομάηεται debugging ή αποςφαλμάτωςη ςτα ελλθνικά. Τρία είδθ λακϊν μπορεί να ςυμβοφν ςε ζνα πρόγραμμα: ςυντακτικά λάκθ, λάκθ χρόνου εκτζλεςθσ και λογικά λάκθ. Είναι χριςιμο να γίνει διάκριςθ μεταξφ τουσ προκειμζνου να εντοπίηονται γρθγορότερα. υντακτικά λάθη: Η Python μπορεί να εκτελζςει ζνα πρόγραμμα μόνο εάν ζχει ςωςτι ςφνταξθ, διαφορετικά ο διερμθνζασ εμφανίηει μινυμα λάκουσ. Η ςφνταξθ αφορά τθ δομι ενόσ προγράμματοσ και τουσ κανόνεσ αυτισ τθσ δομισ. Για παράδειγμα, οι παρενκζςεισ πρζπει να είναι πάντα ηεφγθ, ζτςι το (1 + 2) είναι ςωςτό, αλλά το 8) είναι ζνα ςυντακτικό λάκοσ (syntax error). Λάθη χρόνου εκτζλεςησ: Ο δεφτεροσ τφποσ λάκουσ είναι τα λάκθ χρόνου εκτζλεςθσ (runtime errors), ονομάηονται ζτςι επειδι τα λάκθ δεν εμφανίηονται μζχρισ ότου αρχίςει το πρόγραμμα να τρζχει. Αυτά τα λάκθ ονομάηονται επίςθσ εξαιρζςεισ (exceptions) επειδι ςυνικωσ υποδεικνφουν ότι κάτι ςθμαντικό (και κακό) ζχει ςυμβεί. Λογικά λάθη: Ο τρίτοσ τφποσ λάκουσ είναι τα λογικά λάκθ (semantic errors). Εάν υπάρχει ζνα λογικό λάκοσ ςτο πρόγραμμά ςασ κα τρζξει επιτυχϊσ από τθν άποψθ ότι ο υπολογιςτισ δεν κα παράξει κανζνα μινυμα λάκουσ, αλλά δεν κα κάνει το ςωςτό. Θα κάνει κάτι διαφορετικό. Συγκεκριμζνα, κα κάνει αυτό που του είπατε να κάνει. Οι αςκιςεισ του ςυγκεκριμζνου εργαςτθρίου ζχουν ςχεδιαςτεί για να ςασ βοθκιςουν να αναπτφξετε τισ ικανότθτεσ ανάλυςθσ με ςκοπό να ςπάμε κάποια προβλιματα ςε ακόμθ μικρότερα. Επιπρόςκετα, θ ςυμπλιρωςθ αυτϊν των αςκιςεων κα ςασ βοθκιςει να οικειοποιθκείτε τθ ςφνταξθ τθσ Python. Ζτςι ςτα επόμενα μπορεί να μάκετε: Να παράγετε κάποια ζξοδο με μία διλωςθ ( ι αλλιϊσ εντολι) print. Να διαβάηετε μία είςοδο, ςυμπεριλαμβανομζνου του casting ςτθν ζξοδο που κζλετε εςείσ. Να υλοποιείτε υπολογιςμοφσ με αρικμοφσ ςυμπεριλαμβανομζνου ακεραίων και αρικμϊν κινθτισ υποδιαςτολισ χρθςιμοποιϊντασ τελεςτζσ τθσ Python, όπωσ: +, *, /, //, % και **. Να καλείτε ςυναρτιςεισ που χρειάηονται το math module Να ελζγχετε τθ μορφι τθσ εξόδου με τουσ προςδιοριςτζσ μορφισ (format specifiers) Η προτροπι ειςόδου εντολϊν (>>>) υποδεικνφει ότι ο διερμθνζασ περιμζνει τθν ειςαγωγι κάποιασ εντολισ από εςάσ. Για να εμφανίςουμε ζνα μινυμα ςτθ Python, π.χ. Python programming is fun! γράφουμε ςτθ προτροπι ειςόδου εντολϊν (prompt) τθν εξισ εντολι: >>> print( Python programming is fun! ) Για να εκτελεςτεί θ εντολι κα πρζπει να πατιςετε το πλικτρο Enter. Αν κάνετε κάποιο λάκοσ (π.χ. ςφάλμα πλθκτρολόγθςθσ) ο διερμθνζασ κα εμφανίςει ζνα μινυμα ςφάλματοσ. Γι αυτό το λόγο, 2 Σ ε λ ί δ α - Π λ θ ρ ο φ ο ρ ι κ ι Ι Ι τμι μ α Δ ι ο ί κ θ ς θ σ Ε π ι χ ε ι ρ ι ς ε ω ν Μαϊ ρ γ ι ϊ τ θ σ Α.

αν εμφανιςτεί κάποιο μινυμα ςφάλματοσ, ξαναπλθκτρολογιςτε τθν εντολι και ςιγουρευτείτε ότι τθ γράψατε ακριβϊσ. Όταν κανείσ γράφει κώδικα όπωσ προθγουμζνωσ, τότε αυτό ονομάηεται λειτουργία script. Δθλαδι γράφει κανείσ κώδικα και είναι ςε κζςθ να τον ελζγχει άμεςα (διαδραςτικι λειτουργία). Εάν κζλετε να κάνετε αρικμθτικζσ πράξεισ, τότε δεν ζχετε παρά να γράψετε: >>> 2+2 Οι πράξεισ που γίνονται ςτθ Python (και με ςειρά προτεραιότθτασ), φαίνονται ςτο πίνακα που ακολουκεί: Στθν Python δεν δθλϊνουμε πουκενά μεταβλθτζσ και τφπουσ αυτϊν, μποροφμε όμωσ ανά πάςα ςτιγμι να εκχωριςουμε μια τιμι ςε ζνα όνομα: >>> a=1234 >>> a="hello world" >>> print a hello world ΠΡΟΟΧΗ!!! Αυτό δε ςθμαίνει ότι δε γνωρίηουμε τουσ τφπουσ δεδομζνων, αφοφ όλοι οι αρικμοί δεν είναι ίδιοι, δεν αποκθκεφονται με τον ίδιο τρόπο ι ακόμθ απλοφςτερα, μπορεί να δουλεφουμε με αλφαρικμθτικά. Προγραμματίηοντασ ζχει ςθμαςία να γνωρίηει κανείσ τι είναι τφποσ δεδομζνων. Οι πιο γνωςτοί τφποι δεδομζνων είναι οι: 1 ο πρόγραμμα ςε Python: Εμφάνιςη μίασ γραμμήσ κειμζνου # Printing a line of text in Python. print "Welcome to Python!" 3 Σ ε λ ί δ α - Π λ θ ρ ο φ ο ρ ι κ ι Ι Ι τμι μ α Δ ι ο ί κ θ ς θ σ Ε π ι χ ε ι ρ ι ς ε ω ν Μαϊ ρ γ ι ϊ τ θ σ Α.

2 ο πρόγραμμα: Πωσ μποροφμε να εμφανίςουμε περιςςότερεσ γραμμζσ ςτη Python; Πρζπει να γράψουμε τθν εντολι: print "Welcome\nto\n\nPython!" ι να γράψουμε: print Welcome print to print Python ποιοί ειδικοί χαρακτήρεσ ( ή αλλιώσ χαρακτήρεσ διαφυγήσ escape characters) υπάρχουν όταν γράφουμε ζνα πρόγραμμα; Ακολουθία διαφυγήσ Επεξήγηςη Πρόςθεςη δφο ακεραίων # Simple addition program. # prompt user for input integer1=raw_input("enter first integer:\n") #διάβαζε αλθαπιθμηηικό integer1 = int(integer1) # μεηέηπεψε ηο string ζε integer (ακέπαιο) integer2 = raw_input( "Enter second integer:\n" ) # read string integer2 = int(integer2) #μεηέηπεψε ηο string ζε integer (ακέπαιο) sum = integer1 + integer2 # compute and assign sum print "Sum is", sum # print sum Όηαν κάνοςμε ηιρ βαζικέρ ππάξειρ ηα αποηελέζμαηα πος θα πποκύψοςν είναι: >>> 3 / 4 # ακέπαια διαίπεζη (εξ οπιζμού ζςμπεπιθοπά) 0 >>> 3.0 / 4.0 # ππαγμαηική διαίπεζη (floating-point ηελεζηαίοι) 0.75 >>> 3 // 4 # διαίπεζη κάηω μέποςρ [floor division (only behavior)] 0 >>> 3.0 // 4.0 # διαίπεζη κάηω μέποςρ κινηηήρ ςποδιαζηολήρ floating-point floor division 0.0 >>> from future import division >>> 3 / 4 # true division (new behavior) 4 Σ ε λ ί δ α - Π λ θ ρ ο φ ο ρ ι κ ι Ι Ι τμι μ α Δ ι ο ί κ θ ς θ σ Ε π ι χ ε ι ρ ι ς ε ω ν Μαϊ ρ γ ι ϊ τ θ σ Α.

0.75 >>> 3.0 / 4.0 # true division (same as before) 0.75 Θςμηθείηε ηιρ ενηολέρ πος ακολοςθούν: input(): Προηρέπει ηο τρήζηη να δώζει είζοδο πολλές θορές γράθονηάς ηοσ κάηι και επιζηρέθει ηο string ποσ ειζάγει ο τρήζηης. Ανηίζηοιτα (και ίζως καλύηερα) μπορείηε να τρηζιμοποιήζηε ηη raw_input. παπάδειγμα >>> name = input("enter your name: ") Enter your name: Antonis >>> print("greetings", name, "!") Greetings Antonis! >>> age = input("enter your age: ") Enter your age: 37 int(): Επιζηρέθει ηην ακέραια (int) μορθή ηοσ ορίζμαηος float(): Επιζηρέθει ηην float form (Μορθή κινηηής σποδιαζηολής) ηοσ ορίζμαηος eval(): Επιζηρέθει ηο αποηέλεζμα ηης αποηίμηζης ηοσ string ορίζμαηος όπως οποιαδήποηε έκθραζη ηης Python, ζσμπεριλαμβανομένοσ ηων αριθμηηικών εκθράζεων Προςπαθήςτε να λφςετε τισ αςκήςεισ που ακολουθοφν Άςκηςη 1 Τι κα μασ δϊςουν ωσ αποτζλεςμα οι πράξεισ που ακολουκοφν; >>> 2 + 3 * 6 >>> (2 + 3) * 6 >>> 2 ** 8 >>> 23 / 7 >>> 23 // 7 >>> 23 % 7 >>> 2 + 2 Άςκηςη 2 A) Τι κα μασ δϊςει ωσ αποτζλεςμα θ πράξθ; (5-1) * ((7 + 1) / (3-1)) B) Τι αποτζλεςμα κα μασ δϊςουν οι πράξεισ που ακολουκοφν; >>> Alice + Bob >>> 'Alice' + 42 >>> 'Alice' * 5 >>> 'Alice' * 'Bob' >>> 'Alice' * 5.0 Άςκηςη 3 Να δθμιουργθκεί πρόγραμμα που εμφανίηει το όνομα και τθ διεφκυνςθ του θλεκτρονικοφ ταχυδρομείου, μορφοποιθμζνο κατά τζτοιο τρόπο ωσ να είναι ζξω από ζνα χάρτινο φάκελο που πρόκειται να ταχυδρομθκεί. Το πρόγραμμα δε ηθτείται να διαβάηει είςοδο από το χριςτθ. 5 Σ ε λ ί δ α - Π λ θ ρ ο φ ο ρ ι κ ι Ι Ι τμι μ α Δ ι ο ί κ θ ς θ σ Ε π ι χ ε ι ρ ι ς ε ω ν Μαϊ ρ γ ι ϊ τ θ σ Α.

Άςκηςη 4 Να γραφεί πρόγαμμα που ρωτά το χριςτθ να ειςάγει ωσ είςοδο το όνομά του ι το όνομά τθσ. Το πρόγραμμα κα πρζπει να ανταποκρίνεται με ζνα μινυμα που λζει Hello ςτο χριςτθ, χρθςιμοποιϊντασ το όνομα που δόκθκε. Άςκηςη 5 Να γραφεί ζνα πρόγραμμα που ρωτά το χριςτθ να ειςάγει το πλάτοσ και το μικοσ ενόσ δωματίου. Από τθ ςτιγμι που κα διαβαςτοφν οι τιμζσ, το πρόγραμμα κα πρζπει να υπολογίηει και εμφανίηει το εμβαδό του δωματίου. Το μικοσ και το πλάτοσ να ειςαχκοφν ωσ αρικμοί κινθτισ υποδιαςτολισ. Τόςο θ είςοδοσ όςο και θ ζξοδοσ κα πρζπει να ζχουν μονάδεσ. Ερωτήςεισ (οι ερωτήςεισ μπορεί να βρεθοφν ςτο βιβλίο Ξεκινώντασ με την Python του Tonny Gaddis που υπάρχει ςτα προτεινόμενα βιβλία ςτον Εφδοξο. το παράρτημα του βιβλίου μπορείτε να βρείτε και τισ απαντήςεισ). 1. Τι είναι ζνα πρόγραμμα; 2. Ποιό τμιμα ενόσ υπολογιςτι εκτελεί ςτθν πραγματικότθτα τα προγράμματα; 3. Ποιό μζροσ του υπολογιςτι διατθρεί δεδομζνα για μεγάλο χρονικό διάςτθμα, ακόμθ και όταν δεν υπάρχει τροφοδοςία ρεφματοσ ςτον υπολογιςτι; 4. Πωσ λζγονται τα μζρθ του υπολογιςτι που δζχονται δεδομζνα από τουσ χριςτεσ και από άλλεσ ςυςκευζσ; 5. Πωσ λζγονται τα μζρθ του υπολογιςτι που μορφοποιοφν και παρουςιάηουν δεδομζνα ςτουσ χριςτεσ ι ςε άλλεσ ςυςκευζσ; 6. Ποιο κεμελιϊδεσ ςφνολο προγραμμάτων ελζγχει τισ εςωτερικζσ λειτουργίεσ του υλικοφ του υπολογιςτι; 7. Ποιά είναι θ μόνο γλϊςςα ςτθν οποία πρζπει να είναι γραμμζνεσ οι εντολζσ για να τισ καταλάβει άμεςα ζνασ επεξεργαςτισ; 8. Κάκε γλϊςςα ζχει ζνα ςφνολο κανόνων που πρζπει να ακολουκοφνται αυςτθρά κατά τθ ςφνταξθ ενόσ προγράμματοσ. Πωσ λζγεται το ςφνολο αυτό; 9. Πωσ ονομάηεται το πρόγραμμα που μεταφράηει ζνα πρόγραμμα γραμμζνο ςε γλϊςςα υψθλοφ επιπζδου ςε πρόγραμμα γλϊςςασ μθχανισ; 10. Πωσ ονομάηεται το πρόγραμμα που μεταφράηει και εκτελεί τισ εντολζσ ενόσ προγράμματοσ γραμμζνου ςε γλϊςςα υψθλοφ επιπζδου; 11. Τι τφποσ ςφάλματοσ προκαλείται ςυνικωσ από μία «ανορκόγραφθ» λζξθ-κλειδί, τθν παράλειψ ενόσ ςθμείου ςτίξθσ ι τθ λανκαςμζνθ χριςθ ενόσ τελεςτι; 12. Ποιά ποςότθτα μνιμθσ είναι αρκετι για τθν αποκικευςθ ενόσ γράμματοσ του αλφάβθτου ι ενόσ μικροφ αρικμοφ; 13. Τι ςθμαίνει bit; 14. Σε ποιό ςφςτθμα αρίκμθςθσ γράφονται όλεσ οι τιμζσ ωσ αλλθλουχία από 0 και 1; 15. Ποιό πρότυπο κωδικοποίθςθσ είναι αρκετά εκτενζσ ϊςτε να μπορεί να αντιπροςωπεφςει χαρακτιρεσ πολλϊν γλωςςϊν του κόςμου; 16. Τι ςθμαίνει «ψθφιακά δεδομζνα» και «ψθφιακι ςυςκευι»; 6 Σ ε λ ί δ α - Π λ θ ρ ο φ ο ρ ι κ ι Ι Ι τμι μ α Δ ι ο ί κ θ ς θ σ Ε π ι χ ε ι ρ ι ς ε ω ν Μαϊ ρ γ ι ϊ τ θ σ Α.

Βιβλιογραφία και πηγζσ εργαςτηρίου Tonny Gaddis, Ξεκινϊντασ με τθν Python, 3θ ζκδοςθ, 2015 εκδόςεισ Da Vinci A Byte of Python Ben Stephenson, The Python WorkBook, A Brief Introduction with Exercises and Solutions, Springer 2014 https://foss.ntua.gr/wiki/index.php/ειςαγωγι_ςτθν_python 7 Σ ε λ ί δ α - Π λ θ ρ ο φ ο ρ ι κ ι Ι Ι τμι μ α Δ ι ο ί κ θ ς θ σ Ε π ι χ ε ι ρ ι ς ε ω ν Μαϊ ρ γ ι ϊ τ θ σ Α.