Σπουδαίες ιδέες στην Επιστήµη των Υπολογιστών

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Σπουδαίες ιδέες στην Επιστήµη των Υπολογιστών"

Transcript

1

2 Alan W. Biermann Σπουδαίες ιδέες στην Επιστήµη των Υπολογιστών Μια προσιτή εισαγωγή Μετάφραση - Επιστηµονική επιµέλεια: Στ. Νικολόπουλος Λ. Παληός Πανεπιστηµιακές Εκδόσεις Κρήτης Ιδρυτική δωρεά Παγκρητικής Ενώσεως Αµερικής Ηράκλειο 2008

3 ΠΑΝΕΠΙΣΤΗΜΙΑΚΕΣ ΕΚ ΟΣΕΙΣ ΚΡΗΤΗΣ Ι ΡΥΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΡΕΥΝΑΣ Ηράκλειο Κρήτης: Τ.Θ. 1527, Τηλ , , Fax: Αθήνα: Μάνης 5, Τηλ Fax: ΣΕΙΡΑ: ΠΑΝΕΠΙΣΤΗΜΙΑΚΗ ΒΙΒΛΙΟΘΗΚΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΕΠΙΣΤΗΜΗ ΥΠΟΛΟΓΙΣΤΩΝ Διευθυντές Σειράς: Γεώργιος Φρ. Γεωργακόπουλος, Ιωάννης Παπαδόγγονας Τίτλος πρωτοτύπου: c 1990, 1997: c για την ελληνική γλώσσα: Μετάφραση - Επιστηµονική επιµέλεια: Επιµέλεια κειµένου, σελιδοποίηση, επιµέλεια έκδοσης: Στοιχειοθεσία: Εφαρµογή L A TEX: Σχεδίαση σχηµάτων: Σχεδίαση εξωφύλλου: Great Ideas in Computer Science. A Gentle Introduction, 2nd edition Massachusetts Institute of Technology MIT Press 1997, Πανεπιστηµιακές Εκδόσεις Κρήτης Σταύρος Νικολόπουλος, Λεωνίδας Παληός Ιωάννης Παπαδόγγονας (ΠΕΚ) Σοφία Βλάχου David James McClurkin Νίκος αλαµάγκας Θεόδωρος Μίχος Βάσω Αβραµοπούλου ISBN

4 Στους γονείς µου, David και Ruth Biermann

5 Περιεχόµενα Πρόλογος µεταφραστών - επιµελητών Πρόλογος δεύτερης έκδοσης Πρόλογος xi xiii xv Πανεπιστηµιακές σπουδές στην ΕπιστήµηΥπολογιστών: Μια εισαγωγή xix Φήµες... xix ΣπουδέςστηνΕπιστήµη Υπολογιστών... xx Ειδικό λογισµικό για τη διευκόλυνση της µελέτης... xxi Μια προσέγγιση για αναγνώστες µε περιορισµένο µαθηµατικό υπόβαθρο... xxii 1 Εισαγωγήστον προγραµµατισµό: Κωδικοποίηση δένδρων απόφασης Καλάνέα (A) ένδρα απόφασης(b) Ταπρώτα βήµατα στον προγραµµατισµό (B) Ανάγνωση και αποθήκευσηδεδοµένων(b) Προγραµµατισµός δένδρων απόφασης(b) Ο συµβολισµός βέλουςκαι οι χρήσειςτου (C) Σύνοψη(B) ιαχ είρισηκειµένου και σχεδίαση αλγορίθµων Τιείναι ηδιαχείριση κειµένου; (A) Σχεδίαση αλγορίθµων και προγραµµάτων για διαχείριση κειµένου (B) Τύποι δεδοµένων: συµβολοσειρές και ακέραιοι (B) Περισσότερα γιατηδιαχείριση κειµένου (B) Προγραµµατισµός λειτουργιών επεξεργασίας κειµένου (B) Πρώτες προσπάθειες χρήσης βρόχων (B) Κατασκευή του επεξεργαστή κειµένου (B) Σχεδίασηενόςπρογράµµατοςσυνοµιλίας (C) Σύνοψητης TurboPascal (C) Σύνοψη (B) Αριθµητικοίυπολογισµοί και µελέτη συναρτήσεων Υπολογισµός αριθµητικών ποσοτήτων(a) Απλοί υπολογισµοί(b) Συναρτήσεις (B) Επαναληπτικοί βρόχοι και µελέτησυναρτήσεων(b) Εύρεση βέλτιστης τιµής(b) Καταχώριση πληροφοριών σε πίνακες(b)... 85

6 viii Περιεχόµενα 3.7 Υπολογισµός αθροισµάτων, ελαχίστων και µεγίστων (B) Πρότυπα κώδικα (B) Τοποθέτηση πραγµάτων σε σειρά και ένα ιδιαίτερο χαρακτηριστικό των συναρτήσεων (B) Τοποθέτηση των συναρτήσεωνσεσειρά (C) Σύνοψη (B) Καθοδικός προγραµµατισµός, υποπρογράµµατα, εφαρµογή βάσης δεδοµένων Ένα αστυνοµικό πρόβληµα (A) Καθοδικός προγραµµατισµός και ένα πρόγραµµα βάσης δεδοµένων (B) Υποπρογράµµατα (B) Υποπρογράµµατα µε εσωτερικές µεταβλητές (B) Υποπρογράµµατα µε πίνακες ως παραµέτρους (B) Παραδείγµατα επικοινωνίας υποπρογραµµάτων (B) Αποθήκευση και εκτύπωση των γεγονότων µιας βάσης δεδοµένων (B) Αναπαράσταση ερωτήσεων και εύρεση των απαντήσεών τους (B) Σύνθεση του προγράµµατος βάσης δεδοµένων και προσθήκη σχολίων (B) Μια άλλη εφαρµογή: σχεδίαση εικόνας µε την Pascal (C) Αναδροµή (C) Αντικειµενοστρεφής προγραµµατισµός (C) Σύνοψη (B) Προσοµοίωση Προβλέποντας τοµέλλον(a) Κερδίζοντας έναν αγώνα ταχύτητας αυτοκινήτων (B) Αποφεύγονταςένανλοιµό (C) Παρατηρώντας την εξέλιξηενόςείδους(c) Τιµορφή θα έχει;(c) Σύνοψη(A) Τεχ νολογία λογισµικού Ο πραγµατικόςκόσµος(a) ιδάγµατα από προγραµµατιστικά έργα µεγάλης κλίµακας (B) Μεθοδολογίεςτεχνολογίας λογισµικού (B) Ο κύκλος ζωής ενός προγράµµατος(b) Σύνοψη(B) Ηλεκτρικά κυκλώµατα Πώς λειτουργούνοιυπολογιστές;(a) Η δοµή του υπολογιστή(b) Κυκλώµατα υπολογισµού απλών συναρτήσεων (B) Κυκλώµατα υπολογισµού σύνθετων συναρτήσεων (B) Ηλεκτρονόµοι(B) Τοδυαδικό σύστηµααρίθµησης (B) Τα κυκλώµατα για την πρόσθεση δύο ψηφίων (B) Τοκύκλωµα πρόσθεσης(b) Αποθήκευση αλφαριθµητικών χαρακτήρων στη µνήµη (C) Τρανζίστορ και ολοκλήρωση πολύ µεγάλης κλίµακας (B) Σύνοψη (B)...212

7 Περιεχόµενα ix 8 Αρχ ιτεκτονική υπολογιστών Η δοµή ενός υπολογιστή (A) Παράδειγµα αρχιτεκτονικής: ο υπολογιστής P88 (B) Προγραµµατίζοντας τονυπολογιστήp88 (B) Σύνοψη(B) Μεταγλώττιση «Μεταφράζοντας» την Pascal στη γλώσσα του υπολογιστή (A) Συντακτικοί κανόνεςπαραγωγής(b) Απόδοση σηµασιολογικού περιεχοµένου στους κανόνες παραγωγής (B) Η σηµαντική της Pascal (B) Η µεταγλώττιση προγραµµάτων που περιέχουν βρόχους (C) Γλώσσες προγραµµατισµού (B) Σύνοψη(B) Εικονικά υπολογιστικά περιβάλλοντα Χρησιµοποιήστε τηφαντασία σας (A) Ένα εικονικό υπολογιστικό περιβάλλον (B) Τουλισµικό (A) Τολειτουργικό σύστηµα(b) Ο χρονοµερισµός ενδράσει (B) Αρχεία (B) Εξερευνώντας τοσύστηµα αρχείων (B) Ο διερµηνέας εντολών (B) ιεκδίκηση µνήµηςκαι σελιδοποίηση (C) Σύνοψη (B) Επικοινωνία υπολογιστών Οι δυνατότητεςπου παρέχειτο ιαδίκτυο (A) Στρώµατα καιτοπικάδίκτυα (B) ίκτυα ευρείας περιοχής(b) Το στρώµα του διαδικτυακού πρωτοκόλλου(b) Περισσότερα γιατηδιευθυνσιοδότηση(c) Άλλες εφαρµογές (A) Εξερευνώντας το ιαδίκτυο (A) Προβλήµατα (C) Σύνοψη (B) Χρόνος εκτέλεσης προγράµµατος Περιορισµοί στην επιστήµη των υπολογιστών (A) Χρόνος εκτέλεσης προγράµµατος(a) Ευχερείς υπολογισµοί (B) υσχερείς υπολογισµοί(b) Μερικά πρακτικά προβλήµατα µε πολύ δαπανηρές λύσεις (B) Αναγνώριση ευεπίλυτων και δυσεπίλυτων προβληµάτων (B) Προσεγγιστικές λύσεις σε δυσεπίλυτα προβλήµατα (C) Σύνοψη(B) Παράλληλοι υπολογισµοί Χρησιµοποιώντας πολλούς επεξεργαστές µαζί (A) Παράλληλοιυπολογισµοί (B) Επικοινωνία µεταξύεπεξεργαστών(b) Παράλληλοι υπολογισµοί σε κορεσµένο υπολογιστή(b) Παραλλαγές στην αρχιτεκτονική του παράλληλου υπολογιστή (B)

8 x Περιεχόµενα 13.6 Πολυσυνδετική αρχιτεκτονική(c) Εκµάθηση βαρών σε πολυσυνδετικές µηχανές (C) Σύνοψη(B) Μη επιλυσιµότητα εν αρκείηταχύτητα (A) Ύπαρξη µηυπολογίσιµων συναρτήσεων (B) Προγράµµατα που διαβάζουν προγράµµατα (B) Επίλυση του προβλήµατος τερµατισµού (B) Παραδείγµατα µη επιλύσιµων προβληµάτων (B) Απόδειξηµηεπιλυσιµότητας (C) Σύνοψη(B) Τεχνητή νοηµοσύνη Τοόραµα (A) Αναπαράστασητης γνώσης (B) Κατανόηση(B) Εκµάθηση(B) Πλαίσια (B) Μια εφαρµογή: επεξεργασία φυσικής γλώσσας (B) Συλλογισµός (B) Παίγνια (B) Παίγνια: Παρατηρήσεις ιστορικού χαρακτήρα (C) Έµπειρα συστήµατα (B) Σηµερινή κατάσταση Προοπτικές(B) Σύνοψη (A) Παράρτηµα Α 427 Παράρτηµα Β 431 Βιβλιογραφία 437 Ευρετήριο 439

9 Πρόλογος µεταφραστών - επιµελητών Με χαρά παρουσιάζουµε, µέσω των Πανεπιστηµιακών Εκδόσεων Κρήτης, το βιβλίο µε τίτλο Σπουδαίεςιδέες στην Επιστήµη των Υπολογιστών: Μια προσιτή εισαγωγή,πουαποτελεί την ελληνική µετάφραση του βιβλίου Great Ideas in Computer Science: A Gentle Introduction,τουAlanW.Biermann. Το βιβλίο καλύπτει µε απλό, κατανοητό, αλλά ταυτόχρονα και επιστηµονικό τρόπο τους κυριότερους τοµείς µελέτης της επιστήµης των υπολογιστών, οι οποίοι έχουν συµβάλει στην έως τώρα εξελικτική της πορεία και αποτελούν τη βάση για την περαιτέρω ανάπτυξη και παρουσία της στον χώρο των επιστηµών του µέλλοντος. Παρουσιάζονται οι θεµελιώδεις ιδέες της επιστήµης και καλύπτονται τοµείς όπως οι γλώσσες προγραµ- µατισµού και η δηµιουργία µεταγλωττιστών, η αρχιτεκτονική υπολογιστών, η θεωρία αλγορίθµων και οι επεκτάσεις της σε όλο το υπολογιστικό φάσµα, τα δίκτυα υπολογιστών, τα κατανεµηµένα συστήµατα πληροφοριών και βάσεων δεδοµένων, οι παράλληλοι υπολογισµοί και η λειτουργία των παραλλήλων υπολογιστών, η αυτοµατοποίηση του τυπικού συλλογισµού και της λογικής, η τεχνητή νοηµοσύνη. Το βιβλίο απευθύνεται σε διδάσκοντες και φοιτητές πανεπιστηµιακών και πολυτεχνικών τµηµάτων πληροφορικής και σε φοιτητές τµηµάτων θετικών και οικονοµικών σχολών. Επιπρόσθετα, λόγωτου ιδιαίτερου τρόπου αντιµετώπισης των επιστηµονικών θεµάτων που πραγµατεύεται, µπορεί κάλλιστα να αποτελέσει βασικό εγχειρίδιο για φοιτητές θεωρητικών επιστηµών, αλλά και χρήσιµο οδηγό για οποιονδήποτε επιθυµεί να προσεγγίσει µε απλό τρόπο την επιστήµη των υπολογιστών. Το εγχείρηµα της µετάφρασης και της επιστηµονικής επιµέλειας ενός τεχνικού εγχειριδίου δεν είναι εύκολο έργο.το έργο αυτό γίνεται ακόµη πιο δύσκολο όταν τεχνικές έννοιες περιγράφονται και επεξηγούνται σε ένα απλουστευµένο πλαίσιο µάθησης και µεταφοράς της γνώσης. Ένα τέτοιοέργο είχαµε να φέρουµε εις πέρας και εµείς. Εργαστήκαµε µε γνώµονα να µεταφέρουµε πιστά το πνεύµα του συγγραφέα, και να αποδώσουµε µε δόκιµους αλλά και εύχρηστους όρους την ορολογία του πρωτοτύπου θα έχουµε επιτύχει εάν η προσπάθειά µας συµβάλει στην ευρύτερη και καλύτερη κατανόηση των πεδίων της επιστήµης των υπολογιστών. Θα θέλαµε να ευχαριστήσουµε θερµά τον ιευθυντή των Πανεπιστηµιακών Εκδόσεων Κρήτης, κ. Στέφανο Τραχανά, για την ανάθεση του έργου, καθώς και όλους όσους εργάστηκαν για την έκδοση αυτή. Σταύρος. Νικολόπουλος Λεωνίδας Παληός Ιωάννινα, Μάιος 2007

10 Πρόλογος δεύτερης έκδοσης Ηδεύτερηαυτή έκδοση του βιβλίου περιλαµβάνει νέα κεφάλαια σχετικά µε την προσο- µοίωση, τα λειτουργικά συστήµατα και τα δίκτυα. ύο κεφάλαια της αρχικής έκδοσης, τα οποία αφορούσαν τη θεωρία τρανζίστορ και την ολοκλήρωση πολύ µεγάλης κλίµακας, έχουν παραληφθεί, ενώ πολλά από τα αρχικά κεφάλαια έχουν αναθεωρηθεί. Το έργο αυτό είναι προϊόν συλλογικής και πολυετούς προσπάθειας, στην οποία έχουν συµβάλει αρκετοί συντελεστές. Πολλές διευκρινήσεις προτάθηκαν από φίλους, διδάσκοντες, και µεταπτυχιακούς φοιτητές που συµµετείχαν στη διδασκαλία του µαθήµατος. Θα ήθελα να ευχαριστήσωιδιαίτερα τον Dietolf Ramm, ο οποίος συνέταξε το κεφάλαιο σχετικά µε τα δίκτυα. Σηµαντική ήτανεπίσης η συµβολή των Eric Anderson,Curry Guinn, Mark Holliday, Sally Mason, Peter Wu, Mimi Lee, Benjamin Hardekopf, καθώς και των ανώνυµων κριτών που επιλέχθηκαν από τον εκδοτικό οίκο. Το συνοδευτικό λογισµικό αναπτύχθηκε από τους Josh Carter, Chris Connelly, Amr Fahmy, Curry Guinn, D.J. Miller, David Pennock, Steve Wolfman, και Peter Wu. Η ανάπτυξη του λογισµικού υποστηρίχθηκε οικονοµικά από το Πανεπιστήµιο Duke και το Εθνικό Ίδρυµα Επιστη- µώντωνηπα (NSF), µέσω των επιχορηγήσεων USE , DUE και DUE Θα ήθελα επίσης να ευχαριστήσωθερµά για τη συµβολή τους σε αυτήν την έκδοση την Anna Drozdowski, διαχειρίστρια των υπολογιστικών συστηµάτων του Τµήµατός µας επί σειρά ετών, και την πάντα ενθουσιώδη βοηθό µου Denita Thomas, η οποία σχεδίασε πολλά από τα σχήµατα και στοιχειοθέτησε πολλά από τα κεφάλαια του βιβλίου.

