Professional Documents
Culture Documents
Γγυμν_ΣημειωσειςΜαθητη
Γγυμν_ΣημειωσειςΜαθητη
Γγυμν_ΣημειωσειςΜαθητη
Γ΄ γυμνασιου
Πληροφορικη
Κεθάλαιο 2: Δίκηςα
2.1 Καηηγοπίερ δικηύυν… ζελίδα 16
2.2. Δικηςακόρ εξοπλιζμόρ… ζελίδα 17
byte = 8 bits
θαη νλνκάδεηαη ραξαθηήξαο
1) Αξρείν (File) :
όια απνζεθεύνληαη ζε αξρεία
ηύπνο αξρείνπ: δείρλεη ηη έρσ κέζα ζην αξρείν
(πρ : αξρείν Word, Excel, ASCII,
HTML, Access, θηι)
Τύπνη Αξρείσλ
H επέθηαζε ελόο αξρείνπ δείρλεη ηνλ ηύπν ηνπ. Οη πην ζπλεζηζκέλνη ηύπνη αξρείσλ
πνπ ζπλαληνύκε ζηνπο πξνζσπηθνύο ΖΥ είλαη:
2
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Υπάξρεη πάληα ε αλάγθε λα μέξσ πώο παίξλσ πιεξνθνξίεο γηα έλα θάθειν ή γηα έλα
αξρείν:
- θάλσ δεμί θιηθ ζην αληηθείκελν (αξρείν ή θάθεινο)
- θαη επηιέγσ «Ηδηόηεηεο» γηα λα δσ:
- ηνλ ηύπν ηνπ αληηθεηκέλνπ
- ην κέγεζνο ηνπ αληηθεηκέλνπ
- πόηε δεκηνπξγήζεθε
- πόηε ηξνπνπνηήζεθε
- δεκηνπξγία : δεμί θιηθ ζην ζεκείν πνπ ζέισ λα θηηάμσ ην αληηθείκελν θαη ζηε
ζπλέρεηα «Γεκηνπξγία»
Πεγαίλσ εθεί πνπ ζέισ ην αληίγξαθν (θάθεινο ή κνλάδα) θαη δεμί θιηθ θαη
«Δπηθόιιεζε». ,ηη ππάξρεη ζην Πξόρεηξν ζα εκθαληζηεί εθεί.
- μεηακίνηζη : έλα θιηθ ζην αληηθείκελν γηα λα ην επηιέμσ θαη, θξαηώληαο ζπλερώο
παηεκέλν ην πνληίθη, «ζέξλσ» ην αληηθείκελν εθεί πνπ ζέισ.
3
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Αλαινγηθή Δηθόλα
ρξώκαηα: θσο ζε δηαθνξεηηθέο ζπρλόηεηεο θύκαηνο
Χεθηαθή εηθόλα
ρξώκαηα: απνρξώζεηο από θαζνξηζκέλε «παιέηα»
H ςεθηαθή εηθόλα είλαη έλαο δηζδηάζηαηνο πίλαθαο πνπ ζπληίζεηαη από pixels.
pixel
Αλάιπζε Δηθόλαο
Οξηδόληηα θαη θαηαθόξπθε αλάιπζε: πόζν «ππθλά» είλαη ηα ζεκεία ηεο εηθόλαο.
Παπαδείγμαηα:
I. κηα εηθόλα κε αλάιπζε 72 dpi έρεη 72 ζηήιεο ζε πιάηνο κηα ίληζαο θαη 72
γξακκέο ζε ύςνο κηα ίληζαο, άξα 72 x 72 = 5184 ζεκεία ζε κηα ηεηξαγσληθή
ίληζα
II. ζε εηθόλα αλάιπζεο 600x600 dpi ππάξρνπλ
600x600 = 360.000 ζεκεία ζε κηα inch2
4
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Βάζνο Δηθόλαο
Οπιζμόρ: Βάζνο εηθόλαο είλαη ν αξηζκόο ησλ bits πνπ αθηεξώλνπκε ζε θάζε pixel γηα
λ‟απνζεθεύζνπκε ηηο δηαθνξεηηθέο ρξσκαηηθέο απνρξώζεηο
Γιεςκπίνηζη: Τν βάζνο εηθόλαο (color depth) δελ έρεη ζρέζε κε απηό πνπ δείρλεη ε
εηθόλα, νύηε κε ηελ ύπαξμε ηξηζδηάζηαζηαησλ γξαθηθώλ. Δίλαη θαζαξά ηερληθό
ραξαθηεξηζηηθό, πνπ δελ “βιέπεη” ν ρξήζηεο.
Παπάδειγμα: Αλ ππνζέζνπκε όηη ην βάζνο κηαο εηθόλαο είλαη 8 bits, ηόηε θάζε pixel
έρεη “πίζσ” ηνπ (ζηε δηάζεζή ηνπ) αθξηβώο 8 bits γηα λα απνζεθεύζεη ηνλ θσδηθό ηνπ
ρξώκαηνο πνπ έρεη. Απηή ε θαηάζηαζε απνηππώλεηαη ζην ζρήκα:
5
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
1- νπηηθόο θαθόο
2- πίλαθαο CCD γηα λα αηρκαισηίζεη ηελ εηθόλα κε ην θιηθ
3- κλήκε γηα ηελ απνζήθεπζε ησλ θσηνγξαθηώλ πνπ ηξαβήμακε
Βαζική επώηηζη: κηα ςεθηαθή θσηνγξαθηθή κεραλή θαη κηα θσηνγξαθηθή κεραλή
θηλεηνύ, παξάγνπλ θσηνγξαθίεο ηεο ίδηαο πνηόηεηαο, αλ νη πξνδηαγξαθέο αλάιπζεο
θαη βάζνπο είλαη ίδηεο;
Απάνηηζη: πεξίπινθε θαη εμαξηάηαη από πνιινύο άιινπο παξάγνληεο, όπσο ηελ
πνηόηεηα θαη ην κέγεζνο ηνπ θαθνύ, ηα ελζσκαησκέλα πξνγξάκκαηα (software) πνπ
ρξεζηκνπνηνύλ νη ζύγρξνλεο ζπζθεπέο γηα ηε βειηίσζε ησλ θσηνγξαθηώλ (κε άκεζν
απνηέιεζκα).
6
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
όπος
ε αλάιπζε κεηξηέηαη ζε dpi, ην πιάηνο θαη ην ύςνο κεηξηνύληαη ζε ίληζεο θαη ην
βάζνο ζε bits
Παπάδειγμα
Μηα εηθόλα έρεη πιάηνο 10 cm θαη ύςνο 5 cm. Τν βάζoο ηεο είλαη 8 bits. Θέινπκε λα
ηελ απνζεθεύζνπκε κε αλάιπζε 150x100 dpi (πξόρεηξε εηθόλα) θαη κε αλάιπζε
300x200 dpi (γηα θαιύηεξε πνηόηεηα). Πόζα ΚΒ θαηαιακβάλεη ζε θάζε πεξίπησζε;
(Θεσξήζηε: 1 inch = 2,5 cm)
Δπίλςζη:
πιάηνο εηθόλαο =10 cm =10 / 2,5 inches =4 inches
ύςνο εηθόλαο =5 cm = 5 / 2,5 inches =2 inches
Παιέηα εξγαιείσλ
Ζ παιέηα εξγαιείσλ πεξηέρεη κεηαμύ άιισλ ηα εμήο εξγαιεία ζρεδίαζεο θαη
ρξσκαηηζκνύ :
8
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Άιιεο ιεηηνπξγίεο
Control palette: παιέηα ξπζκίζεσλ νξγάλσλ ζρεδίαζεο πρ. κέγεζνο πηλέινπ,
είδνο ζρήκαηνο, θείκελν, θηι
Undo: αλαίξεζε ηειεπηαίαο ελέξγεηαο γηα πεξηπηώζεηο ιαζώλ
Zoom In: κεγέζπλζε εηθόλαο
Zoom Out: ζκίθξπλζε εηθόλαο
Resize: αιιαγή κεγέζνπο ηεο εηθόλαο
Rotate: πεξηζηξνθή ηεο εηθόλαο θαηά ηε γσλία πνπ θαζνξίδεη ν ρξήζηεο
Mirror: ζπκκεηξηθή εηθόλα
Image Information: πιεξνθνξίεο γηα ηελ εηθόλα (αλάιπζε, βάζνο, αξηζκόο
pixels, πιάηνο θαη ύςνο εηθόλαο)
Ζ έληαζε γηα ην θαζέλα από ηα ηξία βαζηθά ρξώκαηα μεθηλά από 0 (απνπζία
ρξώκαηνο) θαη θηάλεη κέρξη 255 (πνιύ έληνλν).
9
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Ζ θηλνύκελε εηθόλα (animation) είλαη κηα ζεηξά από εηθόλεο πνπ πξνβάιινληαη
δηαδνρηθά θαη γηα κηθξό ρξνληθό δηάζηεκα ε θαζεκηά, έηζη ώζηε λα δίλνπλ ηελ
εληύπσζε ηεο θίλεζεο.
To κέγεζνο ζε bytes ελόο animation είλαη ην άζξνηζκα ησλ κεγεζώλ όισλ ησλ
εηθόλσλ πνπ πξνβάιινληαη δηαδνρηθά!
Τν ζρήκα δείρλεη έλα παξάδεηγκα animation από ηελ πξώηε άζθεζε πνπ θάλακε ζηελ
ηάμε. Φαίλνληαη 5 frames ηνπ animation: F4 έσο F8. Ζ εηθόλα ηξνπνπνηείηαη ειαθξά
θαη ζηαδηαθά από ην έλα frame ζην επόκελό ηνπ.
Μέζα ζην πξόγξακκα Animation Shop, έρνπκε ηηο παξαθάησ επηινγέο γηα θηλνύκελεο
εηθόλεο:
Open: άλνηγκα ελόο αξρείνπ θηλνύκελεο εηθόλαο
New: δεκηνπξγία ελόο λένπ θελνύ animation
Save: απνζήθεπζε αξρείνπ θηλνύκελεο εηθόλαο
Copy: αληηγξαθή κηαο εηθόλαο - frame
Paste: επηθόιιεζε ηεο αληηγξακκέλεο εηθόλαο - frame ζην ζεκείν ηνπ
animation πνπ επηιέγνπκε
Cut: δηαγξαθή κηαο εηθόλαο - frame
10
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Τν ςεθηαθό video είλαη κηα κνξθή πιεξνθνξίαο πνπ ρξεζηκνπνηνύκε ζηνπο ΖΥ.
Δίλαη ε πην «βαξηά» κνξθή πιεξνθνξίαο, ππό ηελ έλλνηα όηη ηα αξρεία ςεθηαθνύ
video είλαη πνιύ κεγάια ζε κέγεζνο.
Ο ξπζκόο πξνβνιήο είλαη πνιύ ζεκαληηθό ραξαθηεξηζηηθό γηα ηελ πνηόηεηα ηεο
εηθόλαο!
Σήκεξα, ην standard γηα ηηο ηαηλίεο πνπ θπθινθνξνύλ είλαη λα δείρλνπλ 60 frames per
second (60 FPS).
Παιηόηεξα, πξηλ ηελ ςεθηαθή επνρή, νη ξπζκνί ήηαλ πνιύ ρακειόηεξνη. Γηα
παξάδεηγκα, ηα πξώηα θηικ (όρη ςεθηαθά) είραλ γπξηζηεί κε ξπζκό 24 FPS. Αλ
ζθεθηεί θαλείο κε πνην ηξόπν απηά ηα θηικ κπνξνύλ λα κεηαηξαπνύλ ζε ςεθηαθά, ζα
έρεη πνιιά πξνβιήκαηα λα ιύζεη…
11
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Δθαξκνγέο :
Πξνζνκνίσζε Φπζηθώλ Φαηλνκέλσλ (πρ. Μεηεσξνινγία)
Πξνζνκνίσζε Πεηξακάησλ Φπζηθήο θαη Φεκείαο
Αλαπαξάζηαζε Γνκώλ (πρ. Γέθπξεο, DNA)
Πξνζνκνίσζε Οηθνλνκηθώλ θαη Κνηλσληθώλ κνληέισλ (πρ. θπθινθνξηαθό,
εμππεξέηεζε πειαηώλ)
Πξνζνκνησηέο Πηήζεο
12
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Γξάςηε ζηνλ θελό ρώξν ησλ ζεκεηώζεσλ ηηο απαληήζεηο ησλ αζθήζεσλ, αθνύ ηηο
ιύζνπκε καδί ζην κάζεκα. Έηζη, ζα έρεηε ζίγνπξα ηηο ζσζηέο απαληήζεηο ζηηο
ζεκεηώζεηο ζαο.
Άζθεζε 1
Μηα εηθόλα αλάιπζεο 72 dpi έρεη πιάηνο 2 inches θαη ύςνο 3 inches. Θέινπκε
λ‟απνζεθεύζνπκε ηελ εηθόλα κε βάζνο ρξσκάησλ 16 bits. Πόζα ΚΒ αλακέλεηαη λα
έρεη κέγεζνο;
Λύζε ηεο 1:
Άζθεζε 2
Μηα εηθόλα κεγέζνπο 160 ΚΒ έρεη αλάιπζε 200x100 dpi. Αλ νη δηαζηάζεηο ηεο είλαη
10x2,5 cm, βξείηε ην βάζνο ηεο εηθόλαο απηήο.
Λύζε ηεο 2:
13
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Άζθεζε 3
Μηα εηθόλα έρεη βάζνο 16 bits θαη κέγεζνο: πιάηνο 10 cm θαη ύςνο 5 cm. Θέινπκε λα
ηελ απνζεθεύζνπκε κε αλάιπζε 200 dpi ηε κηα θνξά (ζην αξρείν Α) θαη 400 dpi ηελ
άιιε θνξά (ζην αξρείν Β), γηα δύν πνηόηεηεο. Πόζα bytes θαηαιακβάλεη ζε θάζε
πεξίπησζε;
Λύζε ηεο 3:
Άζθεζε 4
Μηα εηθόλα είλαη απνζεθεπκέλε κε αλάιπζε 800x600 dpi θαη θαηαιακβάλεη 8.4 ΜΒ.
Θέινπκε λα κεηαηξέςνπκε ηελ εηθόλα ζε αλάιπζε 400x300 dpi κε ην ίδην βάζνο
ρξσκάησλ θαη ηηο ίδηεο δηαζηάζεηο, πξνθεηκέλνπ λα θάλνπκε νηθνλνκία ρώξνπ
απνζήθεπζεο. Πόζν ρώξν ζα θαηαιακβάλεη κεηά ηε κείσζε ηεο αλάιπζεο;
Λύζε ηεο 4:
14
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Άζθεζε 5
Λύζε ηεο 5:
Άζθεζε 6
Μηα θηλνύκελε εηθόλα (animation) απνηειείηαη από 8 εηθόλεο - frames. Καζέλα από
ηα frames είλαη κηα εηθόλα κε αλάιπζε 200 dpi x 100 dpi, βάζνο 16 bits θαη
δηαζηάζεηο 2x2 inches. Πόζν αλακέλεηαη λα είλαη ην κέγεζνο νιόθιεξνπ ηνπ
animation ζε ΚΒ;
Λύζε ηεο 6:
15
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Κεθάιαην 2: Γίθηπα
Ζ κέγηζηε απόζηαζε κεηαμύ δύν ζηαζκώλ ελόο δηθηύνπ θαζνξίδεη θαη ηε κέγηζηε
αθηίλα θάιπςεο ηνπ δηθηύνπ.
16
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Ζ ηνπνινγία ηνπ δηθηύνπ πεξηγξάθεη ηνλ ηξόπν δηαζύλδεζεο ησλ ΖΥ ζην δίθηπν θαη
ηελ ηνπνζέηεζή ηνπο ζην ρώξν.
17
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Μεηάθξαζε Πξνγξάκκαηνο
Ο ππνινγηζηήο θαηαιαβαίλεη κόλν ηε γιώζζα ησλ 0/1. Έηζη, θάζε πξόγξακκα γηα λα
εθηειεζηεί ζηνλ ΖΥ πξέπεη λα έρεη δπαδηθή κνξθή (0/1). Οη πξνγξακκαηηζηέο όκσο
είλαη πνιύ δύζθνιν λα γξάθνπλ απεπζείαο ζηε δπαδηθή γιώζζα ηνπ ΖΥ. Έηζη,
έρνπκε θηηάμεη γιώζζεο πξνγξακκαηηζκνύ γηα λα κπνξνύκε επθνιόηεξα λα
ζπληάζζνπκε πξνγξάκκαηα ζ‟απηέο.
Παξαδείγκαηα γισζζώλ πξνγξακκαηηζκνύ:
Logo
Basic
Pascal
C θαη C++
Java
Python
18
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
19
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Παξάδεηγκα εληνιήο:
>>> i = 8
Ζ παξαπάλσ εληνιή απνζεθεύεη ηελ ηηκή 8 ζηε κεηαβιεηή πνπ νλνκάδεηαη i. Ζ
κεηαβιεηή i είλαη ηύπνπ αθεξαίνπ int.
Με ηελ εληνιή:
>>> i = 1
εθρσξνύκε λέα ηηκή, ην 1, ζηε κεηαβιεηή i. Ζ πξνεγνύκελε ηηκή 8 ράζεθε νξηζηηθά.
Με ηελ εληνιή:
>>> i = i + 1
παίξλνπκε ηελ ηηκή ηνπ i θαη ηεο πξνζζέηνπκε 1. Γειαδή, ην i ηώξα ζα έρεη λέα ηηκή,
ηελ ηηκή 2.
20
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Παξάδεηγκα εληνιήο:
>>> mikos = 2.54
Ζ παξαπάλσ εληνιή εθρσξεί ηελ ηηκή 2.54 ζηε κεηαβιεηή πνπ νλνκάδεηαη mikos. Ζ
κεηαβιεηή mikos είλαη ηύπνπ θηλεηήο ππνδηαζηνιήο float (πξαγκαηηθνί αξηζκνί).
Με ηελ εληνιή:
>>> metakikisi = mikos + 10.5
παίξλνπκε ηελ ηηκή ηεο κεηαβιεηήο mikos θαη ηεο πξνζζέηνπκε 10.5. Τν απνηέιεζκα
ην απνζεθεύνπκε ζηε κεηαβιεηή κε ην όλνκα metakinisi.
Με ηελ εληνιή:
>>> print(metakinisi)
ε Python ζα ηππώζεη ηελ ηηκή ηεο κεηαβιεηήο metakinisi, δειαδή ζα ηππώζεη ζηελ
νζόλε ηνλ αξηζκό >>> 13.04
Παξάδεηγκα εληνιήο:
>>> color = “blue”
Ζ παξαπάλσ εληνιή εθρσξεί ηελ ηηκή “blue” ζηε κεηαβιεηή πνπ νλνκάδεηαη color. Ζ
κεηαβιεηή color είλαη ηύπνπ ζπκβνινζεηξάο string (θείκελν). Πξνζνρή, γηα ηηο
ζπκβνινζεηξέο ρξεζηκνπνηνύκε πάληα εηζαγσγηθά.
Με ηελ εληνιή:
>>> keimeno = “Hello World”
ε θξάζε Hello World απνζεθεύεηαη ζηε κεηαβιεηή πνπ νλνκάδεηαη θείκελν.
Με ηελ εληνιή:
>>> print(keimeno)
ε Python ζα ηππώζεη ηελ ηηκή ηεο κεηαβιεηήο keimeno, δειαδή ζα ηππώζεη ζηελ
νζόλε ηε θξάζε:
>>> Hello World
Η εληνιή input
Σε πνιιά πξνγξάκκαηα είλαη ρξήζηκν λα κπνξεί ν ρξήζηεο λα δίλεη από ην
πιεθηξνιόγην ηελ ηηκή κηαο κεηαβιεηήο. Ζ εληνιή input δηαβάδεη από ην
πιεθηξνιόγην ηελ ηηκή κηα κεηαβιεηήο. Αλάινγα κε ην ηη ζα πιεθηξνινγήζεη ν
ρξήζηεο, ε Python θαηαιαβαίλεη ηνλ ηύπν ηεο κεηαβιεηήο, δειαδή αλ είλαη int
(δειαδή integer), float (δειαδή floating point) ή str (δειαδή string).
21
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Παξάδεηγκα 1:
>>> i=input(“Give me a number :”)
>>> 18
πεξηκέλνπκε λα δηαβάζνπκε κηα ηηκή (πρ. 18) γηα ηε κεηαβιεηή i, πνπ ζα είλαη ηύπνπ
int (αθέξαηνο αξηζκόο).
Παξάδεηγκα 2:
>>> x=input(“Give me again :”) >>> 3,14168
πεξηκέλνπκε λα δηαβάζνπκε κηα ηηκή γηα ηε κεηαβιεηή x πνπ ζα είλαη ηύπνπ float
(πξαγκαηηθόο αξηζκόο).
Παξάδεηγκα 3:
>>> name = input (“What is your name ?”)
What is your name ? “Yannis”
>>> print (“Hi”, name, “nice to meet you”)
for i in range(A):
εληνιή 1
...
εληνιή θ
όπνπ Α αθέξαηνο αξηζκόο. Ζ Python εθηειεί όιεο ηηο εληνιέο 1 έσο θ αθξηβώο ηόζεο
θνξέο, όζεο πξνζδηνξίδεη ν αξηζκόο Α.
22
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Σηε ζπλάξηεζε range κόλν ην «κέρξη» είλαη ππνρξεσηηθό. Ζ αξρή θαη ην βήκα
κπνξνύλ λα παξαιεηθζνύλ. Τόηε ε Python ζεσξεί αξρή ην 0 θαη βήκα ην 1… Απηό
αθξηβώο ζπλέβαηλε ζηα 2 πξνεγνύκελα παξαδείγκαηα.
while ζςνθήκη :
ενηολή 1
...
ενηολή κ
ζν ηζρύεη ε ζπλζήθε, ε Python εθηειεί κε ηε ζεηξά όιεο ηηο εληνιέο 1 έσο θ. ηαλ
ζηακαηήζεη λα ηζρύεη ε ζπλζήθε, ηειεηώλεη θαη ε αλαθύθισζε while.
Παξάδεηγκα 2 (εθηππώλεη όινπο αξηζκνύο από ην 1 κέρξη ηνλ αξηζκό max πνπ έρεη
δώζεη ν ρξήζηεο από ην πιεθηξνιόγην):
>>> max = input(“Give me the maximum number ”)
>>> i = 1
>>> while i <= max :
print(i)
i = i +1
Πξνζνρή: ηε ζηηγκή πνπ γξάθνπκε απηό ην πξόγξακκα δελ μέξνπκε πόζεο θνξέο ζα
εθηειεζηεί ε αλαθύθισζε while. Απηό ζα ην θαζνξίζεη ν αξηζκόο max πνπ ζα
πιεθηξνινγήζεη ν ίδηνο ν ρξήζηεο!
23
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Η δηαδηθαζία athroisma
Αο θηηάμνπκε ηώξα κηα καζεκαηηθά ρξήζηκε δηαδηθαζία. Τν πξόγξακκα απηό ζα
δεηάεη 2 αθέξαηνπο αξηζκνύο από ηνλ ρξήζηε, ζα δηαβάδεη ηνπο 2 αξηζκνύο πνπ ζα
πιεθηξνινγεί ν ρξήζηεο θαη ζα ηππώλεη ην άζξνηζκά ηνπο.
Παξάδεηγκα:
>>> def athroisma ( ):
a=input(“Dose ton arithmo 1 edw ”)
b=input(“Dose ton arithmo 2 edw ”)
sum = int(a)+int(b)
print (“to athroisma tous einai ”, sum)
Η δηαδηθαζία propaideia
Ζ δηαδηθαζία propaideia ζα δηαβάδεη από ην ρξήζηε έλαλ αξηζκό θαη ζα ηππώλεη ηελ
πξνπαίδεηά ηνπ:
Παξάδεηγκα:
>>> def propaideia( ):
vasi=int(input(“Dose enan arithmo ”))
for i in range(11):
apotelesma = i*vasi
print(i, “*”,vasi, “=”, apotelesma)
print (“Sas eyxaristoume. Geia sas”)
24
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Η δηαδηθαζία dinami2
Παξάδεηγκα:
>>> def dinami2( ):
a=int(input(“Dose tνn arithmo edw ”))
c=a*a
print (“to tetragono tou”, a, “isoutai me ”, c)
If ζπλζήθε:
εληνιή α1
εληνιή α2
εληνιή α3
…
else:
εληνιή β1
εληνιή β2
εληνιή β3
…
Θα αμηνπνηήζνπκε ηώξα ηελ εληνιή if γηα λα θάλνπκε θάπνηνπο ειέγρνπο ζηε
δηαδηθαζία dinami( ) πνπ νξίζακε πην πάλσ. Σπγθεθξηκέλα, ζα ειέγρνπκε αλ ν
αξηζκόο πνπ πιεθηξνινγεί ν ρξήζηεο είλαη αξλεηηθόο ή ζεηηθόο. Αλ είλαη αξλεηηθόο,
ζα βγάδνπκε έλα κήλπκα πξνεηδνπνίεζεο γηα ηνλ ρξήζηε.
def dinami2( ):
x=int(input("Dose arithmo "))
if x<=0:
print("Prosoxi, edoses arnhtiko arithmo")
else:
z=x*x
print("To tetragono tou", x,"einai", z)
Ζ ζηνίρηζε ζηελ εληνιή if ρξεηάδεηαη ηδηαίηεξε πξνζνρή: ε ιέμε else πξέπεη λα είλαη
ζηνηρηζκέλε θάησ από ηε ιέμε if, ελώ όιεο νη εληνιέο πνπ εθηεινύληαη κε ην if ή ην
else πξέπεη λα είλαη ζηνηρηζκέλεο πην κέζα. Κάηη άιιν πνπ ρξεηάδεηαη πξνζνρή ζηελ
εληνιή if είλαη όηη αλ ζηε ζπλζήθε ειέγρνπκε ηζόηεηα, πξέπεη λα ρξεζηκνπνηήζνπκε
25
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
δηπιό ίζνλ, δειαδή ==. Έλα παξάδεηγκα ειέγρνπ ζπλζήθεο κε ίζνλ ζα κπνξνύζε λα
είλαη:
if arithmos == 0 :
print(„den ginetai diairesi me 0‟)
Πάκε ινηπόλ:
Παπάδειγμα 1:
>>> def propaideia(number):
for i in range(11):
apotelesma = i*number
print(i, “*”, number, “=”, apotelesma)
print (“Sas eyxaristoume. Geia sas”)
Ζ παξάκεηξνο number ζα πάξεη ηελ ηηκή 8 θαη ηειηθά ζα ηππσζεί ε πξνπαίδεηα ηνπ 8.
Αληίζηνηρα, θαιώληαο:
>>> propaideia (51)
Παπάδειγμα 2:
def dinami2(x):
y=x*x
print (“to tetragono tou”, x, “isoutai me ”, y)
26
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Έλα πξόγξακκα πνπ ζα δηαβάδεη από ην πιεθηξνιόγην έλα αξηζκό, ζα ξσηάεη ηνλ
ρξήζηε αλ ζέιεη λα ηππώζεη ην ηεηξάγσλν ή ηελ πξνπαίδεηα ηνπ αξηζκνύ πνπ κόιηο
δηάβαζε θαη, αλάινγα κε ηελ απάληεζε ηνπ ρξήζηε, ζα ηππώλεη απηό πνπ δηάιεμε.
Παπάδειγμα 3:
def olokliromeno( ):
a=int(input(“Dose enan arithmo edw ”))
print(“Gia ton arithmo, theleis propaideia h tetragono?”)
choise=input(“Dose p gia propaideia h t gia tetragono”)
if choise== ”p” :
propaideia(a)
else:
dinami2(a)
Η δηαδηθαζία dinami
Παξάδεηγκα:
>>> def dinami( ):
a=float(input(“Dose enan pragmatiko arithmo ”))
k=int(input(“Dose ton ektheth “)
c=1
for i in range(k):
c=c*a
print (“to”, a,”eis thn “, k, “isoutai me “, c)
Αλαθεθαιαηώλνληαο:
ηαλ δίλσ int(A), κεηαηξέπσ ην Α ζε αθέξαην αξηζκό (integer)
27
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Γηα λα ζπκπεξηιάβνπκε απηέο ηηο εληνιέο ηεο ρειώλαο ζηε δνπιεηά καο, αξθεί λα
θαιέζνπκε κηα βηβιηνζήθε πνπ νλνκάδεηαη “turtle” κε ηελ εληνιή:
>>> from turtle import *
Πξόθεηηαη, ινηπόλ, γηα κηα εληνιή πνπ δίλνπκε ακέζσο ζηελ αξρή γηα λα κπνξνύκε
λα ρξεζηκνπνηήζνπκε ηα γξαθηθά ηεο ρειώλαο.
- fd(A)
όπνπ A πξαγκαηηθόο αξηζκόο:
αλ A>0, ε ρειώλα θηλείηαη κπξνζηά, ελώ αλ Α<0 ε ρειώλα θηλείηαη
πξνο ηα πίζσ
- bk(A)
όπνπ A πξαγκαηηθόο αξηζκόο:
αλ Α>0, ε ρειώλα θηλείηαη πξνο ηα πίζσ, ελώ αλ Α<0 ε ρειώλα
θηλείηαη κπξνζηά. Σε θάζε πεξίπησζε ε ρειώλα δελ αιιάδεη
πξνζαλαηνιηζκό.
- undo( )
αλαηξεί ηελ ηειεπηαία εληνιή θαη ηα γξαθηθά ηεο ζβήλνληαη
- rt(A)
όπνπ A πξαγκαηηθόο αξηζκόο:
αλ Α>0, ε ρειώλα ζηξίβεη δεμηά θαηά όζεο κνίξεο πξνζδηνξίδεη ην
όξηζκα Α, ελώ αλ Α<0 ε ρειώλα ζηξίβεη πξνο ηα αξηζηεξά
- lt(A)
όπνπ A πξαγκαηηθόο αξηζκόο:
αλ Α>0, ε ρειώλα ζηξίβεη αξηζηεξά θαηά όζεο κνίξεο πξνζδηνξίδεη ην
όξηζκα Α, ελώ αλ Α<0 ε ρειώλα ζηξίβεη πξνο ηα δεμηά
- clear( )
ζβήλνληαη όια ηα γξαθηθά ζην παξάζπξν γξαθηθώλ. Ζ ρειώλα δελ
κεηαθηλείηαη θαζόινπ από ηε ζέζε ηεο.
- pencolor(“σπώμα”)
Τν κνιύβη παίξλεη ην ρξώκα πνπ πξνζδηνξίδνπκε. Σηηο επόκελεο
θηλήζεηο ηεο ρειώλαο, ην ίρλνο πνπ ζα αθήλεη ζα έρεη απηό ην ρξώκα
(κέρξη λα ην μαλαηξνπνπνηήζνπκε...)
Παξάδεηγκα: >>> pencolor(“green”)
- pensize(A)
όπνπ A αθέξαηνο αξηζκόο:
28
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
- bgcolor(“σπώμα”)
To θόλην (background) ηεο νζόλεο γξαθηθώλ παίξλεη ην ρξώκα πνπ
πξνζδηνξίδνπκε
- pu( )
H ρειώλα ζεθώλεη ην κνιύβη θαη δελ αθήλεη ίρλνο ζηηο επόκελεο
θηλήζεηο.
- pd( )
H ρειώλα θαηεβάδεη ην κνιύβη θαη γξάθεη θαλνληθά ζηηο επόκελεο
θηλήζεηο.
- goto(x,y)
H ρειώλα κεηαθηλείηαη θαη πεγαίλεη ζηε ζέζε πνπ πξνζδηνξίδνπλ νη
ζπληεηαγκέλεο x θαη y.
Παξαδείγκαηα: >>> goto(100,200)
>>> goto(-50,-50.5)
>>> goto(0,0)
H ηειεπηαία εληνιή goto(0,0) ζηέιλεη ηε ρειώλα ζην θέληξν ηεο
νζόλεο.
- hd( ) ή hideturtle( )
H ρειώλα εμαθαλίδεηαη από ην νξαηό πεδίν ηνπ ρξήζηε. Κηλείηαη
θαλνληθά θαη γξάθεη θαλνληθά, αιιά δελ θαίλεηαη θαζόινπ ζηελ νζόλε
ε ζέζε ηεο.
- st( ) ή showturtle
Ζ ρειώλα μαλαεκθαλίδεηαη ζηε ζέζε πνπ βξίζθεηαη (δειαδή αλαίξεζε
ηεο εληνιήο hd( ) ...)
- setheading(A)
Με απηήλ ηελ εληνιή δηαηάδνπκε ηε ρειώλα λα θνηηάμεη πξνο
ζπγθεθξηκέλε θαηεύζπλζε. Γειαδή πξνζδηνξίδνπκε ηε γσληά ζηελ
νπνία ζα θνηηάδεη.
Παξαδείγκαηα: >>> setheading(0)
>>> setheading(90)
Σην πξώην παξάδεηγκα, ε ρειώλα ζα θνηηάμεη δεμηά. Σην δεύηεξν
παξάδεηγκα, ε ρειώλα ζα θνηηάμεη πάλσ.
29
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
πνηε θαιώ: >>> kiklos( ) ζα θηηάρλσ έλα θύθιν. πνηε θαιώ >>> tetragono( ) ζα
θηηάρλσ έλα ηεηξάγσλν κε πιεπξά 100.
Καιώληαο >>> tetragono(50) ζα πεξάζσ ηνλ αξηζκό 50 ζηελ παξάκεηξν plevra θαη
ζα θηηάμσ ηειηθά έλα ηεηξάγσλν κε πιεπξά 50.
30
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Γηαδηθαζία asteri_beltiomeno
Ζ ιύζε, ινηπόλ, ζην πξνεγνύκελν πξόβιεκά καο είλαη λα γίλνπλ πην αξαηέο νη
αθηίλεο:
>>> def asteri_beltiomeno(plevra):
for i in range(36):
fd(plevra)
bk(plevra)
rt(10)
31
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
32
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
ην αληηθείκελν alex ζα δσγξαθίζεη έλα αζηέξη κε πιεπξά 100 θαη ην αληηθείκελν gina
έλα αζηέξη κε πιεπξά 80.
Ζ κεηαβιεηή a ζα πάξεη ηηκέο ζην ζύλνιν (alex, gina) θαη γηα θάζε ηηκή ηνπ a, ζα
εθηειέζνπκε ηελ εληνιή asteri ( a , 50 ). Γειαδή, alex θαη gina ζα δσγξαθίζνπλ από
έλα αζηέξη κε πιεπξά 50, ζηε ζέζε πνπ βξίζθεηαη ην θάζε αληηθείκελν.
33
Εθπαηδεσηήρηο “TO ΠΑΓΚΡΗΤΙΟΝ" - Πιεροθορηθή Γ΄ Γσκλαζίοσ
Κάλνληαο θιηθ εθεί θαη αθνινπζώληαο ηηο (εύθνιεο) νδεγίεο, εγθαζηζηνύκε ηελ
Python κόληκα ζηνλ ΖΥ καο. Από εθεί θαη πέξα, θάζε θνξά πνπ θάλνπκε θιηθ ζην
ζρεηηθό εηθνλίδην, ηξέρνπκε ηo πξνγξακκαηηζηηθό πεξηβάιινλ ηεο Python.
34