11 Πρόλογος Το βιβλίο αυτό αφορά τους υπολογιστές τι είναι, πώς λειτουργούν, τι µπορούν και τι δεν µπορούν να κάνουν. Απευθύνεται σε αναγνώστες που θέλουν να είναι σε θέση να κατανοούν θέµατα που αφορούν, π.χ., τα δίκτυα υπολογιστών ή την τεχνητή νοηµοσύνη, σε αναγνώστες των οποίων η εργασία απαιτεί επεξεργασία δεδοµένων και θέλουν να γνωρίζουν τις σχετικές δυνατότητες των υπολογιστών,καθώς και σεαναγνώστες πουπαρατηρούν την ευρύτατη διείσδυση των υπολογιστών σε όλες τις πτυχές της κοινωνικής ζωής και αναρωτιούνται για τις ενδεχόµενες επιπτώσεις της. Απευθύνεται σε γιατρούς, δικηγόρους, κληρικούς, εκπαιδευτικούς, στελέχη επιχειρήσεων, σπουδαστές, και όλους όσους έχουν την περιέργεια να γνωρίσουν τους υπολογιστές. Απευθύνεται επίσης σε φοιτητές της επιστήµης υπολογιστών, αλλά και σε επαγγελµατίες του κλάδου αυτού των οποίων ηβασικήεκπαίδευσηπιθανόν να µην έχει καλύψειόλους τους σηµαντικούς τοµείς του αντικειµένου, και οι οποίοι θα ήθελαν να διευρύνουν τις γνώσεις τους. Όταν το 1985 µου ζητήθηκε να καταστρώσωένα µάθηµα επιστήµης υπολογιστών για φοιτητές ανθρωπιστικών επιστηµών, έκρινα ότι όφειλα να παρουσιάσω όσο καλύτερα µπορούσα τα µεγάλα διανοητικά επιτεύγµατα του συγκεκριµένου κλάδου. Πρόκειται για τις «σπουδαίες ιδέες»πουπροσελκύουντοενδιαφέρονόλωνόσωνπροσεγγίζουν το γνωστικό αυτό αντικείµενο, και που συναποτελούν τον πυρήνα τηςεπιστήµηςυπολογιστών. Ηπρώτηκαιπιοσηµαντική από αυτές τις ιδέες είναι η έννοια του αλγορίθµου µια διαδικασία ή «συνταγή» η οποία µπορεί να δοθεί σε έναν άνθρωπο ή σε µια µηχανή µε σκοπό την εκτέλεση κάποιας εργασίας. Οι υπόλοιπες σπουδαίες ιδέες περιστρέφονται γύρωαπό αυτήν τη θεµελιώδη έννοια παρέχουν µεθόδους για την κωδικοποίηση αλγορίθµων σε µορφή αναγνωρίσιµη από τους υπολογιστές, και περιγράφουν τι µπορεί και τι δεν µπορεί να κωδικοποιηθεί σε µορφή κατάλληλη για να εκτελεστεί από αυτούς. Υποδεικνύουν µε ποιον τρόπο έννοιες της καθηµερινής ζωής µπορούν να αναπαρασταθούν από την ηλεκτρική τάση και το ρεύµα µέσα σε έναν υπολογιστή, και µε ποιον τρόπο µπορούν να κατασκευαστούν µηχανισµοί που να εκτελούν αυτούς τους υπολογισµούς. Επιπλέον, καταδεικνύουν µε ποιον τρόπο µπορούν να µεταφραστούν γλώσσες προσιτές στον άνθρωπο στις γλώσσες πουχρησιµοποιούν οι µηχανές, προκειµένου να αξιοποιηθούν οι δυνατότητες των µηχανών αυτών. Αποκαλύπτουν ακόµη µε ποιον τρόπο «ανθρώπινου» τύπου συλλογιστικές διεργασίες µπορούν να προγραµµατιστούν ώστε να εκτελεστούν από έναν υπολογιστή, και µας βοηθούν να κατανοήσουµε ποιες µπορεί να είναι οι έσχατες δυνατότητες των µηχανών. Πιθανόν αυτές οι σπουδαίες ιδέες να φαίνονται υπερβολικά περίπλοκες και εξειδικευ- µένες για να τις κατανοήσει κάποιος µη ειδικός. Κατάκανόνα, ένας φοιτητής της επιστή- µης υπολογιστών θα πρέπει να µελετήσει επί αρκετά χρόνια µαθηµατικά και µαθήµατα υπολογιστών για να τις εµπεδώσει, και δεν θα έπρεπε να περιµένει κανείς από τον µέσο αναγνώστη να µπορεί να τις κατανοήσει διαβάζοντας ένα και µόνο βιβλίο. Προκειµένου να συµπτυχθεί ένα τέτοιο «πρόγραµµα σπουδών» σε έναν τόµο κατανοητό από κάποιο ευρύτερο αναγνωστικό κοινό, οι βασικές έννοιες έχουν αναδιατυπωθεί σηµαντικά από

12 xvi Πρόλογος αρκετές πλευρές οι επουσιώδεις λεπτοµέρειες έχουν παραλειφθεί, ενώ και η ορολογία που χρησιµοποιείται έχει επιλεγεί προσεκτικά. Ας εξετάσουµε, παραδείγµατος χάριν, την τυπική ύλη που καλύπτει το µάθηµα του προγραµµατισµού σε ένα πρόγραµµα σπουδών της επιστήµης υπολογιστών. Οι φοιτητές διδάσκονται όλα τα χαρακτηριστικά του συντακτικού κάποιας γλώσσας προγραµµατισµού, πολλές λεπτοµέρειες υλοποίησης και µια πλειάδα εφαρµογών. Καθώς ο διαθέσι- µος χρόνος του µαθήµατος δεν αφήνει περιθώρια για τίποτε άλλο, αυτοί που θα ήθελαν να αποκτήσουν µια ευρύτερη θεώρηση του γνωστικού αντικειµένου, πέραν του αµιγούς προγραµµατισµού, δενέχουναυτήντηδυνατότητα. Στο βιβλίο αυτό, αντίθετα, εισάγονται λίγα µόνο στοιχεία της Pascal, και όλα τα προγράµµατα περιορίζονται σε αυτές τις λίγες δοµές. Καθώς οι περισσότερες και οι σηµαντικότερες έννοιες του προγραµµατισµού µπορούν να διδαχθούν σε αυτό το περιορισµένο πλαίσιο, η σύγχυση που µπορεί να προκαλέσει στον αναγνώστη η µεγάλη ποικιλία στο συντακτικό των γλωσσών προγραµµατισµού µειώνεται. Ένα δεύτερο παράδειγµα αφορά τη σχεδίασηµεταγωγικών κυκλωµάτων, η διδασκαλία της οποίας περιλαµβάνει συνήθως διεξοδική µελέτη της άλγεβρας Boole εξισώσεις, ελαχιστοποίηση και σύνθεση κυκλωµάτων. Εντούτοις, ακόµη και χωρίς καµία αναφορά στην άλγεβρα Boole, ο ενδιαφερόµενος αναγνώστης µπορεί να διδαχθεί τις βασικές αρχές, οι οποίες θα του επιτρέψουν να καταπιαστεί µε ένα πρόβληµα σχεδιασµού, να συντάξει έναν πίνακα αληθείας για την επιθυµητή συµπεριφορά, και να δηµιουργήσει ένα κύκλωµα το οποίο, χωρίς να είναι το ελάχιστο δυνατό, θα εκτελεί τον ζητούµενο υπολογισµό. Το όλο ζήτηµα της ελαχιστοποίησης κυκλώµατων στο οποίο δίνουν τόση έµφαση οι ηλεκτρολόγοι µηχανικοί δεν χρειάζεται να απασχολεί καθόλου τον αναγνώστη που επιθυµεί απλώς να αποκτήσει κάποιες γνώσεις για τους υπολογιστές. Η ίδια προσέγγιση έχει εφαρµοστεί σε όλα τα θέµατα της επιστήµης των υπολογιστών. Έτσι, η γλώσσα προγραµµατισµού Pascalπαρουσιάζεται χω ρίς δείκτες, η µεταγλώττιση κώδικα χωρίς τη βελτιστοποίησή του, η θεωρία υπολογισιµότητας χωρίς τις µηχανές Turing, η τεχνητή νοηµοσύνη χωρίς τη LISP, κ.ο.κ. Ηπροσέγγιση αυτή έχει επιλεγεί ούτως ώστε ο αναγνώστης να µπορέσει, µέσω ενός µόνο βιβλίου, να έλθει σε επαφή µε τον πυρήνα των σπουδαίων ιδεών της επιστήµης υπολογιστών: να µάθει να συντάσσει διάφορα προγράµµατα σε Pascal, να σχεδιάσει µεταγωγικά κυκλώµατα, να µελετήσει αρχιτεκτονικές Von Neumann και παράλληλες αρχιτεκτονικές, να προσοµοιώσει έναν µεταγλωττιστή για να δει πώς λειτουργεί, να εξετάσει τους µηχανισµούς ενός λειτουργικού συστήµατος, να µάθει να χαρακτηρίζει τους διάφορους υπολογισµούς ως ευχερείς και δυσχερείς, να κατανοήσει την έννοια της µη υπολογισιµότητας, και να γνωρίσει πολλές από τις βασικές έννοιες της τεχνητής νοηµοσύνης. Τα πρώτα κεφάλαια πραγµατεύονταιθέµαταπουέχουνστόχονα διεγείρουντο ενδιαφέρον του αναγνώστη, ενώ κάθε κεφάλαιο που αφορά τον προγραµµατισµό ξεκινάει µε ένα υπολογιστικό πρόβληµα, και παρουσιάζει τα θέµατα µελέτης µέσωµιας µεθόδου επίλυσης αυτού του προβλήµατος. Η ορολογία έχειεπίσηςεπιλεγεί ώστε να απευθύνεται στον µέσο αναγνώστη. Παραδείγµατος χάριν, οι επιστήµονες υπολογιστών συνηθίζουν να χρησιµοποιούν στη θέση του όρου «αντιγραφή» («copy») της καθοµιλούµενης τον όρο «µετακίνηση» («move»), ο οποίος ως εκ τούτου είναι πιθανό να προκαλέσει σύγχυση. Για τον λόγο αυτό, η χρήση του συγκεκριµένου όρου έχει αποφευχθεί, εκτός φυσικά από τις περιπτώσεις όπου είναι η µόνη κατάλληλη λέξη. εκάδες άλλοι τέτοιοι συνήθεις όροι που θα µπορούσαν να προκαλέσουν σύγχυση έχουν επίσης αποκλειστεί, ήέχουνοριστείπροσεκτικά στα σηµεία όπου είναι απολύτως αναγκαίοι. Ο µαθηµατικός συµβολισµός δεν θα µπορούσε να αποφευχθεί, αφού είναι τελείως απαραίτητος για τη µελέτη της επιστήµης υπολογιστών. Ωστόσο, τα σχετικά ολιγάριθµα σύµβολα πουεισάγονται εξηγούνται λεπτοµερώς και χρησιµοποιούνται επανειληµµένα, ώστε ακόµη και ο αναγνώστης χωρίς µαθηµατική εµπειρία να µπορέσει να εξοικειωθεί µε αυτά. Τέλος, ο αναγνώστης ίσως να αναρωτηθεί κατά πόσο οι σπουδαίες ιδέες που παρου-

13 Πρόλογος xvii σιάζονται σε αυτό τοβιβλίοσυµπίπτουνµεεκείνεςπου θα επέλεγαν άλλοι συγγραφείς. Ουσιαστικά, ενώ θα περίµενε κανείς µια κάποια διάσταση απόψεων, υπάρχει αξιοση- µείωτη οµοθυµία όσον αφορά τα «συστατικά στοιχεία» της επιστήµης υπολογιστών. Οι περισσότεροι ειδικοί του κλάδου θα είχαν πιθανότατα συµφωνήσει µε την επιλογή των κεντρικών εννοιών σε αυτό το βιβλίο. Ας εξετάσουµε ενδεικτικά το «γνωστικό πλαίσιο της επιστήµης υπολογιστών», όπως περιγράφεται στην αναφορά της Οµάδας Εργασίας για τον Πυρήνα της Επιστήµης Υπολογιστών (Task Force on the Core of Computer Science) 1 µε τίτλο «Computing as a Discipline» («η υπολογιστική ως επιστηµονικός κλάδος»). Η αναφορά αυτή παρουσιάζει µια γενική εικόνα του κλάδου και περιλαµβάνει υποδείξεις σχετικά µε την εκπαίδευση στην επιστήµη υπολογιστών. Μεταξύ άλλων, η αναφορά περιγράφει τα εξήςεννέα επιµέρους γνωστικά αντικείµενα, τα οποία κατά τους συγγραφείς καλύπτουν τον πυρήνα της επιστήµης: 1. Αλγόριθµοι και δοµές δεδοµένων 2. Γλώσσες προγραµµατισµού 3. Αρχιτεκτονική 4. Αριθµητικοί και συµβολικοί υπολογισµοί 5. Λειτουργικά συστήµατα 6. Τεχνολογία λογισµικού 7. Βάσεις δεδοµένων και συστήµατα ανάκτησης πληροφοριών 8. Τεχνητή νοηµοσύνη και ροµποτική 9. Επικοινωνία ανθρώπου-µηχανής Το βιβλίο πραγµατεύεται σε εισαγωγικό επίπεδο τα περισσότερα από τα γνωστικά αυτά αντικείµενα. Αν και δεν ισχυρίζοµαι ότι τα καλύπτει όλα ισοµερώς και πλήρως, ωστόσο προσεγγίζει την ουσία των περισσότερων από αυτά και παρουσιάζει κάποιες από τις σηµαντικότερες έννοιές τους. Κάποιοι διδάσκοντες ίσως κρίνουν ότι η ύλη του συγγράµατος υπερβαίνει αυτήν που µπορεί να διδαχθεί σε ένα εξαµηνιαίο µάθηµα. Σε αυτήν την περίπτωση, η διδασκαλία µπορεί να περιοριστεί, π.χ. στα πρώτα 2/3 του βιβλίου, και να ολοκληρωθεί µε µία ή δύο διαλέξεις αφιερωµένες σε προχωρηµένα θέµατα στο τέλος του εξαµήνου, ώστε να διαµορφωθεί ένα µάθηµα επικεντρωµένο στον προγραµµατισµό και στον µηχανισµό λειτουργίας του υπολογιστή. Ένας άλλος τρόπος σύµπτυξης της ύλης είναι να παρουσιαστούν τα κυκλώµατα, η αρχιτεκτονική και οι µεταγλωττιστές σε µία ενιαία διάλεξη, και να διατεθούν οι µισές περίπου διαλέξεις για τη µελέτη των κεφαλαίων 10 έως 15. Υπάρχει και ένας τρίτος εναλλακτικός τρόπος διδασκαλίας του βιβλίου, ο οποίος αφορά φοιτητές που έχουν ήδηδιδαχθεί προγραµµατισµό. Σε αυτήν την περίπτωση, η διδασκαλία µπορεί να ξεκινήσει από τοκεφάλαιο 7 και να συνεχιστεί µέχρι το τέλος. Προσωπικά, έχωχρησιµοποιήσειπολλέςπαραλλαγέςαυτών των εναλλακτικών τρόπων διδασκαλίας. Συνήθως παραλείπω την αναδροµή ή τις ενότητες µε την ένδειξη «C» από τα κεφάλαια που αναφέρονται στη µεταγλώττιση και τη µη υπολογισιµότητα, καθώς παρουσιάζουν υψηλότερο βαθµό δυσκολίας για τους φοιτητές µου. Θα ήθελα να εκφράσωτις θερµές µου ευχαριστίες σε όσους συνέβαλαν στην ολοκλήρωση αυτού του βιβλίου. Θέλω πρωτίστως να ευχαριστήσω το Τµήµα Επιστήµης Υπολογιστών του Πανεπιστηµίου Duke, το οποίο µου προσέφερε ένα εξαιρετικό περιβάλλον εργασίας και απεριόριστη υποστήριξη στις ακαδηµαϊκές µου αναζητήσεις κατά τη διάρκεια των τελευταίων είκοσι ετών. Θα ήθελα επίσης να ευχαριστήσω τους εκατοντάδες φοιτητές µου σε αυτό το µάθηµα, οι οποίοι δίδαξαν στον καθηγητή τους ότι δεν ήταν δυνατόν να συµπεριλάβει στο βιβλίο αυτό όλα όσα θα ήθελε. Με έπεισαν ότι, εάν ήθελα το τελικό αποτέλεσµα να είναι κατανοητό, θα έπρεπε να αφαιρέσωµεγάλο µέρος της ύλης που τόσο αγαπούσα, και µε έκαναν να καταλάβωτη σηµασία του λεξιλογίου: 1 Peter J. Denning (Chairman), Douglas E. Comer, David Gries, Michael C. Mulder, Allen Tucher, A. Joe Turner, Paul R. Young, «Computing as a Discipline», Communications of the ACM,τόµος 32, τεύχος 1, Ιανουάριος 1989 επίσης, στο Computer, τόµος 22, τεύχος 2, Φεβρουάριος 1989.

14 xviii Πρόλογος αν και θεωρούσα ότι οι όροι που χρησιµοποιούσα ήταν απλοί και µη τεχνικοί, ωστόσο αυτοί δεν είχαν το ίδιο νόηµα για τους φοιτητές µου. Όλοι αυτοί οι υποµονετικοί νέοι άνθρωποι έχουν συνεισφέρει στη διαµόρφωση αυτού του βιβλίου όσο και εγώ. Ιδιαίτερα εκτιµώ τις προσπάθειες του Craig Singer, ο οποίος υπήρξε ένας εξαίρετος βοηθός καθηγητού στο µάθηµά µου για δύο χρόνια, και των Michael Hines και Jothy Rosenberg, οι οποίοι δίδαξαν επίσης το µάθηµα. Όλοι τους προσέγγισαν µε ευαισθησία τις δυσκολίες των φοιτητών, και διατύπωσαν εξαιρετικές υποδείξεις για τη βελτίω ση της παρουσίασης της ύλης. Μια προκαταρκτική έκδοση του βιβλίου εστάλη για κριτική ανάγνωση σε καθηγητές άλλων ιδρυµάτων κατά το ακαδηµαϊκό έτος Θα ήθελα να ευχαριστήσω, για τα πολλά χρήσιµα σχόλιά τους, τους Shan Chi (Πανεπιστήµιο Northwestern), David Frisque (Πανεπιστήµιο του Michigan), Rhys Price Jones (Κολέγιο Oberlin), Emily Moore (Κολέγιο Grinnel), Richard E. Pattis (Πανεπιστήµιο της Washington), Harvey Lee Shapiro (Κολέγιο Lewis and Clark), Jill Smudski (τότε στο Πανεπιστήµιο της Pennsylvania), και οκτώ ανώνυµους κριτές. Με βάση αυτές τις κρίσεις και την εµπειρία από τη διδασκαλία στην τάξη, το βιβλίο αναδιοργανώθηκε και γράφηκε εκ νέου. Η νέα µορφή του βιβλίου χρησιµοποιήθηκε για πρώτη φορά στην τάξη το χειµερινό εξάµηνο του ακαδηµαϊκού έτους , και θα ήθελα και πάλι να εκφράσωτις ευχαριστίες µου στους φοιτητές µου, οι οποίοι συµπλήρωσαν ερωτηµατολόγια που µε βοήθησαν να εντοπίσω αδύνατα σηµεία στην παρουσίαση των θεµάτων, καθώς και στον βοηθό καθηγητού Albert Nigrin, για τη βοήθειά του. Θα ήθελα επίσης να ευχαριστήσω ιδιαίτερα την Elina Kaplan, η οποία εργάστηκε αµέτρητες ώρες σε κάποια από τα πρώτα κεφάλαια προκειµένου να βρειτρόπουςβελτίωσηςτηςπαρουσίασης.ηόποιααπλότητα και σαφήνεια αυτών των κεφαλαίων οφείλεται εν πολλοίς στην Elina. Πολλοί άλλοι έχουν συµβάλει στο τελικό αποτέλεσµα διαβάζοντας κεφάλαια και προτείνοντας βελτιώσεις. Μεταξύ αυτών συγκαταλέγονται οι Heidi Brubaker, Dania Egedi, Linda Fineman, Chris Gandy, Curry Guinn, Tim Gegg-Harrison, Barry Koster, Anselmo Lastra, Ken Lang, Albert Nigrin, Lorrie Tomek, Tom Truscott και Doreen Yen. Ιδιαίτερα σηµαντικές ήταν οι διορθώσεις και οι υποδείξεις των David M. Gordon, Henry Greenside, Donald Loveland, και Charlie Martin. Πολλοί άλλοι φίλοι διατύπωσαν παρατηρήσεις και σχόλια σε διάφορα κεφάλαια. Το βιβλίο οφείλει κατά µεγάλο µέρος την «προσωπικότητά» του στον Matt Evans, ο οποίος σχεδίασε τα σκίτσα που εµφανίζονται στην αρχή κάθε κεφαλαίου. Εκτιµώ απεριόριστα την προσπάθειά του. Είµαι επίσης υπόχρεος στην Ann Davis, η οποία στοιχειοθέτησε το κείµενο από το χειρόγραφό µου. Η επιµέλεια και η προσοχή που επέδειξε συνέβαλαν σηµαντικά στο έργο της παραγωγής του βιβλίου. Θα ήθελα επίσης να ευχαριστήσω την Marie Cunninghan για τη στοιχειοθέτηση κάποιων κεφαλαίων, και την Denita Thomas για τη σύνταξη του ευρετηρίου. Ο Barry Koster σχεδίασε πρόθυµα πολλά από τα σχήµατα, και ο Eric Smith µε βοήθησε σε πολλές περιπτώσεις στη βιβλιογραφική εργασία. Οφείλωεπίσης εγκάρδιες ευχαριστίες στους Robert Prior, Harry Stanton και τα άλλα στελέχη του εκδοτικού οίκου The MIT Press, που κατανόησαν από την πρώτη στιγµή το όραµα του βιβλίου µου και υποστήριξαν µε θέρµη τις προσπάθειές µου. Τέλος, θα ήθελα να ευχαριστήσωτη σύζυγό µου Alice, την κόρηµουjennifer, και τον γιο µου David, για την ενθουσιώδη ενθάρρυνσή τους σε αυτή µου την προσπάθεια.

15 Πανεπιστηµιακές σπουδές στην Επιστήµη Υπολογιστών: Μια εισαγωγή Φήµες Γύρωαπό τους υπολογιστές κυκλοφορούν πολλές φήµες, και αναρωτιέται κανείς τι θα πρέπει να πιστέψει απ όλα αυτά. Λέγεται ότι στο µέλλον οι υπολογιστές θα διεκπεραιώνουν όλες τις γραφειοκρατικές εργασίες, και µάλιστα ότι θα µπορούν να αντικαταστήσουν ορισµένους άρτια εκπαιδευµένους επαγγελµατίες. Λέγεται ότι οι υπολογιστές έχουν αρχίσει να προσοµοιώνουν τη λειτουργία του ανθρώπινου εγκεφάλου, να δηµιουργούν έργα τέχνης, να αποδεικνύουν θεωρήµατα, να µαθαίνουν, και να εκφέρουν αξιολογικές κρίσεις. Λέγεται ότι οι υπολογιστές θα διεισδύσουν σε κάθε πτυχή της ζωής µας, ρυθµίζοντας τις επικοινωνίες, διαχειριζόµενοι πληροφορίες,και παρέχοντας ψυχαγωγία.λέγεται ότι ακόµη και τα πολιτικά µας συστήµατα θα αλλάξουν: σε µέχρι πρότινος κλειστές κοινωνίες, οι υπολογιστές θα απειλήσουν την υπάρχουσα τάξη πραγµάτων,επιτρέποντας την παγκόσµια επικοινωνία, ενώ στις ελεύθερες κοινωνίες θα φέρουν αύξηση της παρακολούθησης και του ελέγχου των πολιτών. Από την άλλη πλευρά, υπάρχουν δύσπιστοι οι οποίοι επισηµαίνουν ότι η επιστήµη των υπολογιστών έχει πολλούς περιορισµούς και ότι η σηµασία των µηχανών έχει υπερεκτιµηθεί. Κάποιεςαπόαυτές τις φήµες ευσταθούν, και µας δίνουν µια σωστή ένδειξη των επερχόµενων εξελίξεων. Κάποιες άλλες είναι εκτός πραγµατικότητας, και προκαλούν αβάσι- µες ανησυχίες για το µέλλον. Άλλες πάλι εγείρουν ερωτήµατα για τα οποία ενδέχεται να συζητάµε επί χρόνια χωρίς να καταλήξουµε σε καµία απάντηση. Σε κάθε περίπτωση, το σίγουρο είναι ότι πολλά από τα ζητήµατα που αφορούν τους υπολογιστές είναι ιδιαίτερα σηµαντικά, και αξίζει τον κόπο να προσπαθήσουµε να τα κατανοήσουµε. Στόχος αυτού του βιβλίου είναι να βοηθήσει τον αναγνώστη να κατανοήσει τους υπολογιστές και την επιστήµη των υπολογιστών. Ξεκινά από τη µελέτη του προγραµµατισµού, διότι ο έλεγχοςκαιο χειρισµός των υπολογιστών είναι απαραίτητα στοιχεία για την κατανόησή τους. Στη συνέχεια, ξεναγεί τον αναγνώστη στο εσωτερικό του υπολογιστή, εξερευνώντας τις στοιχειώδεις λειτουργίες του, από τη µετάδοση των ηλεκτρικών σηµάτων µέσω των κυκλωµάτων έως την αρχιτεκτονική και το λογισµικό που τον καθοδηγεί. Τέλος, το βιβλίο διερευνά τους περιορισµούς που διέπουν την εκτέλεση υπολογισµών, και τα όρια τηςεπιστήµηςσύµφωνα µε τις τρέχουσες απόψεις. Συνοπτικά, το βιβλίο προσπαθεί να προσφέρει µια πλήρη εισαγωγή στο γνωστικό αυτό αντικείµενο, µε έµφαση στους θεµελιώδεις µηχανισµούς στους οποίους βασίζεται η λειτουργία τω ν υπολογιστών. Στο πλαίσιο αυτό, παρουσιάζει πολλές από τις «σπουδαίες ιδέες» της επιστήµης υπολογιστών, δηλαδή τα διανοητικά πρότυπα που χρησιµοποιούν οι επιστήµονες στην εργασία τους, τα οποία θα επιτρέψουν και στον αναγνώστη να κατανοήσει τους υπολογιστές.

16 xx Πανεπιστηµιακές σπουδές στην Επιστήµη Υπολογιστών: Μια εισαγωγή Σπουδές στην Επιστήµη Υπολογιστών ΗΕπιστήµηΥπολογιστών συνίσταται στη µελέτη κάποιων συνταγών και των τρόπων εφαρµογής τους. Ο όρος «συνταγή» αναφέρεται σε κάποια διαδικασία ή µέθοδο για την εκτέλεση µιας εργασίας. Η επιστήµη µελετά τα διάφορα είδη συνταγών, τις ιδιότητές τους, τις γλώσσες καταγραφής τους, τις µεθόδους δηµιουργίας τους, και τον σχεδιασµό µηχανών για την αποτελεσµατική διεκπεραίωσή τους. Βέβαια, οι επιστήµονες των υπολογιστών δεν θέλουν να συγχέονταιµετουςσεφ µαγειρικής, και για τον λόγοαυτόέχουν ένα δικό τους όνοµα για τις συνταγές τις ονοµάζουν αλγορίθµους. Για να κατανοήσει κανείς την επιστήµη υπολογιστών, θα πρέπει να µελετήσει συνταγές (ή, αλλιώς, αλγορίθµους). Το πρώτο θέµα µελέτης είναι το πώς επινοούµε και καταγράφουµε αυτές τις συνταγές. Παραδείγµατος χάριν, πιθανόν να θέλουµε να καταστρώσουµε µια συνταγή για τη θεραπεία κάποιας ασθένειας, ή για την ταξινόµηση κάποιων πουλιών µε βάση τα µορφολογικά χαρακτηριστικά τους, ή για τη διαµόρφωση ενός προγράµµατος αποταµίευσης. Θα χρειαστεί, κατ αρχάς, να µελετήσουµε κάποιες ενδεικτικές συνταγές, ώστε να δούµε πώς είναι δοµηµένες, και στη συνέχεια να εξασκηθούµε στη σύνταξη δικών µας συνταγών. Η προσπάθεια αυτή απαιτεί κάποια εµπειρία στον εντοπισµό των ουσιωδών στοιχείων των καταστάσεων του πραγµατικού κόσµου, και στην οργάνωση της γνώσης αυτής σε µια ακολουθία βηµάτων που οδηγούν στην επίτευξη του στόχου µας. Από τη στιγµή που θα έχουµε επινοήσει µια µέθοδο για την επίλυση κάποιου προβλή- µατος, θα πρέπει να την κωδικοποιήσουµε σε µια υπολογιστική γλώσσα προκειµένου να διαβιβάσουµε τις «επιθυµίες» µας στον υπολογιστή. Εποµένως, είναι απαραίτητο να µάθουµε να χειριζόµαστε µια υπολογιστική γλώσσα και να µετατρέπουµε τα βήµατα µιας συνταγής σε εντολές που µπορούν να εκτελεστούν από έναν υπολογιστή. Το βιβλίο αυτό εισάγει τον αναγνώστη στη γλώσσα προγραµµατισµού Pascal, η οποία είναι αφ ενός εύκολη στην εκµάθησή της και αφ ετέρου επαρκής για την περιγραφή των ενδεικτικών προγραµµάτων του βιβλίου. Οσυνδυασµόςτηςδηµιουργίαςµιαςσυνταγήςκαιτηςκωδικοποίησήςτηςσεκάποια υπολογιστική γλώσσα ονοµάζεται προγραµµατισµός, καιαποτελεί το αντικείµενο µελέτης του πρώτου τµήµατος του βιβλίου, των κεφαλαίων 1 έως 6. Στα κεφάλαια αυτά παρουσιάζονται διάφοροι τύποι προβληµάτων, οι αντίστοιχες µέθοδοι επίλυσής τους, και ο κώδικας Pascal, δηλαδή το πρόγραµµα, που απαιτείται για την επίλυσή τους. Το τελευταίο από αυτά τα κεφάλαια πραγµατεύεται τα προβλήµατα που ανακύπτουν όταν οι τεχνικές που παρουσιάζονται στα πρώτα πέντε κεφάλαια εφαρµόζονται στην ανάπτυξη προγραµµάτων εµπορικής κλίµακας. Αν και µετά τη µελέτη των κεφαλαίων του προγραµµατισµού ο αναγνώστης θα είναι σε θέση να δηµιουργεί χρήσιµα προγράµµατα, πιθανόν να εξακολουθεί να αντιµετωπίζει τον υπολογιστή σαν ένα µαγικό κουτί που εκτελεί αποτελεσµατικά εντολές. Για να γίνει κατανοητό γιατί οι υπολογιστές λειτουργούν όπως λειτουργούν, ποιοι είναι οι περιορισµοί τους, και ποιες βελτιώσεις µπορούν να αναµένονται στο µέλλον, το δεύτερο τµήµα του βιβλίου πραγµατεύεται το πώς και γιατί οι υπολογιστές είναι σε θέση να εκτελούν υπολογισµούς. Στο κεφαλαίο 7 παρουσιάζονται µεθόδοι σχεδίασης ηλεκτρικών κυκλωµάτων και εξετάζεται η εφαρµογή των µεθόδων αυτών στη σχεδίαση υπολογιστικών µηχανισµών. Παραδείγµατος χάριν, περιγράφεται ο τρόπος κατασκευής ενός κυκλώµατος για πρόσθεση αριθµών. Στο κεφάλαιο 8 περιγράφεται ηαρχιτεκτονικήτωνυπολογιστώνκαιη δοµή ενός τυπικού υπολογιστή. Το κεφάλαιο 9 πραγµατεύεται τη µετάφραση µιας γλώσσας προγραµµατισµού υψηλού επιπέδου, όπως είναι η Pascal, σε γλώσσα µηχανής, έτσι ώστε οι εντολές της να µπορούν να εκτελεστούν από έναν υπολογιστή κάποιας δεδοµένης αρχιτεκτονικής. Το παράδειγµα που παρατίθεται στο τέλος του κεφαλαίου9 διατρέχει τα κύρια βήµατα επεξεργασίας µιας εντολής της Pascal, από τη µετάφρασή της σε

17 Σπουδές στην Επιστήµη Υπολογιστών xxi γλώσσα µηχανής µέχρι τη λεπτοµερή λειτουργία των υπολογιστικών κυκλωµάτων. Στο κεφάλαιο 10 εισάγονται έννοιες σχετικές µε τα λειτουργικά συστήµατα, δηλαδή τα προγράµµατα που γεφυρώνουν το χάσµα µεταξύ του χρήστη και των πολλών υλισµικών και λογισµικών στοιχείων του υπολογιστή. Τα προγράµµατα αυτά επιτρέπουν στον χρήστη να χρησιµοποιεί εύκολα τις υπολογιστικές υπηρεσίες που ο ίδιος επιθυµεί. Το κεφάλαιο 11 αποτελεί µια εισαγωγή στα δίκτυα υπολογιστών και τις έννοιες που σχετίζονται µε την επικοινωνία µεταξύ υπολογιστικών συστηµάτων. Τα τελευταία κεφάλαια του βιβλίου ασχολούνταιµε τους περιορισµούς των υπολογιστών και τα όρια της επιστήµης. Το κεφάλαιο 12 πραγµατεύεται προβλήµατα που αφορούν τον χρόνο εκτέλεσης των προγραµµάτων, και υπολογισµούς µε µεγάλες χρονικές απαιτήσεις. Στο κεφάλαιο 13 περιγράφεται ένας τρόπος επίσπευσης της επίλυσης υπολογιστικών προβληµάτων, µέσωτης χρήσης παράλληλων αρχιτεκτονικών. Το κεφάλαιο 14 µελετά την ύπαρξη των λεγόµενων µη υπολογίσιµων συναρτήσεων, και τέλος το κεφάλαιο 15 αποτελεί µια εισαγωγή στο πεδίο της τεχνητής νοηµοσύνης. Ειδικό λογισµικό για τη διευκόλυνση της µελέτης Για την καλύτερη εµπέδωση των εννοιών που παρουσιάζονται στο βιβλίο, έχουν αναπτυχθεί ειδικά προγράµµατα τα οποία µπορείτε να αποκτήσετε µέσωτου ιαδικτύου. Τα προγράµµατα αυτά είναι αναρτηµένα στον δικτυότοπο του εκδοτικού οργανισµού The MIT Press και στην ιστοσελίδα του συγγραφέα στο Τµήµα Επιστήµης Υπολογιστών του Πανεπιστηµίου Duke. 2 Στα προγράµµατα που µπορείτε να αναζητήσετε και να δοκιµάσετε περιλαµβάνονται τα εξής: ύο προγράµµατα που αφορούν το κεφάλαιο περί προσοµοίωσης. Το πρώτο είναι µια προσοµοίωση ενός αγώνα ταχύτητας αυτοκινήτων που σας επιτρέπει να περιγράψετε µια στρατηγική για να διατρέξετε την πίστα και να ελέγξετε την επίδοσή σας. Το δεύτερο είναι µια προσοµοίωση της βιολογικής εξέλιξης, που σας επιτρέπει να µελετήσετε διαδοχικές γενιές κάποιων απλώνόντωνκαθώςαυτά εξελίσσονται σε ένα εικονικό περιβάλλον. Ένα συνοδευτικό πρόγραµµα για τα κεφάλαια που αφορούν το υλισµικό και το λογισµικό του υπολογιστή, το οποίο ονοµάζεται «This-is-how-a-computer-works», και σας δίνει τη δυνατότητα να δείτε τις διεργασίες που πραγµατοποιούνται σε έναν εικονικό υπολογιστή, καθώς αυτός µεταγλωττίζει και εκτελεί ένα µικρό πρόγραµµα. Η απεικόνιση είναι αρκετά λεπτοµερής, δίνοντας στον χρήστη την ευκαιρία να παρακολουθήσει τους µεταγωγείς στον κεντρικό επεξεργαστή να ανοιγοκλείνουν και το ηλεκτρικό ρεύµα να διατρέχει τα καλώδια κατά τη διάρκεια του υπολογισµού. Τέλος, το Κεφάλαιο 10 συνοδεύεται από ένα λειτουργικό σύστηµα γραµµένο σε Pascal, το οποίο µπορείτε να µελετήσετε, να εκτελέσετε και να τροποποιήσετε εάν το επιθυµείτε. Τα περισσότερα από τα υπόλοιπα προγράµµατα που αναφέρονται στο βιβλίο παρατίθενται αυτούσια στο κείµενο. 2 Σ.τ.Ε.: Όπως µας ενηµέρωσε ο συγγραφέας, τα συγκεκριµένα προγράµµατα δεν είναι διαθέσιµα στην παρούσα φάση. Παρ όλα αυτά,κρίναµε ότι θα έπρεπε να διατηρήσουµε τις αναφορέςτου συγγραφέα σε αυτά, για το ενδεχόµενο να αναρτηθούν στο ιαδίκτυο στο µέλλον.

18 xxii Πανεπιστηµιακές σπουδές στην Επιστήµη Υπολογιστών: Μια εισαγωγή Μια προσέγγιση για αναγνώστες µε περιορισµένο µαθηµατικό υπόβαθρο Καθώς οι γνώστες της επιστήµης υπολογιστών χρησιµοποιούν συνήθως τη δική τους ορολογία και ειδικό µαθηµατικό συµβολισµό, οι δυσκολίες στην επικοινωνία οδηγούν τους διδάσκοντες στο συµπέρασµα ότι ο µέσος άνθρωπος δεν είναι σε θέση να κατανοήσει αυτό το αντικείµενο. Για τον λόγο αυτό, τα σχετικά βιβλία και µαθήµατα πανεπιστη- µιακών τµηµάτων συχνά παρακάµπτουν τα θεµελιώδη ζητήµατα, και επικεντρώνονται αντ αυτών στη διδασκαλία της χρήσης προγραµµάτων λογισµικού, και στην ιστορική και κοινωνιολογική διάσταση της υπολογιστικής επιστήµης. Το βιβλίο αυτό έχει γραφτεί µε την πεποίθηση ότι οποιοσδήποτε νοήµων άνθρωπος µπορεί να κατανοήσει όλες τις θεµελιώδεις έννοιες της επιστήµης υπολογιστών, εάν αυτές εισαχθούν και εξηγηθούν µε τον κατάλληλο τρόπο. εν έχει παραλειφθεί κανένα σηµαντικό θέµα, όσο «δύσκολο» και αν θεωρείται. Ωστόσο, έχει καταβληθεί σηµαντική προσπάθεια να αποφευχθούν οι επουσιώδεις λεπτοµέρειες και η εξειδικευµένη ορολογία, εκτός από τις περιπτώσεις που ήταν δυνατόν να δοθούν σαφείς καιπλήρειςορισµοί. Επειδή κάποιοι αναγνώστες ίσως να µην επιθυµούν να µελετήσουνόλατα κεφάλαια, το βιβλίο έχει σχεδιαστεί έτσι ώστε να ευνοεί την επιλεκτική µελέτη. Οι αναγνώστες ενθαρρύνονται να επιλέξουν όποιο κεφάλαιο επιθυµούν κάθε φορά, και να το µελετήσουν για όσο τους κινεί το ενδιαφέρον. Φυσικά, τα περισσότερα κεφάλαια χρησιµοποιούν έννοιες από τα προηγούµενα και, όπως είναι ευνόητο, όπου συµβαίνει αυτό η κατανόηση θα είναι ελλιπέστερη. Τα κεφάλαια του προγραµµατισµού (1 έως 5) αλληλοεξαρτώνται σε σηµαντικό βαθµό, ενώ το κεφάλαιο περί αρχιτεκτονικής (8) θα πρέπει να µελετηθεί πριν από το κεφάλαιο για τη µεταγλώττιση (9). Επίσης, κάποια από τα απαιτητικότερα κεφάλαια (12 έως 15) χρησιµοποιούν στοιχεία προγραµµατισµού από τα πρώτα κεφάλαια (1 έως 5). Αν εξαιρέσουµε αυτούς τους περιορισµούς, όλα τα άλλα θέµαταπιθανόταταµπορούννα µελετηθούνµεοποιαδήποτεσειρά χωρίς ιδιαίτερες γνωστικές απώλειες. Οι ενότητες των κεφαλαίων έχουν ταξινοµηθεί σε τρεις κατηγορίες, που δηλώνονται µε τα λατινικά γράµµατα A, B και C, έτσι ώστε οι αναγνώστες να µπορούν να πάρουν µια «γεύση» για πολλά ζητήµατα, και να εντρυφήσουν µόνο σε ό,τι επιλέξουν. Οι ενότητες µε την ένδειξη A περιλαµβάνουν µόνο εισαγωγικές έννοιες και απαιτούν µικρή προσπάθεια από τον αναγνώστη. Μελετώντας κανείς µόνο τις ενότητες αυτές, µπορεί να αποκτήσει µια γενική εικόνα του βιβλίου µέσα σε λίγες ώρες. Οι ενότητες µε την ένδειξη Bπεριλαµβάνουντηνκύρια ύλη του βιβλίου, και ίσως απαιτούν σηµαντική προσπάθεια και χρόνο ο αναγνώστης, όµως, που θα µελετήσει µια τέτοια ενότητα θα κατανοήσει σε βάθος την ουσία του αντικειµένου που αυτή πραγµατεύεται. Τέλος, οι ενότητες µε την ένδειξη C απαντούν σε ερωτήµατα που µπορεί ναγεννηθούν σε προσεκτικούς αναγνώστες και συµπληρώνουν την ύλη των κύριων τµηµάτων του βιβλίου.

19

20

21 1 Εισαγωγή στον προγραµµατισµό: Κωδικοποίηση δένδρων απόφασης 1.1 Καλά νέα (A) Παλαιότερα, πριν από την εµφάνιση των υπολογιστών,η διεκπεραίωση κάθε εργασίας απαιτούσε την εκτέλεσή της από εµάς τους ίδιους. Σήµερα, όµως, µε τους υπολογιστές, µπορούµε πλέον να εκτελούµε πολλές εργασίες απλώς καταγράφοντας τις ενέργειες που πρέπει να γίνουν. Την υλοποίηση των ενεργειών αναλαµβάνει να την φέρει σε πέρας ένας υπολογιστής. Για παράδειγµα, εάν θέλουµε να προσθέσουµε αριθµούς, να αναζητήσουµε κάποια δεδοµένα, να συντάξουµε και να εκτυπώσουµε ένα έγγραφο, να στείλουµε µηνύµατα σε συναδέλφους, να ελέγξουµε µια βιοµηχανική διεργασία, ή να φέρουµε σε πέρας άλλες εργασίες, µπορούµε να συντάξουµε ένα σύνολο οδηγιών, δηλαδή µια ακολουθία από ενέργειες που πρέπει να γίνουν, και να αναθέσουµε την εκτέλεσή τους σε έναν υπάκουο και ακούραστο υπολογιστή. Μπορούµε επίσης να µοιράσουµε αυτό το σύνολο οδηγιών σε πολλούς υπολογιστές, οι οποίοι θα συνεργαστούν για την υλοποίησή τους. Ακόµη και όταν χρειαστεί οι υπολογιστές να εργαστούν χωρίς την επίβλεψή µας, θα συνεχίσουν να εκτελούν τις ίδιες εργασίες,ακολουθώνταςπιστάτις εντολές που τους έχουµε δώσει. Ηπροετοιµασίακαιησύνταξη ενός τέτοιου συνόλου οδηγιών ονοµάζεται προγραµ- µατισµός (programming), και οδηγεί σε «πολλαπλασιασµό εργασίας» ο οποίος αλλάζει ριζικά τις δοµές της ανθρώπινης κοινωνίας. ίνει τη δυνατότητα σε ένα µόνο άτοµο να παραγάγει µε τη βοήθεια των υπολογιστών απεριόριστο πλήθος αποτελεσµάτων καταβάλλοντας πεπερασµένη προσπάθεια (για τη δηµιουργία του σχετικού υπολογιστικού προγράµµατος). Γίνεται λοιπόν φανερό ότι η παραγωγικότητά µας δεν είναι πλέον συνάρτηση µόνον του πλήθους των απασχολούµενων προσώπων είναι συνάρτηση και του πλήθους των διαθέσιµων υπολογιστών. Τα καλά νέα, όµως, δεντελειώνουν εδώ: οι υπολογιστές είναι πλέον σχετικά φθηνοί και επιπλέον το κόστος τους συνεχώς µειώνεται. Πριν από τρεις δεκαετίες, υπολογιστές µε µνήµη λέξεις και χρόνο εκτέλεσης εντολών 1 µικροδευτερόλεπτο (µsec) κόστιζαν 1 εκατοµµύριο δολάρια. Σήµερα µπορούµε να αγοράσουµε έναν υπολογιστή µε εκατονταπλάσια µνήµη και ταχύτητα, µε λίγες χιλιάδες δολάρια. Πληρώνοντας ποσό ίσο µε τον µισθό ενός ανειδίκευτου εργάτη, µπορούµε να αποκτήσουµε έναν υπολογιστή που έχει τη δυνατότητα να διεκπεραιώνει ορισµένες εργασίες ταχύτερα από χίλιους ανθρώπους µαζί. Με τη µελέτη του προγραµµατισµού µέσα από τις σελίδες αυτού του βιβλίου θα κατανοήσουµε πώς µπορεί να επιτευχθεί αυτός ο πολλαπλασιασµός της εργασίας µέσω των υπολογιστών. Θα µελετήσουµε θεµελιώδεις δοµές πληροφοριών και τεχνικές επε-

22 2 1. Εισαγωγή στον προγραµµατισµό: Κωδικοποίηση δένδρων απόφασης ξεργασίας µε στόχο να αναπτύξουµε την ικανότητά µας να επισηµαίνουµε και να απο- µονώνουµε την ουσία των προβληµάτων, και να µεταγράφουµετα προβλήµατα αυτάσε κώδικα µηχανής ώστε οι εργασίεςµαςναγίνονται αυτόµατα. εν θα µελετήσουµε τον προγραµµατισµό µε τον συνήθη τρόπο, δηλαδή µέσωτης εκµάθησης όλων των λεπτοµερειών µιας συγκεκριµένης γλώσσας προγραµµατισµού. εν θα αναφερθούµε, για παράδειγµα, στο σύνολο των κανόνων για την τοποθέτηση των σηµείων στίξης, ή στη γενικότερη µορφή κάθε γλωσσικής δοµής, ούτε θα εξετάσουµε το µέγιστο πλήθος χαρακτήρων που επιτρέπονται στα ονόµατα µεταβλητών, ή τα µέγιστα επιτρεπόµενα µεγέθη αριθµών και συµβολοσειρών. Αντίθετα, θα προσπαθήσουµε να αποκοµίσουµε όλη την απόλαυση που πηγάζει από τη µελέτη και τη δηµιουργία απλών προγραµµάτων, παρακάµπτοντας κατά το δυνατόν την κουραστική εµµονή στη συντακτική ακρίβεια και την εξαντλητική περιγραφή. Στα παραδείγµατακαι στις ασκήσειςχρησιµοποιούµε τη γλώσσα προγραµµατισµού Pascal. Ωστόσο, θα περιοριστούµε σε ένα υποσύνολο των στοιχείων της γλώσσας αυτής, ώστε ο φόρτος της εκµάθησής της από τον αναγνώστη να παραµείνει σε λογικά πλαίσια. Εάν καλύπταµε το σύνολο των δυνατοτήτων της Pascal, δεν θα µας έµενε καθόλου χρόνος να αναφερθούµε στο κεντρικό θέµα αυτού του βιβλίου, τις σπουδαίες ιδέες στην επιστήµη των υπολογιστών. Μιας και στο βιβλίο αυτό δίνονται µόνον οι έννοιες που είναι απαραίτητες για την κατανόηση των παρατιθέµενων προγραµµάτων και για τη δηµιουργία προγραµµάτων ανάλογηςδυσκολίας, συνιστάται σε όσους σκοπεύουν να δηµιουργήσουν πιο πολύπλοκα προγράµµατα να προµηθευτούν ένα εγχειρίδιο της Pascal ως βιβλίο µελέτης και αναφοράς. Αφού πρόκειται να µελετήσουµε προγραµµατισµό, θα πρέπει προφανώς να προγραµ- µατίσουµε κάτι. Θα ήταν καλό να γράψουµε προγράµµατα που να περιλαµβάνουν κάποιες χρήσιµες δοµές επεξεργασίας πληροφοριών. Θα ήταν επίσης σκόπιµο και χρήσιµο να γράψουµε πολλά είδη προγραµµάτων, φροντίζοντας όµως να έχουν αρκετά απλή δοµή ώστε να µπορεί να τα κατανοήσει και να τα συντάξει εύκολα ένας αρχάριος. Θα θέλαµε ακόµη να εξοικειωθούµε µε ορισµένες θεµελιώδεις έννοιες που είναι απαραίτητες για µια πιο προχωρηµένη µελέτη. Με βάση αυτά, επιλέγουµε ως πρώτο πεδίο της µελέτης µας τα δένδρα απόφασης (decision trees). Τα δένδρα αυτά µπορούν να χρησιµοποιηθούν για ταξινόµηση αντικειµένων σε κατηγορίες, για τυπική αξιολόγηση προσώπων υπό τη µορφή συνέντευξης και για πολλά άλλα πράγµατα. Αρχικά θα µελετήσουµε τα δένδρα απόφασης, και στη συνέχεια θα µάθουµε πώς να συντάσσουµε προγράµµατα γι αυτά. 1.2 ένδρα απόφασης (B) Ας υποθέσουµε ότι θέλουµε να αποφασίσουµε ποιο βιβλίο να υποδείξουµε σε κάποιον που ενδιαφέρεται να αρχίσει σπουδές στην επιστήµη των υπολογιστών. Ένας καλός τρόπος να καταλήξουµε σε µια απόφαση είναι να απευθύνουµε στον ενδιαφερόµενο µια σειρά από ερωτήσεις µέσω των οποίων θα καταλήξουµε στο κατάλληλο βιβλίο. Η πρώτη ερώτηση θα µπορούσε να αφορά τον προτιµώµενο τρόπο προσέγγισης των θεµάτων της επιστήµης των υπολογιστών, π.χ. αν θα ήθελε να ακολουθήσει µια µαθηµατική προσέγγιση. ιατυπώνουµε, λοιπόν, τη σχετική ερώτηση και στη συνέχεια δηλώνουµε µε βέλη την κατεύθυνση που θα ακολουθήσουµε για την επόµενη ερώτηση: Δένδρο απόφασης για υπόδειξη βιβλίου:

23 1.2. ένδρα απόφασης 3 Στη συνέχεια, ανάλογα µε την πρώτη απάντηση, αποφασίζουµε τι ερωτήσεις θα πρέπει να τεθούν αµέσως µετά: Δένδρο απόφασης για υπόδειξη βιβλίου: Ας υποθέσουµε ότι µετά από δύο ερωτήσεις είµαστε σε θέση να υποδείξουµε το κατάλληλο βιβλίο. Στην περίπτωση αυτή, το δένδρο απόφασης µπορεί να συµπληρωθεί ως εξής: Δένδρο απόφασης για υπόδειξη βιβλίου: Ακολουθώντας µια διαδροµή στο δένδρο απόφασης, µπορούµε να καταστρώσουµε έναν ενδεικτικό «διάλογο». Εάν το συγκεκριµένο πρόσωπο έχει µαθηµατικό προσανατολισµό µε ενδιαφέρον στα θεωρητικά θέµατα, η διαδροµή διά µέσου του δένδρου έχει ως εξής: Επιλογή βιβλίου µε θέµα την επιστήµη των υπολογιστών: Ερώτηση του δένδρου απόφασης: Απάντηση: Ερώτηση του δένδρου απόφασης: Απάντηση: Υπόδειξη του δένδρου απόφασης: Επιθυµείτε µια µαθηµατική προσέγγιση; Ναι Σας ενδιαφέρει ο προγραµµατισµός ή τα θεωρητικά θέµατα; Θεωρητικά θέµατα Μια καλή επισκόπηση δίδεται στο βιβλίο Algorithmics του D. Harel. Το παραπάνωδένδρο µάς οδηγεί στην τελική απόφαση µετά από δύο µόνο διαδοχικές ερωτήσεις. Εύκολα όµως µπορεί να φανταστεί κανείς ένα µεγάλο δένδρο µε πολλές ερωτήσεις και µεγάληποικιλία συνιστώµενων βιβλίω ν στο τέλος των διαφόρων διαδρο- µών. Είναι επίσης προφανές ότι δένδρα αυτού τουτύπουµπορούν να χρησιµοποιηθούν

24 4 1. Εισαγωγή στον προγραµµατισµό: Κωδικοποίηση δένδρων απόφασης για παροχή συµβουλών σχεδόν για οποιοδήποτε ζήτηµα, από την υπόδειξη µιας θεραπευτικής αγωγής µέχρι την πρόβλεψη του µέλλοντος. Ιδού µερικά παραδείγµατα: Δένδρο απόφασης για την παροχή ιατρικής συµβουλής: Δένδρο απόφασης για πρόβλεψη του µέλλοντος: Τα δένδρα απόφασης µπορούν επίσης να χρησιµοποιηθούν για την ταξινόµηση διαφόρων πραγµάτων σε κατηγορίες. Ας υποθέσουµε ότι γνωρίζουµε τα ταξινοµικά χαρα-

25 1.2. ένδρα απόφασης 5 κτηριστικά των διαφόρων ειδών γλάρων και επιθυµούµε να προσδιορίσουµε µε ακρίβεια το είδος οποιουδήποτε ατόµου µε βάση τα χαρακτηριστικά του. Θα µπορούσαµε να κατασκευάσουµε ένα δένδρο της παρακάτωµορφής: Δένδρο απόφασης για ταξινόµηση γλάρων: Μπορούµε ακόµη να κατασκευάσουµε έναν οδηγό για τη συµπλήρωση της φορολογικής µας δήλωσης, µε τη µορφή δένδρου απόφασης. Ας δούµε τι µορφή θα είχε ένα µικρό τµήµα του: Οδηγός για τη συµπλήρωση φορολογικής δήλωσης: Τι θα λέγατε να κατασκευάσουµε ένα δένδρο απόφασης για ένα παιγνίδι; Ένα καλό παράδειγµα είναι το απλό παιγνίδι Nim, το οποίο έχει τους εξής κανόνες: Το παιγνίδι παίζεται από δύο παίκτες. Ο πρώτος παίκτης µπορεί να τοποθετήσει από ένα έως τρία Χστοαριστερό άκρο µιας οριζόντιας σειράς από τετράγωνα, την οποία θα ονοµάζουµε πίνακα. Ο αντίπαλος µπορεί να τοποθετήσει από ένα έως τρία Ο στα αµέσως επόµενα τετράγωνα του πίνακα. Αυτή η διαδοχή κινήσεων επαναλαµβάνεται συνεχώς, µέχρι να συµπληρωθεί ο πίνακας από αριστερά προς τα δεξιά µε Χ και Ο. Νικητής είναι ο παίκτης που θα καταφέρει να τοποθετήσει το δικό του σύµβολο στο τελευταίο τετράγωνο

26 6 1. Εισαγωγή στον προγραµµατισµό: Κωδικοποίηση δένδρων απόφασης του πίνακα. Για παράδειγµα, ας θεωρήσουµε ένα παιγνίδι Nim µε πίνακα µήκους επτά τετραγώνων: Έστωότι ο πρώτος παίκτης παίζει τρία Χ: Ας υποθέσουµε ότι ο δεύτερος παίκτης παίζει δύο Ο: Τότε ο πρώτος παίκτης µπορεί να κερδίσει το παιγνίδι τοποθετώντας δύο Χ στα δύο τελευταία τετράγωνα: Ας δούµε τώρα ένα δένδρο απόφασης που θα παίξει τον ρόλο του δεύτερου παίκτη για ένα παιγνίδι Nim µε επτά τετράγωνα: Δένδρο απόφασης για το παιγνίδι Nim:

27 1.3. Τα πρώτα βήµατα στον προγραµµατισµό 7 Στη φύση, τα δένδρα φυτρώνουν από το έδαφος και αναπτύσσονται απλώνοντας τα κλαδιά τους προς τον ουρανό. Τα δένδρα αυτού του κεφαλαίου, για λόγους καλύτερης εποπτείας, αναπτύσσονται από τα αριστερά προς τα δεξιά. Οι διαδροµές που θα εξετάσουµε σε αυτά τα δένδρα ξεκινούν από το ακραίο αριστερό παραλληλόγραµµο, τη ρίζα (root node), και συνεχίζονται προς τα δεξιά. Σε κάθε κόµβο (node) του δένδρου υποβάλλεται µια ερώτηση στον χρήστη, και µε βάση την απάντηση που δίνεται επιλέγεται οεπόµενοςκλάδοςπουθα ακολουθηθεί. Η διαδροµή συνεχίζεται προς τα δεξιά µέχρι την άφιξη σε κάποιον τερµατικό κόµβο ή φύλλο (leaf node), δηλαδή έναν κόµβο που δεν έχει διακλαδώσεις προςταδεξιά.αυτόςοκόµβοςπεριέχει ένα µήνυµα το οποίο δίνει το αποτέλεσµα της ακολουθίας των ερωταποκρίσεων και σηµατοδοτεί το τέλος της διαδικασίας. Τέτοια δένδρα απόφασης έχουν πληθώρα εφαρµογών σε δραστηριότητες που απαιτούν επεξεργασία πληροφοριών, όπως είναι η παροχή συµβουλών, η ταξινόµηση αντικειµένων, η διδασκαλία, ακόµη και η ψυχαγωγία (παιχνίδια). Ο στόχος µας στο κεφάλαιο αυτό είναι η σύνταξη προγραµµάτων τα οποία θα καταγράφουν τη δοµή κάποιου δένδρου απόφασης, θα κατευθύνουν τον χρήστη στις σωστές διαδροµές και θα εκτυπώνουν τα αποτελέσµατα. Η ικανότητα σχεδιασµού και προγραµµατισµού τέτοιων δένδρων είναι ένα σηµαντικό προσόν για ένα µεγάλο πλήθος εφαρµογών. Ασκήσεις 1. Συµπληρώστε ένα από τα ηµιτελή δένδρα απόφασης αυτής της ενότητας. 2. Σχεδιάστε ένα πλήρες δένδρο απόφασης που να υποδύεται τον δεύτερο παίκτη σε ένα παιγνίδι Nim µε εννέα τετράγωνα. 3. Εντοπίστε ένα πρόβληµα σε κάποιον τοµέα των προσωπικών σας ενδιαφερόντων και σχεδιάστε ένα δένδρο απόφασης που να επιλύει το πρόβληµα αυτό. 1.3 Τα πρώτα βήµατα στον προγραµµατισµό (B) Ένα πρόγραµµα (computer program) είναι µια ακολουθία εντολών που µπορεί να εκτελέσει ένας υπολογιστής. Πρόκειται για µια αλληλουχία ενεργειών τις οποίες θα φέρει σε πέρας ο υπολογιστής και, εποµένως, θα πρέπει να είναι γραµµένες σε γλώσσα κατανοητή από τον υπολογιστή. Τα περισσότερα προγράµµατα αυτού του βιβλίου είναι γραµ- µένα στην Pascal, µια γλώσσα αρκετά διαδεδοµένη και εύχρηστη. Ένα πρόγραµµα ή ένα τµήµα προγράµµατος ονοµάζεται επίσης κώδικας (code). Στο βιβλίο αυτό χρησιµοποιούµε και τους δύο όρους. Ας δούµε ένα παράδειγµα προγράµµατος γραµµένου σε Pascal. program FirstCode; writeln(' Σπουδαίες ιδέες '); writeln(' στην '); writeln('επιστήµη των υπολογιστών'); readln; end. Εάν θέλουµε να πραγµατοποιηθούν οι ενέργειες που περιγράφονται στο παραπάνω πρόγραµµα, εκτελούµε (ή τρέχουµε, όπω ς επίσης λέγεται) το πρόγραµµα στον υπολογιστή. Για την εκτέλεση του προγράµµατος απαιτούνται τα εξής: ένας υπολογιστής, λογισµικό (software) που επιτρέπει στον υπολογιστήµαςνα«καταλαβαίνει» και να επεξεργάζεται προγράµµατα Pascal,

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

Διαβάστε περισσότερα

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

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Κεφάλαιο 6ο Εισαγωγή στον Προγραµµατισµό Μέρος Πρώτο (6.1, 6.2 και 6.3) Α. Ερωτήσεις Σωστού Λάθους 1. Η γλώσσα µηχανής είναι µία γλώσσα υψηλού επιπέδου.

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β Καβακλή Χειμερινό Εξάμηνο 2001 Στόχοι του Μαθήματος! Ανάπτυξη αναλυτικής

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ. ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ. ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015 Επιτροπή προπτυχιακών σπουδών: Κ. Βασιλάκης Κ. Γιαννόπουλος

Διαβάστε περισσότερα

ΑΝΑΖΗΤΗΣΗ ΣΕ ΗΛΕΚΤΡΟΝΙΚΕΣ ΒΙΒΛΙΟΘΗΚΕΣ

ΑΝΑΖΗΤΗΣΗ ΣΕ ΗΛΕΚΤΡΟΝΙΚΕΣ ΒΙΒΛΙΟΘΗΚΕΣ ΑΝΑΖΗΤΗΣΗ ΣΕ ΗΛΕΚΤΡΟΝΙΚΕΣ ΒΙΒΛΙΟΘΗΚΕΣ Μία από τις πιο σηµαντικές υπηρεσίες που προσφέρει το διαδίκτυο στην επιστηµονική κοινότητα είναι η αποµακρυσµένη πρόσβαση των χρηστών σε ηλεκτρονικές βιβλιοθήκες

Διαβάστε περισσότερα

Σχόλια και υποδείξεις για το Σχέδιο Μαθήματος

Σχόλια και υποδείξεις για το Σχέδιο Μαθήματος Σχόλια και υποδείξεις για το Σχέδιο Μαθήματος Ακολούθως αναπτύσσονται ορισμένα διευκρινιστικά σχόλια για το Σχέδιο Μαθήματος. Αφετηρία για τον ακόλουθο σχολιασμό υπήρξαν οι σχετικές υποδείξεις που μας

Διαβάστε περισσότερα

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ Μ. Γρηγοριάδου Ρ. Γόγουλου Ενότητα: Η Διδασκαλία του Προγραμματισμού Περιεχόμενα Παρουσίασης

Διαβάστε περισσότερα

Αγαπητές/οί συνάδελφοι, σε αυτό το τεύχος σας προτείνουµε µερικά ενδιαφέροντα βιβλία που αφορούν βασικές αρχές της Συµβουλευτικής.

Αγαπητές/οί συνάδελφοι, σε αυτό το τεύχος σας προτείνουµε µερικά ενδιαφέροντα βιβλία που αφορούν βασικές αρχές της Συµβουλευτικής. Αγαπητές/οί συνάδελφοι, σε αυτό το τεύχος σας προτείνουµε µερικά ενδιαφέροντα βιβλία που αφορούν βασικές αρχές της Συµβουλευτικής. Arist Von Schlippe, Jochen Schweitzer επιµέλεια: Βιργινία Ιωαννίδου µετάφραση:

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ 1 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 1 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ 1.1 Να δοθεί ο ορισμός του προβλήματος καθώς και τρία παραδείγματα

Διαβάστε περισσότερα

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος. 1. Δώστε τον ορισμό του προβλήματος. 2. Σι εννοούμε με τον όρο επίλυση ενός προβλήματος; 3. Σο πρόβλημα του 2000. 4. Σι εννοούμε με τον όρο κατανόηση προβλήματος; 5. Σι ονομάζουμε χώρο προβλήματος; 6.

Διαβάστε περισσότερα

ιαφάνειες παρουσίασης #1

ιαφάνειες παρουσίασης #1 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

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

ΚΡΥΠΤΟΓΡΑΦΙΑ Α. ΑΠΟ ΤΟ ΒΙΒΛΙΟ «Η ΦΥΣΗ ΚΑΙ Η ΔΥΝΑΜΗ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ» ΚΡΥΠΤΟΓΡΑΦΙΑ Α. ΑΠΟ ΤΟ ΒΙΒΛΙΟ «Η ΦΥΣΗ ΚΑΙ Η ΔΥΝΑΜΗ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ» - Κρυπτογραφία είναι - Κρυπτανάλυση είναι - Με τον όρο κλειδί. - Κρυπτολογία = Κρυπτογραφία + Κρυπτανάλυση - Οι επιστήµες αυτές είχαν

Διαβάστε περισσότερα

Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa.

Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa. Πληροφορική 1 Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa.gr/~organosi/ 2 Η δομή του μαθήματος Εισαγωγή στην

Διαβάστε περισσότερα

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

Διαβάστε περισσότερα

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει;

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει; ΜΑΘΗΜΑ 7 Κλήση αλγορίθμου από αλγόριθμο Αναδρομή Σ χ ο λ ι κ ο Β ι β λ ι ο ΥΠΟΚΕΦΑΛΑΙΟ 2.2.7: ΕΝΤΟΛΕΣ ΚΑΙ ΔΟΜΕΣ ΑΛΓΟΡΙΘΜΟΥ ΠΑΡΑΓΡΑΦΟI 2.2.7.5: Κλήση αλγορίθμου από αλγόριθμο 2.2.7.6: Αναδρομή εισαγωγη

Διαβάστε περισσότερα

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

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

Διαβάστε περισσότερα

Εισαγωγή στην έννοια του Αλγορίθμου

Εισαγωγή στην έννοια του Αλγορίθμου Εισαγωγή στην έννοια του Αλγορίθμου ΟΜΑΔΑ ΑΝΑΠΤΥΞΗΣ Νίκος Μιχαηλίδης, Πληροφορικός ΠΕ19 ΣΧΟΛΕΙΟ 2 ο Πρότυπο Πειραματικό Γυμνάσιο Θεσσαλονίκης Θεσσαλονίκη, 24 Φεβρουαρίου 2015 1. Συνοπτική περιγραφή της

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΣΚΗΣΕΙΣ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΡΩΤΗΣΕΙΣ ΣΩΣΤΟ ΛΑΘΟΣ Σημειώστε αν είναι σωστή ή

Διαβάστε περισσότερα

7.5 ΑΡΑΙΕΣ ΜΗΤΡΕΣ 290 7.5.1 Κατασκευή αραιών µητρών... 290 7.5.2 Πράξεις και συναρτήσεις αραιών µητρών... 294 7.5.3 Συναρτήσεις για γραφήµατα...

7.5 ΑΡΑΙΕΣ ΜΗΤΡΕΣ 290 7.5.1 Κατασκευή αραιών µητρών... 290 7.5.2 Πράξεις και συναρτήσεις αραιών µητρών... 294 7.5.3 Συναρτήσεις για γραφήµατα... Κ. Π Α Π Α Ρ Ρ Ι Ζ Ο Σ M A T L A B 6. 5 Π Ε Ρ Ι Ε Χ Ο Μ Ε Ν Α Π Ρ Ο Λ Ο Γ Ο Σ............. v Κ Ε Φ Α Λ Α Ι Ο 1 Β Α Σ Ι Κ Ε Σ Λ Ε Ι Τ Ο Υ Ρ Γ Ι Ε Σ Τ Ο Υ M A T L A B 1 1.1 ΠΡΑΞΕΙΣ ΚΑΙ ΑΡΙΘΜΗΤΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΠΑΙΔΑΓΩΓΙΚΗ ΣΧΟΛΗ ΦΛΩΡΙΝΑΣ ΤΜΗΜΑ ΔΗΜΟΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΔΙ.ΜΕ.Π.Α Β ΦΑΣΗ: ΔΙΔΑΚΤΙΚΗ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΠΑΙΔΑΓΩΓΙΚΗ ΣΧΟΛΗ ΦΛΩΡΙΝΑΣ ΤΜΗΜΑ ΔΗΜΟΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΔΙ.ΜΕ.Π.Α Β ΦΑΣΗ: ΔΙΔΑΚΤΙΚΗ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ Φοιτητής: Παύλου Νικόλαος, Α.Ε.Μ: 2245, Ε Εξάμηνο Σχολείο: 1 ο Πειραματικό

Διαβάστε περισσότερα

http://kesyp.didefth.gr/ 1

http://kesyp.didefth.gr/ 1 248_Τµήµα Εφαρµοσµένων Μαθηµατικών Πανεπιστήµιο Κρήτης, Ηράκλειο Προπτυχιακό Πρόγραµµα Σκοπός του Τµήµατος Εφαρµοσµένων Μαθηµατικών είναι η εκαπαίδευση επιστηµόνων ικανών όχι µόνο να υπηρετήσουν και να

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος ΑΛΓΟΡΙΘΜΟΙ Στο σηµείωµα αυτό αρχικά εξηγείται η έννοια αλγόριθµος και παραθέτονται τα σπουδαιότερα κριτήρια που πρέπει να πληρεί κάθε αλγόριθµος. Στη συνέχεια, η σπουδαιότητα των αλγορίθµων συνδυάζεται

Διαβάστε περισσότερα

ΠΑΡΑΡΤΗΜΑ VΙ - Ο ΗΓΙΕΣ ΥΠΟΒΟΛΗΣ ΠΡΟΤΑΣΗΣ

ΠΑΡΑΡΤΗΜΑ VΙ - Ο ΗΓΙΕΣ ΥΠΟΒΟΛΗΣ ΠΡΟΤΑΣΗΣ ΠΑΡΑΡΤΗΜΑ VΙ - Ο ΗΓΙΕΣ ΥΠΟΒΟΛΗΣ ΠΡΟΤΑΣΗΣ Έκδοση Εγγράφου: 1.0 Επιχειρησιακό Πρόγραµµα «Εκπαίδευση & ια Βίου Μάθηση» (ΕΚ. ι.βι.μ) Κενή σελίδα 2 Πίνακας περιεχοµένων 1 Εισαγωγή... 6 1.1 ηµιουργία πρότασης...

Διαβάστε περισσότερα

1. ΓΕΝΙΚΟΙ ΚΑΝΟΝΕΣ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΛΗΨΗΣ ΠΤΥΧΙΟΥ

1. ΓΕΝΙΚΟΙ ΚΑΝΟΝΕΣ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΛΗΨΗΣ ΠΤΥΧΙΟΥ 1. ΓΕΝΙΚΟΙ ΚΑΝΟΝΕΣ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΛΗΨΗΣ ΠΤΥΧΙΟΥ Ισχύει ένα πρόγραμμα σπουδών από τον Οκτώβριο του 2013. Για να πάρει κάποιος πτυχίο από το 2014 κι έπειτα απαιτείται να πληροί όλους τους παρακάτω όρους:

Διαβάστε περισσότερα

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

ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1 (Α) Σημειώστε δίπλα σε κάθε πρόταση «Σ» ή «Λ» εφόσον είναι σωστή ή λανθασμένη αντίστοιχα. 1. Τα συντακτικά λάθη ενός προγράμματος

Διαβάστε περισσότερα

ΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙ ΑΣ ΣΤΟ MICROSOFT WORD

ΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙ ΑΣ ΣΤΟ MICROSOFT WORD ΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙ ΑΣ ΣΤΟ MICROSOFT WORD Σε ορισµένες περιπτώσεις είναι ιδιαίτερα χρήσιµη η δηµιουργία ιστοσελίδων ενηµερωτικού περιεχοµένου οι οποίες στη συνέχεια µπορούν να δηµοσιευθούν σε κάποιο τόπο

Διαβάστε περισσότερα

Σηµειώσεις στις σειρές

Σηµειώσεις στις σειρές . ΟΡΙΣΜΟΙ - ΓΕΝΙΚΕΣ ΕΝΝΟΙΕΣ Σηµειώσεις στις σειρές Στην Ενότητα αυτή παρουσιάζουµε τις βασικές-απαραίτητες έννοιες για την µελέτη των σειρών πραγµατικών αριθµών και των εφαρµογών τους. Έτσι, δίνονται συστηµατικά

Διαβάστε περισσότερα

Πώς γράφεται μια προπτυχιακή εργασία στην Ιστορία της Τέχνης. Σχεδιάγραμμα. Γενικές οδηγίες

Πώς γράφεται μια προπτυχιακή εργασία στην Ιστορία της Τέχνης. Σχεδιάγραμμα. Γενικές οδηγίες Πανεπιστήμιο Ιωαννίνων Φιλοσοφική Σχολή Τμήμα Ιστορίας-Αρχαιολογίας Τομέας Αρχαιολογίας και Ιστορίας της Τέχνης Δώρα Μαρκάτου, επίκ. Καθηγήτρια Πώς γράφεται μια προπτυχιακή εργασία στην Ιστορία της Τέχνης

Διαβάστε περισσότερα

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

Διαβάστε περισσότερα

Κεφάλαιο 5ο: Εντολές Επανάληψης

Κεφάλαιο 5ο: Εντολές Επανάληψης Χρήστος Τσαγγάρης ΕΕ ΙΠ Τµήµατος Μαθηµατικών, Πανεπιστηµίου Αιγαίου Κεφάλαιο 5ο: Εντολές Επανάληψης Η διαδικασία της επανάληψης είναι ιδιαίτερη συχνή, αφού πλήθος προβληµάτων µπορούν να επιλυθούν µε κατάλληλες

Διαβάστε περισσότερα

Προσφερόμενα Διπλώματα (Προσφερόμενοι Τίτλοι)

Προσφερόμενα Διπλώματα (Προσφερόμενοι Τίτλοι) Εισαγωγή Το Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών του Πανεπιστημίου Κύπρου προσφέρει ολοκληρωμένα προπτυχιακά και μεταπτυχιακά προγράμματα σπουδών στους κλάδους του Ηλεκτρολόγου Μηχανικού

Διαβάστε περισσότερα

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές 1 ο Εξάμηνο Σπουδών Χειμερινό Εξάμηνο 2012/13 Τμήμα Εφαρμοσμένων Μαθηματικών, Πανεπιστήμιο Κρήτης Διδάσκων: Χαρμανδάρης Ευάγγελος, email: vagelis@tem.uoc.gr, Ιστοσελίδα

Διαβάστε περισσότερα

723 Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών ΤΕΙ Λάρισας

723 Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών ΤΕΙ Λάρισας 723 Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών ΤΕΙ Λάρισας Το Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών του ΤΕΙ Λάρισας ιδρύθηκε με το Προεδρικό Διάταγμα 200/1999 (ΦΕΚ 179 06/09/99), με πρώτο

Διαβάστε περισσότερα

Γλώσσες Προγραμματισμού Μεταγλωττιστές

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

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Παρουσιάσεις

ΚΕΦΑΛΑΙΟ 5. Παρουσιάσεις Κεφάλαιο 1 Κεφάλαιο 5 Εισαγωγικές έννοιες πληροφορικής. Χρήση Η/Υ και Γραφικό περιβάλλον επικοινωνίας ΚΕΦΑΛΑΙΟ 5 Η επιτυχία ή αποτυχία µιας παρουσίασης εξαρτάται από ένα µεγάλο αριθµό παραγόντων και σχεδόν

Διαβάστε περισσότερα

ιδασκαλία της Ροµποτικής Επιστήµης στη ευτεροβάθµια Εκπαίδευση Εµπειρίες από άλλα εκπαιδευτικά συστήµατα και προσαρµογή στην Ελληνική πραγµατικότητα

ιδασκαλία της Ροµποτικής Επιστήµης στη ευτεροβάθµια Εκπαίδευση Εµπειρίες από άλλα εκπαιδευτικά συστήµατα και προσαρµογή στην Ελληνική πραγµατικότητα ιδασκαλία της Ροµποτικής Επιστήµης στη ευτεροβάθµια Εκπαίδευση Εµπειρίες από άλλα εκπαιδευτικά συστήµατα και προσαρµογή στην Ελληνική πραγµατικότητα Αντώνιος Τζες Αναπληρωτής Καθηγητής Τµήµατος Ηλεκτρολόγων

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 1: Εισαγωγή στη C - Αλγόριθμοι Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΣΕΙΡΕΣ TAYLOR. Στην Ενότητα αυτή θα ασχοληθούµε µε την προσέγγιση συναρτήσεων µέσω πολυωνύµων. Πολυώνυµο είναι κάθε συνάρτηση της µορφής:

ΣΕΙΡΕΣ TAYLOR. Στην Ενότητα αυτή θα ασχοληθούµε µε την προσέγγιση συναρτήσεων µέσω πολυωνύµων. Πολυώνυµο είναι κάθε συνάρτηση της µορφής: ΣΕΙΡΕΣ TAYLOR Στην Ενότητα αυτή θα ασχοληθούµε µε την προσέγγιση συναρτήσεων µέσω πολυωνύµων Πολυώνυµο είναι κάθε συνάρτηση της µορφής: p( ) = a + a + a + a + + a, όπου οι συντελεστές α i θα θεωρούνται

Διαβάστε περισσότερα

ΟΔΗΓΟΣ ΕΚΠΟΝΗΣΗΣ ΕΡΓΑΣΙΑΣ

ΟΔΗΓΟΣ ΕΚΠΟΝΗΣΗΣ ΕΡΓΑΣΙΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ & ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ & ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗΣ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ "ΛΟΓΙΣΤΙΚΗ & ΕΛΕΓΚΤΙΚΗ" ΟΔΗΓΟΣ ΕΚΠΟΝΗΣΗΣ ΕΡΓΑΣΙΑΣ Κοζάνη, 2015 Πίνακας περιεχομένων 1) ΓΕΝΙΚΑ ΠΕΡΙ ΕΡΓΑΣΙΩΝ....

Διαβάστε περισσότερα

Περιεχόμενα 1 Εισαγωγή Η φράση επιστήµη των υπολογιστών σήµερα έχει αποκτήσει ευρύτατο νόηµα. Ωστόσο, στο βιβλίο αυτό ορίζουµε τη φράση ως "θέµατα που σχετίζονται µε τον υπολογιστή". Αυτό το εισαγωγικό

Διαβάστε περισσότερα

Προγραµµατιστική Εργασία 1 ο Μέρος

Προγραµµατιστική Εργασία 1 ο Μέρος Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών 4 Νοεµβρίου 2011 ΗΥ240: οµές εδοµένων Χειµερινό Εξάµηνο Ακαδηµαϊκό Έτος 2011-12 ιδάσκουσα: Παναγιώτα Φατούρου Προγραµµατιστική Εργασία 1 ο Μέρος Ηµεροµηνία

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ VI. Εισαγωγή στον προγραμματισμό

ΚΕΦΑΛΑΙΟ VI. Εισαγωγή στον προγραμματισμό ΚΕΦΑΛΑΙΟ VI Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει, όπως έχει ήδη αναφερθεί, τρία εξίσου σημαντικά στάδια. Τον ακριβή προσδιορισμό του προβλήματος. Την ανάπτυξη του αντίστοιχου αλγορίθμου.

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης ΚΕΦΑΛΑΙΟ 1ο 3ο 1. Συμπληρώστε τα κενά με τη λέξη που λείπει. α. Ένα πρόβλημα το χωρίζουμε σε άλλα απλούστερα, όταν είναι ή όταν έχει τρόπο επίλυσης. β. Η επίλυση ενός προβλήματος προϋποθέτει την του. γ.

Διαβάστε περισσότερα

Το µάθηµα Ηλεκτρονική ηµοσίευση

Το µάθηµα Ηλεκτρονική ηµοσίευση Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας Ιόνιο Πανεπιστήµιο Το µάθηµα Ηλεκτρονική ηµοσίευση Σαράντος Καπιδάκης Επικοινωνία Σαράντος Καπιδάκης Εργαστήριο Ψηφιακών Βιβλιοθηκών και Ηλεκτρονικής ηµοσίευσης sarantos@ionio.gr

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ ΠΑΙΓΝΙΩΝ ΠΝΕΠΙΣΤΗΜΙΟ ΜΚΕ ΟΝΙΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜ ΕΦΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙ ΠΙΓΝΙΩΝ Εξετάσεις 13 Φεβρουαρίου 2004 ιάρκεια εξέτασης: 2 ώρες (13:00-15:00) ΘΕΜ 1 ο (2.5) α) Για δύο στρατηγικές

Διαβάστε περισσότερα

ΕΠΛ 003.3: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Για οικονομολόγους

ΕΠΛ 003.3: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Για οικονομολόγους ΕΠΛ 003.3: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Για οικονομολόγους Στόχοι 1 Να εξετάσουμε γιατί η Πληροφορική είναι χρήσιμη στην οικονομική επιστήμη. Να μάθουμε πώς χρησιμοποιείται η Πληροφορική

Διαβάστε περισσότερα

Τμήμα Πληροφορικής & Τηλεπικοινωνιών Μεταπτυχιακό Πρόγραμμα Σπουδών Ακαδημαϊκό Έτος 2013-14. ΠΜΣ ΚΑΤΕΥΘΥΝΣΗ 6 η

Τμήμα Πληροφορικής & Τηλεπικοινωνιών Μεταπτυχιακό Πρόγραμμα Σπουδών Ακαδημαϊκό Έτος 2013-14. ΠΜΣ ΚΑΤΕΥΘΥΝΣΗ 6 η Τμήμα Πληροφορικής & Τηλεπικοινωνιών Μεταπτυχιακό Πρόγραμμα Σπουδών Ακαδημαϊκό Έτος 2013-14 ΠΜΣ ΚΑΤΕΥΘΥΝΣΗ 6 η Νέες Τεχνολογίες Πληροφορικής και Τηλεπικοινωνιών Εργασία στο Μαθήμα Σχεδίαση Εκπαιδευτικού

Διαβάστε περισσότερα

αντισταθµίζονται µε τα πλεονεκτήµατα του άλλου, τρόπου βαθµολόγησης των γραπτών και της ερµηνείας των σχετικών αποτελεσµάτων, και

αντισταθµίζονται µε τα πλεονεκτήµατα του άλλου, τρόπου βαθµολόγησης των γραπτών και της ερµηνείας των σχετικών αποτελεσµάτων, και 1. ΕΙΣΑΓΩΓΗ Όλα τα είδη ερωτήσεων που αναφέρονται στο «Γενικό Οδηγό για την Αξιολόγηση των µαθητών στην Α Λυκείου» µπορούν να χρησιµοποιηθούν στα Μαθηµατικά, τόσο στην προφορική διδασκαλία/εξέταση, όσο

Διαβάστε περισσότερα

Σχέδιο παρουσίασης των διδασκαλιών ή των project

Σχέδιο παρουσίασης των διδασκαλιών ή των project Σχέδιο παρουσίασης των διδασκαλιών ή των project Σην παρουσίαση των διδασκαλιών ή των project μπορούμε να ακολουθήσουμε την φόρμα που παρουσιάζεται παρακάτω. Μια παρουσίαση σύντομη και μια λεπτομερής.

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 6 ο Με τι ασχολείται ο προγραμματισμός; Ο προγραμματισμός ασχολείται με την διατύπωση του αλγορίθμου σε κατανοητή μορφή από τον Η/Υ, δηλ. τη δημιουργία του προγράμματος, του συνόλου των εντολών που πρέπει

Διαβάστε περισσότερα

INFO. Copyright ECDL Ελλάς, Σεπτέµβριος 2004 ΤΟ ΠΕΡΙΕΧΟΜΕΝΟ ΑΥΤΟΥ ΤΟΥ ΕΝΤΥΠΟΥ ΑΦΟΡΑ ΑΠΟΚΛΕΙΣΤΙΚΑ ΤΑ ΕΞΕΤΑΣΤΙΚΑ ΚΕΝΤΡΑ ECDL

INFO. Copyright ECDL Ελλάς, Σεπτέµβριος 2004 ΤΟ ΠΕΡΙΕΧΟΜΕΝΟ ΑΥΤΟΥ ΤΟΥ ΕΝΤΥΠΟΥ ΑΦΟΡΑ ΑΠΟΚΛΕΙΣΤΙΚΑ ΤΑ ΕΞΕΤΑΣΤΙΚΑ ΚΕΝΤΡΑ ECDL INFO ECDL Expert Ένα ολοκληρωµένο Πρόγραµµα Πιστοποίησης γνώσεων πληροφορικής και δεξιοτήτων χρήσης Η/Υ ΠΡΟΧΩΡΗΜΕΝΟΥ ΕΠΙΠΕ ΟΥ Copyright ECDL Ελλάς, Σεπτέµβριος 2004 ΤΟ ΠΕΡΙΕΧΟΜΕΝΟ ΑΥΤΟΥ ΤΟΥ ΕΝΤΥΠΟΥ ΑΦΟΡΑ

Διαβάστε περισσότερα

ΣΗΜΕΙΩΣΕΙΣ ΓΡΑΦΙΣΤΙΚΗ ΜΕ Η/Υ 1. Του Αποστόλου Παπαποστόλου Επίκουρου Καθηγητή του ΤΕΙ Αθήνας

ΣΗΜΕΙΩΣΕΙΣ ΓΡΑΦΙΣΤΙΚΗ ΜΕ Η/Υ 1. Του Αποστόλου Παπαποστόλου Επίκουρου Καθηγητή του ΤΕΙ Αθήνας ΣΗΜΕΙΩΣΕΙΣ ΓΡΑΦΙΣΤΙΚΗ ΜΕ Η/Υ 1 Του Αποστόλου Παπαποστόλου Επίκουρου Καθηγητή του ΤΕΙ Αθήνας ΕΙΣΑΓΩΓΗ Οι γραφικές παραστάσεις µε υπολογιστές έχουν προχωρήσει πολύ από τότε που οι ε- πιστήµονες που δούλευαν

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β. ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Σύνολο χαρακτήρων της Pascal Για

Διαβάστε περισσότερα

μαθηματικά β γυμνασίου

μαθηματικά β γυμνασίου μαθηματικά β γυμνασίου Κάθε αντίτυπο φέρει την υπογραφή ενός εκ των συγγραφέων Σειρά: Γυμνάσιο, Θετικές Επιστήμες Μαθηματικά Β Γυμνασίου, Βασίλης Διολίτσης Ιωάννα Κοσκινά Νικολέττα Μπάκου Θεώρηση Κειμένου:

Διαβάστε περισσότερα

ΑΝΑΝΕΩΣΗ ΔΗΛΩΣΕΩΝ ΜΑΘΗΜΑΤΩΝ ΓΙΑ ΤΟ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2012-2013

ΑΝΑΝΕΩΣΗ ΔΗΛΩΣΕΩΝ ΜΑΘΗΜΑΤΩΝ ΓΙΑ ΤΟ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2012-2013 ΑΝΑΝΕΩΣΗ ΔΗΛΩΣΕΩΝ ΜΑΘΗΜΑΤΩΝ ΓΙΑ ΤΟ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2012-2013 (εξάμηνα εγγραφής από 09-10 Εαρινό έως και 06-07 Χειμερινό) Οι φοιτητές που θα κάνουν ανανέωση από το 2 ο έως και το 7 ο εξάμηνο σπουδών θα

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ. Διατάξεις Ημιαγωγών. Ηλ. Αιθ. 013. Αριθμητικές Μέθοδοι Διαφορικών Εξισώσεων Ηλ. Αιθ. 013

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ. Διατάξεις Ημιαγωγών. Ηλ. Αιθ. 013. Αριθμητικές Μέθοδοι Διαφορικών Εξισώσεων Ηλ. Αιθ. 013 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Ακαδημαϊκό Έτος 2014-2015 Περίοδος Φεβρουαρίου 2015 ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ ΗΜΕΡΟΜΗΝΙΑ ΩΡΑ 1ο-2ο ΕΞΑΜΗΝΟ 3ο-4ο ΕΞΑΜΗΝΟ 5ο-6ο

Διαβάστε περισσότερα

Περιεχόµενο. ΕΠΛ 422: Συστήµατα Πολυµέσων. Σχεδίαση και Ανάπτυξη Πολυµεσικών Εφαρµογών. Βιβλιογραφία. Καγιάφας [2000]: Κεφάλαιο 9, [link]

Περιεχόµενο. ΕΠΛ 422: Συστήµατα Πολυµέσων. Σχεδίαση και Ανάπτυξη Πολυµεσικών Εφαρµογών. Βιβλιογραφία. Καγιάφας [2000]: Κεφάλαιο 9, [link] Περιεχόµενα ΕΠΛ 422: Συστήµατα Πολυµέσων Σχεδίαση και Ανάπτυξη Πολυµεσικών Εφαρµογών Βασικά ζητήµατα σχεδίασης Η διαδικασία ανάπτυξης πολυµεσικών εφαρµογών Η οµάδα ανάπτυξης πολυµεσικών εφαρµογών Σχεδίαση

Διαβάστε περισσότερα

ΓΙΑΝΝΗΣ ΚΑΡΑΓΙΑΝΝΑΚΗΣ. Οι αριθμοί πέρα απ τους κανόνες

ΓΙΑΝΝΗΣ ΚΑΡΑΓΙΑΝΝΑΚΗΣ. Οι αριθμοί πέρα απ τους κανόνες ΓΙΑΝΝΗΣ ΚΑΡΑΓΙΑΝΝΑΚΗΣ Οι αριθμοί πέρα απ τους κανόνες Οι αριθμοί πέρα απ τους κανόνες Γιάννης Καραγιαννάκης Copyright Γιάννης Καραγιαννάκης Eκδότης: Διερευνητική Μάθηση, Αθήνα 2012 Επιμέλεια: Γιάννης Καραγιαννάκης

Διαβάστε περισσότερα

Παραδειγματικό σενάριο στο μάθημα της Νεοελληνικής Γλώσσας. «Το παραμύθι της τάξης»

Παραδειγματικό σενάριο στο μάθημα της Νεοελληνικής Γλώσσας. «Το παραμύθι της τάξης» Π.3.1.4 Ολοκληρωμένα παραδείγματα εκπαιδευτικών σεναρίων ανά γνωστικό αντικείμενο με εφαρμογή των αρχών σχεδίασης Παραδειγματικό σενάριο στο μάθημα της Νεοελληνικής Γλώσσας «Το παραμύθι της τάξης» ΑΝΑΣΤΑΣΙΟΣ

Διαβάστε περισσότερα

I.C.B.S. METAΠTYXIAKO TMHMA ΠΡΟΓΡΑΜΜΑ: DMS ΜΑΘΗΜΑ: ΜΑΝΑΤΖΜΕΝΤ ΑΝΘΡΩΠΙΝΩΝ ΠΟΡΩΝ ΑΤΟΜΙΚΗ ΕΡΓΑΣΙΑ. ΜΕΡΟΣ Α (70% του βαθµού)

I.C.B.S. METAΠTYXIAKO TMHMA ΠΡΟΓΡΑΜΜΑ: DMS ΜΑΘΗΜΑ: ΜΑΝΑΤΖΜΕΝΤ ΑΝΘΡΩΠΙΝΩΝ ΠΟΡΩΝ ΑΤΟΜΙΚΗ ΕΡΓΑΣΙΑ. ΜΕΡΟΣ Α (70% του βαθµού) I.C.B.S. METAΠTYXIAKO TMHMA ΠΡΟΓΡΑΜΜΑ: DMS ΜΑΘΗΜΑ: ΜΑΝΑΤΖΜΕΝΤ ΑΝΘΡΩΠΙΝΩΝ ΠΟΡΩΝ ΑΤΟΜΙΚΗ ΕΡΓΑΣΙΑ ΜΕΡΟΣ Α (70% του βαθµού) Ετοιµάστε µια αναφορά προς τη διοίκηση, µε µέγιστο αριθµό λέξεων 3000 (+/- %), χωρίς

Διαβάστε περισσότερα

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

Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Γλώσσες Προγραμματισμού 6.1.1 Γλώσσες μηχανής (1 η γενιά) Η γλώσσα στην οποία ένας ηλεκτρονικός υπολογιστής καταλαβαίνει

Διαβάστε περισσότερα

Βασικές έννοιες και αρχές των Φυσικών Επιστημών Δ ι δ α κ τ ι κ έ ς ε ν ό τ η τ ε ς Τεχνικές διδασκαλίας

Βασικές έννοιες και αρχές των Φυσικών Επιστημών Δ ι δ α κ τ ι κ έ ς ε ν ό τ η τ ε ς Τεχνικές διδασκαλίας Α Τίτλος Προγράμματος Εκπαίδευσης Ενηλίκων Βασικές έννοιες και αρχές των Φυσικών Επιστημών Β Ομάδα Στόχος στην οποία απευθύνεται Το πρόγραμμα απευθύνεται σε αποφοίτους Γενικών / Τεχνικών Λυκείων, ΤΕΕ που

Διαβάστε περισσότερα

Λίγα λόγια από το συγγραφέα... 7. 91 Βάσεις δεδομένων και Microsoft Access... 9. 92 Microsoft Access... 22

Λίγα λόγια από το συγγραφέα... 7. 91 Βάσεις δεδομένων και Microsoft Access... 9. 92 Microsoft Access... 22 ΕΝΟΤΗΤΑ 5 Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 91 Βάσεις δεδομένων και Microsoft Access... 9 92 Microsoft Access... 22 93 Το σύστημα Βοήθειας του Microsoft Office... 32 94 Σχεδιασμός βάσης δεδομένων

Διαβάστε περισσότερα

ΕΡΕΥΝΗΤΙΚΟ ΕΡΓΟ. Κωδικός Έργου σε Επιτροπή Ερευνών/ΕΛΚΕ του ΑΠΘ : 90714 ΤΕΛΙΚΗ ΕΚΘΕΣΗ ΠΡΟΟΔΟΥ

ΕΡΕΥΝΗΤΙΚΟ ΕΡΓΟ. Κωδικός Έργου σε Επιτροπή Ερευνών/ΕΛΚΕ του ΑΠΘ : 90714 ΤΕΛΙΚΗ ΕΚΘΕΣΗ ΠΡΟΟΔΟΥ 1 ΕΡΕΥΝΗΤΙΚΟ ΕΡΓΟ Άνθρωποι του Κάτω Κόσµου: ιδεολογίες και πολιτικές διακρίσεων, αποκλεισµού και διώξεων στη σύγχρονη εποχή. Ιστορικό ανθολόγιο και εκπαιδευτικός οδηγός. People of the Underworld: ideologies

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 18. 18 Μηχανική Μάθηση

ΚΕΦΑΛΑΙΟ 18. 18 Μηχανική Μάθηση ΚΕΦΑΛΑΙΟ 18 18 Μηχανική Μάθηση Ένα φυσικό ή τεχνητό σύστηµα επεξεργασίας πληροφορίας συµπεριλαµβανοµένων εκείνων µε δυνατότητες αντίληψης, µάθησης, συλλογισµού, λήψης απόφασης, επικοινωνίας και δράσης

Διαβάστε περισσότερα

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

ΛΟΓΙΣΜΙΚΟ ΜΕΛΕΤΩΝ ΗΛΕΚΤΡΙΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ ΚΑΙ ΥΠΟΣΤΑΘΜΩΝ ΜΕΣΗΣ ΤΑΣΗΣ ΛΟΓΙΣΜΙΚΟ ΜΕΛΕΤΩΝ ΗΛΕΚΤΡΙΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ ΚΑΙ ΥΠΟΣΤΑΘΜΩΝ ΜΕΣΗΣ ΤΑΣΗΣ Βασίλης Τσέτογλου, Ηλεκτρολόγος Μηχ/κός ΑΠΘ (Φρυγίας 30 Καβάλα, τηλ. 2510-241735, e-mail:vatset@panafonet.gr) ΠΕΡΙΛΗΨΗ Η συνεχής και

Διαβάστε περισσότερα

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Εισαγωγικά ΘΕ ΠΛΗ 204-5 ONLINE ΕΡΓΑΣΙΑ E2- Η Online Εργασία Ε2- αποτελεί (όπως περιγράφεται αναλυτικότερα και στον Οδηγό Σπουδών της Θ.Ε. που σας έχει διατεθεί) συμπληρωματική άσκηση στα πλαίσια της Γραπτής

Διαβάστε περισσότερα

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

ΑΞΙΟΛΟΓΗΣΗ ΣΤΟΙΧΕΙΑ ΓΕΩΠΟΝΙΑΣ ΚΑΙ ΑΓΡΟΤΙΚΗ ΑΝΑΠΤΥΞΗ ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙ ΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΚΕΝΤΡΟ ΕΚΠΑΙ ΕΥΤΙΚΗΣ ΕΡΕΥΝΑΣ ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ ΤΗΣ Γ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ ΣΤΟ ΜΑΘΗΜΑ ΣΤΟΙΧΕΙΑ ΓΕΩΠΟΝΙΑΣ ΚΑΙ ΑΓΡΟΤΙΚΗ ΑΝΑΠΤΥΞΗ ΑΘΗΝΑ 2000 Σύνταξη

Διαβάστε περισσότερα

3. Σηµειώσεις Access. # Εισαγωγή ψηφίου ή κενού διαστήµατος. Επιτρέπονται τα ση-

3. Σηµειώσεις Access. # Εισαγωγή ψηφίου ή κενού διαστήµατος. Επιτρέπονται τα ση- Μάθηµα 3 Προχωρηµένες ιδιότητες πεδίων Μάσκες εισαγωγής Οι ιδιότητες Μορφή και Μάσκα εισαγωγής περιγράφονται µαζί γιατί έχουν κοινά χαρακτηριστικά που αφορούν την εµφάνιση. Με την ιδιότητα Μορφή καθορίζουµε

Διαβάστε περισσότερα

http://www.cslab.ece.ntua.gr/diplom/

http://www.cslab.ece.ntua.gr/diplom/ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr/ ιπλωµατική

Διαβάστε περισσότερα

ΤΙΤΛΟΣ ΜΑΘΗΜΑΤΟΣ: Το Υλικό των Η/Υ. ΗΜ/ΝΙΑ : 29/10/-2/11/2001 ΤΜΗΜΑ : Επιµορφούµενοι καθηγητές Πληρ/κής. Γυµνάσιο Τάξη Β :

ΤΙΤΛΟΣ ΜΑΘΗΜΑΤΟΣ: Το Υλικό των Η/Υ. ΗΜ/ΝΙΑ : 29/10/-2/11/2001 ΤΜΗΜΑ : Επιµορφούµενοι καθηγητές Πληρ/κής. Γυµνάσιο Τάξη Β : ΤΙΤΛΟΣ ΜΑΘΗΜΑΤΟΣ: Το Υλικό των Η/Υ ΗΜ/ΝΙΑ : 29/10/-2/11/2001 ΤΜΗΜΑ : Επιµορφούµενοι καθηγητές Πληρ/κής. Γυµνάσιο Τάξη Α : Τάξη Β : Εν. Λύκειο : 1) Το υλικό ενός υπολογιστικού συστήµατος 2) Το υπολογιστικό

Διαβάστε περισσότερα

Έκθεση εσωτερικής αξιολόγησης

Έκθεση εσωτερικής αξιολόγησης ΠΑΝΤΕΙΟΠΑΝΕΠΙΣΤΗΜΙΟΚΟΙΝΩΝΙΚΩΝΚΑΙ ΠΟΛΙΤΙΚΩΝΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑΚΟΙΝΩΝΙΚΗΣΠΟΛΙΤΙΚΗΣ Έκθεσηεσωτερικήςαξιολόγησης ΜΕΤΑΠΤΥΧΙΑΚΟΠΡΟΓΡΑΜΜΑΣΠΟΥΔΩΝ ΜΕΘΟΔΟΛΟΓΙΑΚΑΙΕΦΑΡΜΟΓΕΣΣΤΗΝΚΟΙΝΩΝΙΚΗΠΟΛΙΤΙΚΗ, 2007 2009 ΛέκτοραςΜαρίαΣυμεωνάκη

Διαβάστε περισσότερα

ΑΞΙΟΛΟΓΗΣΗ ΤΟΥ ΜΑΘΗΤΗ

ΑΞΙΟΛΟΓΗΣΗ ΤΟΥ ΜΑΘΗΤΗ ΑΞΙΟΛΟΓΗΣΗ ΤΟΥ ΜΑΘΗΤΗ ΓΕΝΙΚΑ Βασικός στόχος είναι η ανατροφοδότηση της εκπαιδευτικής διαδικασίας και ο εντοπισμός των μαθησιακών ελλείψεων με σκοπό τη βελτίωση της παρεχόμενης σχολικής εκπαίδευσης. Ειδικότερα

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΑΔΙΚΑΣΙΕΣ ΠΑΡΑΓΩΓΗΣ ΛΟΓΙΣΜΙΚΟΥ Διδάσκων: Γ. Χαραλαμπίδης,

Διαβάστε περισσότερα

ΛΟΓΟΙ ΚΑΙ ΑΝΑΛΟΓΙΕΣ ΟΔΗΓΟΣ ΟΡΓΑΝΩΣΗΣ ΤΗΣ ΔΙΔΑΣΚΑΛΙΑΣ. Μιχάλης Αργύρης

ΛΟΓΟΙ ΚΑΙ ΑΝΑΛΟΓΙΕΣ ΟΔΗΓΟΣ ΟΡΓΑΝΩΣΗΣ ΤΗΣ ΔΙΔΑΣΚΑΛΙΑΣ. Μιχάλης Αργύρης ΛΟΓΟΙ ΚΑΙ ΑΝΑΛΟΓΙΕΣ ΟΔΗΓΟΣ ΟΡΓΑΝΩΣΗΣ ΤΗΣ ΔΙΔΑΣΚΑΛΙΑΣ Μιχάλης Αργύρης 1 Λόγοι και αναλογίες Περίληψη Οι μαθητές έχουν στη διάθεσή τους μια υπολογιστική οντότητα, ένα καγκουρό του οποίου το μέγεθος μπορούν

Διαβάστε περισσότερα

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

ΚΑΝΟΝΙΣΜΟΣ ΕΚΠΟΝΗΣΗΣ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ ΚΑΝΟΝΙΣΜΟΣ ΕΚΠΟΝΗΣΗΣ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ στο Τµήµα Φωτογραφίας και Οπτικοακουστικών Τεχνών του Τ.Ε.Ι. Αθήνας. Η διαδικασία ανάθεσης και αξιολόγησης της πτυχιακής εργασίας σύµφωνα µε τον Ν. 2916/2001 και

Διαβάστε περισσότερα

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ ΒΑΙΚΕ ΕΝΝΟΙΕ ΑΓΟΡΙΘΜΩΝ ΕΡΩΤΗΕΙ ΑΞΙΟΟΓΗΗ ΕΡΩΤΗΕΙ ΩΤΟΥ ΑΘΟΥ 1. ηµειώστε το γράµµα αν η πρόταση είναι σωστή και το γράµµα αν είναι λάθος. 1. Ο αλγόριθµος πρέπει να τερµατίζεται µετά από εκτέλεση πεπερασµένου

Διαβάστε περισσότερα

ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ: ΜΑΘΗΜΑΤΙΚΑ ΣΤ ΔΗΜΟΤΙΚΟΥ «ΤΑ ΚΛΑΣΜΑΤΑ»

ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ: ΜΑΘΗΜΑΤΙΚΑ ΣΤ ΔΗΜΟΤΙΚΟΥ «ΤΑ ΚΛΑΣΜΑΤΑ» ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ: ΜΑΘΗΜΑΤΙΚΑ ΣΤ ΔΗΜΟΤΙΚΟΥ «ΤΑ ΚΛΑΣΜΑΤΑ» Νικόλαος Μπαλκίζας 1. ΕΙΣΑΓΩΓΗ Σκοπός του σχεδίου μαθήματος είναι να μάθουν όλοι οι μαθητές της τάξης τις έννοιες της ισοδυναμίας των κλασμάτων,

Διαβάστε περισσότερα

ΤΜΗΜΑ Α ΠΕΡΙΓΡΑΦΗ Π.Μ.Σ (ΥΠΟΕΡΓΟΥ)

ΤΜΗΜΑ Α ΠΕΡΙΓΡΑΦΗ Π.Μ.Σ (ΥΠΟΕΡΓΟΥ) ΤΜΗΜΑ Α ΠΕΡΙΓΡΑΦΗ Π.Μ.Σ (ΥΠΟΕΡΓΟΥ) Α1. ΣΥΝΤΟΜΗ ΠΕΡΙΓΡΑΦΗ ΦΥΣΙΚΟΥ ΑΝΤΙΚΕΙΜΕΝΟΥ Tο Πρόγραµµα Μεταπτυχιακών Σπουδών του Τµήµατος Μαθηµατικών του Πανεπιστηµίου Κρήτης είναι ένα από τα πρώτα οργανωµένα µεταπτυχιακά

Διαβάστε περισσότερα

Δημόσια Ελληνική Αστρονομική Εγκυκλοπαίδεια www.astronomia.gr

Δημόσια Ελληνική Αστρονομική Εγκυκλοπαίδεια www.astronomia.gr Ερασιτεχνικής Αστρονομίας Δημόσια Ελληνική Αστρονομική Εγκυκλοπαίδεια www.astronomia.gr Ανδρέας Παπαλάμπρου Παναγιώτης Αντωνόπουλος Κωνσταντίνος-Νεκτάριος Γουργουλιάτος Νικόλας-Ρικάρδο Καβαλιέρο Αστρονομική

Διαβάστε περισσότερα

ΑΝΤΙΣΤΟΙΧΙΣΕΙΣ ΜΑΘΗΜΑΤΩΝ ΙΣΧΥΟΥΝ ΑΠΟ ΤΟ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2007-2008 Α ΕΞΑΜΗΝΟ ΠΑΛΑΙΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ. Κατηγορ ία ΝΕΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΚΟΣ Υ/ΕΥ

ΑΝΤΙΣΤΟΙΧΙΣΕΙΣ ΜΑΘΗΜΑΤΩΝ ΙΣΧΥΟΥΝ ΑΠΟ ΤΟ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2007-2008 Α ΕΞΑΜΗΝΟ ΠΑΛΑΙΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ. Κατηγορ ία ΝΕΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΚΟΣ Υ/ΕΥ ΑΝΤΙΣΤΟΙΧΙΣΕΙΣ ΜΑΘΗΜΑΤΩΝ ΙΣΧΥΟΥΝ ΑΠΟ ΤΟ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2007-2008 ΠΑΛΑΙΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ Α ΕΞΑΜΗΝΟ ΝΕΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΚΩΔΙ ΚΟΣ Κατηγορ ία Υ/ΕΥ ΑΠΕΙΡΟΣΤΙΚΟΣ ΛΟΓΙΣΜΟΣ & ΕΦΑΡΜΟΓΕΣ ΑΠΕΙΡΟΣΤΙΚΟΣ ΛΟΓΙΣΜΟΣ

Διαβάστε περισσότερα

Σενάριο 13. Προγραμματίζοντας ένα Ρομπότ

Σενάριο 13. Προγραμματίζοντας ένα Ρομπότ Σενάριο 13. Προγραμματίζοντας ένα Ρομπότ Ταυτότητα Σεναρίου Τίτλος: Προγραμματίζοντας ένα Ρομπότ Γνωστικό Αντικείμενο: Πληροφορική Διδακτική Ενότητα: Ελέγχω-Προγραμματίζω τον Υπολογιστή Τάξη: Γ Γυμνασίου

Διαβάστε περισσότερα

(GNU-Linux, FreeBSD, MacOsX, QNX

(GNU-Linux, FreeBSD, MacOsX, QNX 1.7 διαταξεις (σελ. 17) Παράδειγµα 1 Θα πρέπει να κάνουµε σαφές ότι η επιλογή των λέξεων «προηγείται» και «έπεται» δεν έγινε απλώς για λόγους αφαίρεσης. Μπορούµε δηλαδή να ϐρούµε διάφορα παραδείγµατα στα

Διαβάστε περισσότερα

Οδηγίες για αξιολόγηση στο πλαίσιο ομότιμης συνεργατικής μάθησης

Οδηγίες για αξιολόγηση στο πλαίσιο ομότιμης συνεργατικής μάθησης Οδηγίες για αξιολόγηση στο πλαίσιο ομότιμης συνεργατικής μάθησης Τι είναι το PeLe; Το PeLe είναι ένα διαδικτυακό περιβάλλον που ενθαρρύνει την αξιολόγηση στο πλαίσιο της ομότιμης συνεργατικής μάθησης και

Διαβάστε περισσότερα

Α.2 Μαθησιακά Αποτελέσματα Έχοντας ολοκληρώσει επιτυχώς το μάθημα οι εκπαιδευόμενοι θα είναι σε θέση να:

Α.2 Μαθησιακά Αποτελέσματα Έχοντας ολοκληρώσει επιτυχώς το μάθημα οι εκπαιδευόμενοι θα είναι σε θέση να: ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ Τίτλος Μαθήματος Μεθοδολογίες και Συστήματα Βιομηχανικής Αυτοματοποίησης Κωδικός Μαθήματος Μ3 Θεωρία / Εργαστήριο Θεωρία + Εργαστήριο Πιστωτικές μονάδες 4 Ώρες Διδασκαλίας 2Θ+1Ε Τρόπος/Μέθοδοι

Διαβάστε περισσότερα

ΟΔΗΓΟΣ ΕΠΑΓΓΕΛΜΑΤΟΣ ΤΜΗΜΑΤΟΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ ΠΑΝΤΕΛΗΣ ΜΑΛΑΤΕΣΤΑΣ ΚΑΘΗΓΗΤΗΣ - ΠΡΟΕΔΡΟΣ ΤΜΗΜΑΤΟΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ

ΟΔΗΓΟΣ ΕΠΑΓΓΕΛΜΑΤΟΣ ΤΜΗΜΑΤΟΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ ΠΑΝΤΕΛΗΣ ΜΑΛΑΤΕΣΤΑΣ ΚΑΘΗΓΗΤΗΣ - ΠΡΟΕΔΡΟΣ ΤΜΗΜΑΤΟΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ ΟΔΗΓΟΣ ΕΠΑΓΓΕΛΜΑΤΟΣ ΤΜΗΜΑΤΟΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ ΠΑΝΤΕΛΗΣ ΜΑΛΑΤΕΣΤΑΣ ΚΑΘΗΓΗΤΗΣ - ΠΡΟΕΔΡΟΣ ΤΜΗΜΑΤΟΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ Το Τμήμα Ηλεκτρολογίας, ανήκει στη Σχολή Τεχνολογικών Εφαρμογών (Σ.Τ.ΕΦ.) του Τ.Ε.Ι. Πειραιά.

Διαβάστε περισσότερα

Παράδειγμα σχεδιασμού και παρουσίασης μικροδιδασκαλίας

Παράδειγμα σχεδιασμού και παρουσίασης μικροδιδασκαλίας Παράδειγμα σχεδιασμού και παρουσίασης μικροδιδασκαλίας Στο τρίτο άρθρο αυτής της σειράς, η οποία αποτελεί μια πρώτη, μικρή απάντηση στις ανάγκες των εκπαιδευτών του σεμιναρίου της 12 ης & 13 ης Ιουνίου

Διαβάστε περισσότερα

ΤΙ ΕΙΝΑΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ

ΤΙ ΕΙΝΑΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΤΙ ΕΙΝΑΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ Ο όρος είναι συντομογραφία του όρου «Αυτόματος, Ηλεκτρονικός Ψηφιακός Υπολογιστής Γενικού Σκοπού» [1]. Αυτόματος Μετά την έναρξη της λειτουργίας του εργάζεται μόνος του εκτελώντας

Διαβάστε περισσότερα

Αντί προλόγου. 1. Τι είναι το Twitter;

Αντί προλόγου. 1. Τι είναι το Twitter; Περιεχόµενα Αντί προλόγου...7 Πώς να χρησιµοποιήσετε το βιβλίο...13 Κεφάλαιο 1: Πώς δηµιουργώ τον λογαριασµό µου στο Twitter;...15 Κεφάλαιο 2: Πώς µπορώ να συνδεθώ και να αποσυνδεθώ από το Twitter;...37

Διαβάστε περισσότερα

Τα σχέδια μαθήματος 1 Εισαγωγή

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

Διαβάστε περισσότερα

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

ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ ΤΗΣ Β ΛΥΚΕΙΟΥ ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΦΥΣΙΚΗΣ ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙ ΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ ΤΗΣ Β ΛΥΚΕΙΟΥ ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΦΥΣΙΚΗΣ ΕΡΩΤΗΣΕΙΣ ΚΛΕΙΣΤΟΥ ΚΑΙ ΑΝΟΙΚΤΟΥ ΤΥΠΟΥ ΚΡΙΤΗΡΙΑ ΑΞΙΟΛΟΓΗΣΗΣ ΘΕΜΑΤΑ ΕΡΓΑΣΙΩΝ ΑΘΗΝΑ 2000 12 Η συγγραφική

Διαβάστε περισσότερα

ΕΚΠΑΙ ΕΥΣΗ ΚΑΤΑΡΤΙΣΗ ΝΕΟΤΗΤΑ

ΕΚΠΑΙ ΕΥΣΗ ΚΑΤΑΡΤΙΣΗ ΝΕΟΤΗΤΑ ECTS: ΤΟ ΕΥΡΩΠΑΪΚΟ ΣΥΣΤΗΜΑ ΑΚΑ ΗΜΑΪΚΩΝ ΜΟΝΑ ΩΝ ΜΕΤΑΦΕΡΟΜΕΝΩΝ ΣΕ ΟΛΗ ΤΗΝ ΚΟΙΝΟΤΗΤΑ ΕΚΠΑΙ ΕΥΣΗ ΚΑΤΑΡΤΙΣΗ ΝΕΟΤΗΤΑ Εισαγωγή Η Ευρωπαϊκή Κοινότητα προωθεί τη συνεργασία µεταξύ πανεπιστηµίων ως µέσο για τη βελτίωση

Διαβάστε περισσότερα

ο ρόλος των αλγορίθμων στις υπολογιστικές διαδικασίες Παύλος Εφραιμίδης Δομές Δεδομένων και Αλγόριθμοι

ο ρόλος των αλγορίθμων στις υπολογιστικές διαδικασίες Παύλος Εφραιμίδης Δομές Δεδομένων και Αλγόριθμοι Παύλος Εφραιμίδης 1 περιεχόμενα αλγόριθμοι τεχνολογία αλγορίθμων 2 αλγόριθμοι αλγόριθμος: οποιαδήποτε καλά ορισμένη υπολογιστική διαδικασία που δέχεται κάποια τιμή ή κάποιο σύνολο τιμών, και δίνεικάποιατιμήήκάποιοσύνολοτιμώνως

Διαβάστε περισσότερα

Λίγα λόγια από το συγγραφέα... 7. 91 Εισαγωγή στους υπολογιστές... 9. 92 Μονάδες µέτρησης χωρητικότητας... 31. 94 Συσκευές εισόδου...

Λίγα λόγια από το συγγραφέα... 7. 91 Εισαγωγή στους υπολογιστές... 9. 92 Μονάδες µέτρησης χωρητικότητας... 31. 94 Συσκευές εισόδου... Περιεχόµενα Λίγα λόγια από το συγγραφέα... 7 91 Εισαγωγή στους υπολογιστές... 9 92 Μονάδες µέτρησης χωρητικότητας... 31 93 Οι βασικές λειτουργίες ενός ηλεκτρονικού υπολογιστή... 37 94 Συσκευές εισόδου...

Διαβάστε περισσότερα

Πληροφορική Ι (Θεωρία)

Πληροφορική Ι (Θεωρία) Πληροφορική Ι (Θεωρία) ρ Α Εξάμηνο Διδασκαλία: Δευτέρα 16:00-18:00 (Αίθουσα 303) Επίπεδο μαθήματος: Υποχρεωτικό Τμήμα Βιομηχανικού Σχεδιασμού Σκοπός του μαθήματος «ΠΛΗΡΟΦΟΡΙΚΗ Ι» Απόκτηση από τους σπουδαστές

Διαβάστε περισσότερα

Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου

Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου Δρ. Βασίλειος Σάλτας 1, Αλέξης Ηλιάδης 2, Ιωάννης Μουστακέας 3 1 Διδάκτωρ Διδακτικής Μαθηματικών, Επιστημονικός Συνεργάτης ΑΣΠΑΙΤΕ Σαπών coin_kav@otenet.gr

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο

Διαβάστε περισσότερα

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Βασικές Έννοιες Προγραμματισμού Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Αριθμητικά συστήματα Υπάρχουν 10 τύποι ανθρώπων: Αυτοί

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος 2007-2008

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος 2007-2008 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος 2007-2008 ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος Εισαγωγή στην Επιστήμη των Υπολογιστών Διδάσκοντες: Θ.Ανδρόνικος - Μ.Στεφανιδάκης Περιεχόμενα

Διαβάστε περισσότερα