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

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

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

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ηµιουργία και χειρισµός LIFO λιστών µεταβλητού µήκους µε στοιχεία ακεραίους αριθµούς. Γενίκευση για χειρισµό λιστών πραγµατικών αριθµών και χαρακτήρων µε χρήση template. Καλαµαράς ηµήτρης Α.Μ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΟΜΗΡΟΣ ΡΑΓΓΟΣ 2001

2 ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ... 1 Εισαγωγή... 3 ΚΕΦΑΛΑΙΟ Εισαγωγή στη θεωρία των κλάσεων... 4 ΚΕΦΑΛΑΙΟ Εισαγωγή LIFO ΛΙΣΤΕΣ MEMBER FUNCTIONS PUSH PRINT MEMBER SEEK COPY COMPARE CONCAT LEN TOP Ορισµός της κλάσης lifo MAIN program ΚΕΦΑΛΑΙΟ TEMPLATES CLASS TEMPLATE MEMBER FUNCTIONS MAIN program ΒΙΒΛΙΟΓΡΑΦΙΑ... 37

3 Εισαγωγή Η εργασία αυτή έχει σαν σκοπό τον λεπτοµερή σχεδιασµό και την υλοποίηση στην γλώσσα προγραµµατισµού C++, µιας κλάσης, της οποίας τα αντικείµενα θα είναι Last-In-First-Out λίστες µεταβλητού µήκους µε στοιχεία ακέραιους αριθµούς και την γενίκευση, µε χρήση template, για χειρισµό LIFO λιστών πραγµατικών αριθµών ή χαρακτήρων. Στο πρώτο κεφάλαιο της εργασίας αυτής γίνεται κατ αρχήν µια σύντοµη εισαγωγή στην θεωρία των κλάσεων της C++. Στη συνέχεια, στο δεύτερο κεφάλαιο, θα σχεδιάσουµε και θα υλοποιήσουµε στη γλώσσα αυτή µια κλάση που µπορεί να χρησιµοποιηθεί για δηµιουργία και χειρισµό Last-In-First-Out λιστών ακεραίων αριθµών µε µεθόδους όπως πρόσθεση και αφαίρεση στοιχείων, αναζήτηση στοιχείων, σύγκριση και συνένωση λιστών, εκτύπωση στοιχείων κτλ. Κατόπιν, στο τρίτο κεφάλαιο, θα εισάγουµε µερικές βασικές έννοιες από την θεωρία των προτύπων (templates) της C++. Τέλος θα δηµιουργήσουµε ένα πρότυπο-γενίκευση της προηγούµενης κλάσης, το οποίο είναι δυνατό να χρησιµοποιηθεί και για λίστες στοιχείων άλλου τύπου όπως πραγµατικών αριθµών και χαρακτήρων. Η υλοποίηση και ο έλεγχος των αντίστοιχων προγραµµάτων έγινε µε την βοήθεια της Borland C++ έκδοση 4.

4 1.1 Εισαγωγή στη θεωρία των κλάσεων ΚΕΦΑΛΑΙΟ 1 Σε αυτήν την ενότητα θα περιγραφούν οι ορισµοί κλάσεων και τύπων δεδοµένων στην C++ µε συνοπτικό τρόπο. Μετά ακολουθεί ένα γενικό παράδειγµα για τον ορισµό µιας κλάσης, το οποίο δηµιουργεί λίστες µεταβλητού µήκους. εν ενδιαφέρει, ακόµη, η αρχιτεκτονική των λιστών αυτών. Το παράδειγµα αυτό θα αποτελέσει στη συνέχεια το πρότυπο µε βάση το οποίο θα υλοποιηθούν οι εφαρµογές που περιλαµβάνει αυτή η εργασία και κρίθηκε σκόπιµο να συµπεριληφθεί για την ευκολότερη κατανόηση αυτών που θα ακολουθήσουν στα επόµενα κεφάλαια. Οι κλάσεις (classes) της C++ είναι επεκτάσεις των δοµών (structures) της C. Μια κλάση στην C++ είναι µια δοµή, η οποία έχει µέλη δεδοµένα αλλά και συναρτήσεις για την επεξεργασία των δεδοµένων αυτών. Ένα στιγµιότυπο µιας κλάσης λέγεται αντικείµενο (object). Οι κλάσεις χρησιµοποιούνται στην C++ για την δηµιουργία νέων τύπων δεδοµένων, επιπλέον αυτών που περιλαµβάνονται στην γλώσσα αυτή όπως οι float, integer κτλ. Ένας τύπος δεδοµένων αποτελείται από δύο συνιστώσες: Α) Μια περιγραφή-ορισµό της δοµής και του είδους των τιµών του. Β) Ένα σύνολο λειτουργιών για τον χειρισµό των αντικειµένων δεδοµένων του. Εκτός από αυτές τις λειτουργίες καµιά άλλη λειτουργία ή τελεστής της γλώσσας δεν µπορεί να χειριστεί τα αντικείµενα αυτής της κλάσης. Για αυτό το λόγο οι λειτουργίες αυτές χαρακτηρίζουν το νέο τύπο δεδοµένων, αφού ορίζουν τι µπορεί να συµβεί στα αντικείµενα του. Ένας ορισµός µιας κλάσης στην C++ αποτελείται από δύο µέρη: την επικεφαλίδα (Header) και το σώµα (Body). Στην επικεφαλίδα, µετά τη λέξη-κλειδί class ακολουθεί το όνοµα της κλάσης και πιθανόν οι κλάσεις από τις οποίες η νέα κλάση παράγεται (base classes). Στο σώµα, υπάρχουν οι ορισµοί των µελών της κλάσης. Τα µέλη µπορεί να είναι δύο ειδών: 1) Μέλη-δεδοµένα (data members) της κλάσης που ορίζονται µε κλασικού τύπου δηλώσεις και καθορίζουν τα αντικείµενα της κλάσης. 2) Συναρτήσεις-µέλους (member functions) για τον χειρισµό των µελών δεδοµένων, που καθορίζουν τις λειτουργίες της κλάσης. Τα µέλη µιας κλάσης µπορεί να χαρακτηριστούν σαν - Ιδιωτικά (private), δηλαδή µόνο οι συναρτήσεις της ίδιας της κλάσης µπορούν να τα χρησιµοποιήσουν. - ηµόσια (public), δηλαδή µπορεί να χρησιµοποιηθούν από κάθε χρήστη της κλάσης και τις συναρτήσεις-µέλους.

5 - Προστατευµένα (protected), που σηµαίνει ότι µπορούν να χρησιµοποιηθούν από τις συναρτήσεις της κλάσης αλλά και από τις παραγόµενες από αυτήν κλάσεις. Εδώ, αξίζει να αναφέρουµε το χαρακτηριστικό των «φίλων» συναρτήσεων στην C++. Μερικές φορές είναι απαραίτητο µια συνάρτηση, που δεν είναι µέλος της κλάσης, να έχει πρόσβαση στα ιδιωτικά µέλη της. Αυτό µπορούµε να το επιτύχουµε καθορίζοντας την συνάρτηση σαν «φίλη» (friend) της κλάσης. ηλαδή, γράφουµε στο σώµα της κλάσης την έκφραση : friend [void] function_name ( function arguments ); Έτσι, η συνάρτηση αποκτά πρόσβαση σε όλα τα ιδιωτικά µέλη της κλάσης. Αν και µια δήλωση «φίλης» συνάρτησης βρίσκεται στο σώµα της κλάσης, αυτό δεν σηµαίνει ότι η συνάρτηση γίνεται µέλος της. Τέλος, η θέση µιας δήλωσης «φίλης» στο εσωτερικό της κλάσης δεν έχει σηµασία είτε είναι στο τµήµα των ιδιωτικών, των δηµόσιων είτε στο τµήµα των προστατευµένων µελών. Συνήθως, ο ορισµός µιας κλάσης περιλαµβάνει µόνο τις επικεφαλίδες (prototypes) των συναρτήσεων µελών. Ο πλήρης ορισµός αυτών γίνεται εκτός της κλάσης, συνήθως µετά και το κυρίως πρόγραµµα, µε χρήση του τελεστή εµβέλειας (scope operator) :: ως εξής: Μετά το τύπο της συνάρτησης και το όνοµα της κλάσης στην οποία ανήκει, ακολουθεί ο τελεστής εµβέλειας και µετά το όνοµα της συνάρτησης και οι παράµετροι της. Στη συνέχεια, γράφουµε τον υπόλοιπο κώδικα της συνάρτησης. Με βάση τα προηγούµενα ένας τυπικό παράδειγµα ορισµού κλάσης είναι: - class list - - private: - int *List; - int *Temp; - int Length = 0; - public: - list (); - void insert (int ) ; - void delete (int ); - void print (); - int search (int) ; - int compare ( list &); - void concatenate (list &, list &); - void copy (list &); - ~ list(); - ; Η κλάση αυτή ορίζει ένα τύπο δεδοµένων που ονοµάζεται λίστα (list). Μια λίστα είναι ένα διατεταγµένο σύνολο δεδοµένων. Στο παράδειγµα αυτό, η λίστα αποτελείται από ακέραιους αριθµούς. Ανάλογα µε τον τρόπο εισαγωγής και εξαγωγής-διαγραφής στοιχείων από την λίστα, µπορούµε να έχουµε τις Last In Last Out (LILO) λίστες, οι οποίες αναπαριστούν ουρές (Queues) και τις Last In First Out (LIFO) λίστες, οι οποίες αναπαριστούν στοίβες (Stacks). Στις µεν LILO λίστες, η εισαγωγή ενός στοιχείου γίνεται στο τέλος της λίστας ενώ η εξαγωγή ενός στοιχείου γίνεται από την αρχή της. Στις δε LIFO λίστες, η εισαγωγή και η εξαγωγή ενός στοιχείου γίνονται στο τέλος της λίστας. Μια LIFO λίστα παροµοιάζεται συχνά µε µια στοίβα πιάτων. Στην πρώτη γραµµή του παραδείγµατος, υπάρχει η επικεφαλίδα της κλάσης µε το όνοµά της.

6 Το κυρίως σώµα της κλάσης αποτελείται από τρία ιδιωτικά µέλη δεδοµένων και εννιά δηµόσιες συναρτήσεις µέλους. Τα ιδιωτικά µέλη List και Temp ορίζονται ως δείκτες (pointers), δηλαδή µεταβλητές που δείχνουν σε µια θέση µνήµης, η οποία θα περιέχει ακεραίους αριθµούς. Οι δείκτες έχουν σαν σκοπό τον δυναµικό ορισµό και καταστροφή δεδοµένων. Έτσι µε την εντολή List=new int [Length] µπορούµε να ορίσουµε ένα διάνυσµα ακεραίων µε όνοµα List µε µήκος που καθορίζεται από το τρίτο µέλος-δεδοµένο, την ακέραια µεταβλητή Length, η οποία αρχικά έχει τιµή µηδέν. Με την εντολή delete [] List διαγράφεται ο δείκτης List. Από τις οκτώ δηµόσιες συναρτήσεις µέλους της κλάσης, η πρώτη και η τελευταία, δηλαδή οι list() και ~list() είναι ειδικές συναρτήσεις που λέγονται constructor και destructor αντίστοιχα. Είναι πάντοτε συνώνυµες της κλάσης και δεν επιστρέφουν τιµές σε αντίθεση µε τις υπόλοιπες συναρτήσεις µιας κλάσης. Η constructor χρησιµοποιείται για την δηµιουργία και αρχικοποίηση των αντικειµένων µιας κλάσης κατά τη στιγµή του ορισµού τους. Η destructor χρησιµοποιείται για την καταστροφή των µελών δεδοµένων µιας κλάσης, ειδικά όταν αυτά είναι δείκτες, όπως στο παράδειγµα. Οι υπόλοιπες δηµόσιες συναρτήσεις είναι µέθοδοι πρόσθεσης στοιχείων στη λίστα, αφαίρεσης στοιχείου, εκτύπωσης της λίστας, αναζήτησης µιας τιµής, σύγκρισης δυο λιστών, συνένωσης δυο λιστών σε µια τρίτη λίστα και αντιγραφής µιας λίστας σε άλλη. Στον προηγούµενο ορισµό της κλάσης περιλαµβάνονται µόνο τα πρωτότυπά των συναρτήσεων αυτών. Η λεπτοµερής περιγραφή τους γίνεται µετά το τέλος του ορισµού αυτού µε τον εξής τρόπο: - void list :: list () /* constructor */ - List = new int [Length]; /* ηµιουργία διανυσµάτων που */ - Temp = new int [Length]; /* αντιπροσωπεύουν τις λίστες /* void list :: insert ( int x) - - /* Αλγόριθµος για την εισαγωγή του στοιχειού σε κάποιο σηµείο της - λίστας π.χ. στην αρχή ή στο τέλος. - ιαφέρει ανάλογα µε τον τύπο της λίστας. */ void list :: delete (int x) - - /* Αλγόριθµος για την διαγραφή στοιχείου από την λίστα, ανάλογα µε τον τύπο της λίστας. */ - void list :: print () - /* Εκτύπωση των στοιχείων της λίστας. */ - - int list :: search (int x) - /* Σειριακή αναζήτηση στοιχείου Επιστρέφει τη θέση του */ - - int list :: compare ( list &b) - - /* Αλγόριθµος για την σύγκριση της τρέχουσας λίστας a µε την λίστα b. - Η δεύτερη λίστα περνά στην συνάρτηση µε κλήση µε αναφορά

7 - χρησιµοποιώντας τον τελεστή &. Η συνάρτηση επιστρέφει 1 αν οι - λίστες είναι ίδιες ή 0 αν διαφέρουν. */ void list :: concatenate (list &b, list &c ) - - /* Συνένωση της τρέχουσας λίστας µε την b και αποθήκευση του αποτελέσµατος στην λίστα c. Οι λίστες b και c περνούν στην συνάρτηση ως παράµετροι µε κλήση µε αναφορά */ - - void lifo :: copy ( list &b) - /* Αντιγραφή της τρέχουσας λίστας µε την λίστα b, η οποία περνά στην συνάρτηση µε κλήση µε αναφορά */ - list :: ~ list () - delete [] List ; delete [] Temp; /* Καταστροφή διανυσµάτων-λιστών */ Οι περισσότερες συναρτήσεις µέλους καθορίζονται από τον τύπο δεδοµένων που θέλουµε να δηµιουργήσουµε, αλλά και αντίστροφα. Πρέπει να κάνουµε µια παρατήρηση σχετικά µε τη χρήση κλήσης µε αναφορά (call by reference) στο πέρασµα των παραµέτρων ορισµένων συναρτήσεων της κλάσης. Στις παραµέτρους συναρτήσεων, όπως µεταβλητές, δείκτες ή αντικείµενα κλάσεων, χρησιµοποιούµε την κλήση µε αναφορά, µέσω του τελεστή &, όταν θέλουµε οι τιµές των παραµέτρων αυτών να µπορούν να µεταβληθούν από την συνάρτηση και να επιστραφούν στο πρόγραµµα. Τέτοια συνάρτηση εδώ είναι η copy ( list &b ). Χρησιµοποιούµε τον τελεστή & για την κλήση του αντικείµενου b της κλάσης list µε αναφορά. Έτσι εξασφαλίζουµε ότι η copy θα µπορεί να µεταβάλλει το περιεχόµενο του σύµφωνα µε τον αλγόριθµο της και να το επιστρέψει στο πρόγραµµα. Στο κυρίως πρόγραµµα, η δηµιουργία ενός αντικειµένου της κλάσης list γίνεται µε τον ίδιο τρόπο που ορίζουµε µεταβλητές, π.χ. list a ή list a[100], στην περίπτωση που θέλουµε το αντικείµενο να έχει τη µορφή διανύσµατος. Επειδή έχουµε χρησιµοποιήσει constructor στον ορισµό της κλάσης, η δηµιουργία των αντικειµένων γίνεται ταυτόχρονα και µε την αρχικοποίηση τους. Ένα τυπικό πρόγραµµα που χρησιµοποιεί αντικείµενα της κλάσης list είναι το παρακάτω: - #include <iostream.h> - - void main () - - int x,y,z; /* Ακέραιοι x,y,z που θα είναι τα στοιχεία των λιστών */ - list a,b,c; /* ηµιουργία τριών αντικειµένων a,b,c */ - - a.insert (x); a.insert (y); a.insert (z); /*Εισαγωγή στοιχείων στην a */ - b.insert (x); - a.print (); b.print (); c.print (); /* Εκτύπωση λιστών */

8 - if ( a.compare ( b) ) cout << Οι λίστες a,b είναι όµοιες ; - else cout << Οι λίστες a,b διαφέρουν ; - a.concatenate (b,c); - if ( c.compare (a) ) cout << Οι λίστες a,c είναι όµοιες ; - else cout << Οι λίστες a,c διαφέρουν ; - if (c.search (x) ) cout << Το στοιχείο - << x - << Βρέθηκε στη θέση : << c.search(x); - c.print (); - c.delete (x); - c.print (); Το τυπικό αυτό πρόγραµµα χρησιµοποιεί επιπλέον την κλάση iostream της C++ για την Είσοδο/Έξοδο (Ε/Ε) στοιχείων µε τα αντικείµενα cout και cin. Ορίζουµε τρία αντικείµενα a,b,c της κλάσης list και τρεις ακέραιους x,y,z που εισάγουµε στην λίστα a. Επίσης, εισάγουµε το x στην λίστα b. Κατόπιν εκτυπώνουµε και τις τρεις λίστες. Η λίστα a θα πρέπει να έχει τρία στοιχεία, τα x,y,z, η b µόνο το x, ενώ η c κανένα. Στις επόµενες γραµµές, µε χρήση της συνάρτησης-µέλους compare και της έκφρασης if-else, συγκρίνουµε την λίστα a µε τη b. Θα πρέπει να είναι διαφορετικές. Κατόπιν συνενώνουµε την a µε τη b και την νέα λίστα την αποθηκεύουµε στην c. Συγκρίνοντας τις λίστες a και c, θα είναι διαφορετικές. Μετά, χρησιµοποιούµε την συνάρτηση µέλους search για να ελέγξουµε αν το στοιχείο x υπάρχει στη λίστα c. Το πρόγραµµα θα πρέπει να τυπώσει τη θέση του στοιχείου στη λίστα. Κατόπιν, εκτυπώνουµε τη λίστα c και µετά µε χρήση της συνάρτησης-µέλους delete σβήνουµε το στοιχείο x από τη λίστα c. Τέλος µε εκτύπωση της c, επιβεβαιώνουµε την διαγραφή του στοιχείου x από την λίστα. Το τυπικό αυτό παράδειγµα του ορισµού της κλάσης list, αλλά και του χειρισµού των αντικειµένων της από ένα κυρίως πρόγραµµα αποτελεί ένα πρότυπο για τον ορισµό και τη χρήση µιας κλάσης της οποίας τα αντικείµενα θα είναι LIFO λίστες.

9 2.1 Εισαγωγή ΚΕΦΑΛΑΙΟ 2 Σε αυτό το κεφάλαιο, δηµιουργείται λεπτοµερώς η κλάση lifo, της οποίας τα αντικείµενα είναι LIFO λίστες ακεραίων αριθµών. Χρησιµοποιούνται επιπλέον στοιχεία και συναρτήσεις της C++, προκειµένου το τελικό πρόγραµµα να είναι λειτουργικό και αξιόπιστο. Αυτά είναι: H λέξη-κλειδί enum, η συνάρτηση getch() και η δοµηµένη εντολή switch-case, η οποία χρησιµοποιείται στο κυρίως πρόγραµµα για την εκτύπωση του βασικού µενού. Η enum χρησιµοποιείται στην C++ για την απαρίθµηση σταθερών µε ακέραια τιµή αλλά και για την δηµιουργία ολοκληρωµένων τύπων δεδοµένων µε ακέραιες τιµές. Η σύνταξη της είναι: - enum (<ετικέτα τύπου>) <σταθερά> (=<τιµή>), (µεταβλητές) Εάν παραλείπονται οι τιµές των σταθερών, τότε η πρώτη σταθερά παίρνει τιµή 0, η δεύτερη 1, η τρίτη 2 κοκ. Π.χ. η εντολή: - enum Bool False, True ορίζει ένα µοναδικό τύπο δεδοµένων που λέγεται Bool µε σύνολο τιµών το ( False = 0, True = 1 ). Έτσι µια µεταβλητή ή συνάρτηση τύπου Bool µπορεί να πάρει τιµές False ή True µε εσωτερικές τιµές αυτών 0 και 1 αντίστοιχα. Για παράδειγµα στην κλάση lifo θα ορίσουµε µια συνάρτηση µέλους µε όνοµα member, η οποία θα ελέγχει αν ένα δοσµένο στοιχείο ανήκει στην λίστα ή όχι και θα επιστρέφει True (=1) ή False (=0), αντίστοιχα. Η συνάρτηση getch() ανήκει στην κλάση conio. Η σύνταξή της είναι - int getch ( void ); Η συνάρτηση αυτή διαβάζει ένα χαρακτήρα από το πληκτρολόγιο χωρίς να τον τυπώνει στην οθόνη. Θα χρησιµοποιηθεί για το προσωρινό σταµάτηµα της ροής του προγράµµατος µέχρι ο χρήστης να πατήσει κάποιο πλήκτρο. Η δοµηµένη εντολή switch-case έχει σύνταξη: switch ( <µεταβλητή> ) case <τιµή> : <εντολές>; []... default : <εντολή>; Με την έκφραση αυτή, ελέγχεται η µεταβλητή και ανάλογα µε την τιµή της, η ροή του προγράµµατος µεταφέρεται στο αντίστοιχο case, όπου εκτελούνται οι εντολές. Μετά το τέλος των εντολών πρέπει να υπάρχει η εντολή break για να αποφεύγεται η εκτέλεση των εντολών του επόµενου case. Αν η µεταβλητή έχει τιµή που δεν ταιριάζει µε κανένα case, τότε εκτελούνται οι εντολές της default.

10 2.2 LIFO ΛΙΣΤΕΣ Όπως αναφέρθηκε στην εισαγωγή, µια LIFO λίστα είναι ένα διατεταγµένο σύνολο δεδοµένων µε την ιδιότητα: το τελευταίο στοιχείο που εισάγεται στη λίστα είναι και το πρώτο που εξάγεται από αυτήν. Μια LIFO λίστα καλείται και στοίβα (stack). Θεµελιώδεις λειτουργίες σε µια στοίβα είναι η PUSH, η οποία εισάγει ένα νέο στοιχείο στην κορυφή της και η POP, που αφαιρεί ένα στοιχείο από την κορυφή της στοίβας. Το στοιχείο που βρίσκεται στην κορυφή λέγεται Top. Σχηµατικά µια στοίβα είναι: PUSH Top [S] POP Top [S] 1. Α[3] Α[2] A[1] A[0] Σχηµατική αναπαράσταση Στοίβας Από τα προηγούµενα είναι προφανές ότι σε µια LIFO λίστα, οι µόνες λειτουργίες εισόδου/εξόδου στοιχείων της λίστας είναι οι PUSH, POP και η TOP, η οποία εµφανίζει το στοιχείο που βρίσκεται στην κορυφή της στοίβας. Για να κατασκευάσουµε LIFO λίστες θα χρησιµοποιήσουµε ένα δείκτη *list, ο οποίος θα δείχνει στη θέση της µνήµης από την οποία αρχίζει η καταγραφή των περιεχοµένων κάθε λίστας, και είναι χρήσιµος για την δυναµική διαχείριση λιστών. Στην ουσία η λίστα θα είναι ένα διάνυσµα του οποίου το µήκος θα µπορούµε να µεταβάλλουµε δυναµικά. Το µήκος κάθε λίστας θα δίνεται από την ακέραια µεταβλητή length, η οποία θα πρέπει να αυξάνεται ή να µειώνεται κατά ένα µε κάθε εφαρµογή της PUSH ή της POP αντίστοιχα. Οι *list και length θα είναι δεδοµένα-µέλη της class lifo ιδιωτικού χαρακτήρα (private), για να µην είναι προσπελάσιµα παρά µόνο από τις συναρτήσεις της κλάσης. Στην αρχή λειτουργίας του προγράµµατος όλες οι λίστες θα είναι µηδενικού µήκους, συνεπώς θα είναι length=0. Για αυτό στην constructor συνάρτηση της κλάσης θα πρέπει να υπάρχουν οι εντολές :

11 - length = 0; - list = new int [length]; Κατά σειρά εµφάνισης των συναρτήσεων µελών της class lifo, αυτές θα είναι: 2.3 MEMBER FUNCTIONS PUSH void push (ακέραιος x) - <έλεγξε το length> - [Αν length = 0 ] τότε - Θέσε length = length +1 - ηµιούργησε το διάνυσµα list µε το νέο µήκος length - Θέσε list [length-1] = x - [Αν length > 0 ] τότε - ηµιούργησε ένα προσωρινό διάνυσµα temp µε µήκος length - Αντέγραψε τα περιεχόµενα του list στο temp - ηλαδή temp [ I ] = list [ I ] για κάθε I ε [0, length] - ιέγραψε το *list. - Θέσε length = length +1 - ηµιούργησε το *list µε το νέο µήκος - Αντέγραψε τα περιεχόµενα του *temp στο *list - ιέγραψε το *temp - Θέσε list [length-1]=x Παρατηρήσεις: 1) Στην C++, ένα διάνυσµα A µήκους n, αναπαρίσταται ως εξής: A0 A1 A2 A3... An-2 An-1 Έτσι, το 1ο στοιχείο του διανύσµατος Α είναι το Α0, το 2ο είναι το Α1 κοκ. Το n-οστό στοιχείο είναι το An-1. Γι αυτό το λόγο στον αλγόριθµο της PUSH, για το στοιχείο x που πρέπει να µπει στο τέλος της list έχουµε : list[length-1]=x. Το ίδιο θα γίνει και στον αλγόριθµο της POP. 2) Επειδή χρειαζόµαστε ένα προσωρινό διάνυσµα temp, για την αντιγραφή των περιεχοµένων του *list, τόσο στην λειτουργία PUSH όσο και στην POP, θα χρησιµοποιήσουµε ένα δείκτη *temp, ο οποίος θα είναι δεδοµένο-µέλος της class lifo και µάλιστα private αφού δεν υπάρχει λόγος να είναι ορατό εκτός των συναρτήσεων της κλάσης. Γι αυτό στην constructor συνάρτηση θα προσθέσουµε την εντολή: - temp = new int [length] 3) H λειτουργία PUSH δέχεται ως παράµετρο το στοιχείο που θέλουµε να εισάγουµε και δεν επιστρέφει καµία τιµή.

12 2.3.2 POP Ο αλγόριθµος της λειτουργίας POP θα είναι: int pop () - Όρισε µια ακέραια µεταβλητή pop - < Έλεγξε το length > - [ Αν length = 1 ] τότε - Θέσε top = list [length-1] - ιέγραψε το *list - Θέσε length = length 1 - ηµιούργησε το *list µε νέο µήκος length - Return top - [ Αν length = 0 ] τότε - Εκτύπωσε «Λάθος. UNDERFLOW.» - Return 1 - [ Αν length > 1 ] τότε - ιέγραψε το *temp (αν υπάρχει) - ηµιούργησε το διάνυσµα *temp µήκους length - Aντέγραψε το *list στο *temp, δηλαδή - temp [i] = list [i] για κάθε i ε [0, length-1] - ιέγραψε το *list - Θέσε length=length-1 - ηµιούργησε εκ νέου το *list µε νέο µήκος length - Αντέγραψε τα περιεχόµενα του *temp στο *list, δηλαδή - list [i] = temp [i] για κάθε i ε [0, length-1] - Θέσε top = temp [length] - return top Παρατηρήσεις: 1) Η λειτουργία POP επιστρέφει πάντα µια ακέραια τιµή, γι αυτό η αντίστοιχη συνάρτηση- µέλους θα πρέπει να είναι τύπου int. Την ακέραια τιµή προς επιστροφή την αποθηκεύουµε σε µια τοπική µεταβλητή top. 2) Ο αλγόριθµος ελέγχει την τιµή του length της ενεργής λίστας και προβλέπει τρεις περιπτώσεις: length=1, length=0, length > 0. Στην πρώτη περίπτωση, η λίστα έχει ένα µόνο στοιχείο, το οποίο η pop επιστρέφει, µηδενίζοντας την τιµή του length. Στην δεύτερη περίπτωση, η λίστα έχει µηδενικό µήκος, συνεπώς δεν υπάρχει στοιχείο για επιστροφή. Η κατάσταση αυτή λέγεται UNDERFLOW και τυπώνεται ανάλογο µήνυµα. Στην τρίτη περίπτωση, τα περιεχόµενα της *list αποθηκεύονται στο προσωρινό διάνυσµα του *temp και µειώνεται το µήκος της λίστας κατά 1. Μετά δηµιουργείται εκ νέου το *list µε το νέο length και τα περιεχόµενα του *temp, εκτός του τελευταίου στοιχείου, αντιγράφονται στο *list. Η µεταβλητή προς επιστροφή παίρνει τιµή top = temp [length-1].

13 3) Λόγω των παραπάνω ο δείκτης *temp δεν καταστρέφεται µε το τέλος κάθε λειτουργίας POP γι αυτό πριν χρησιµοποιηθεί από οποιαδήποτε ρουτίνα θα πρέπει να καταστρέφεται και µετά να δηµιουργείται ξανά PRINT Η τρίτη συνάρτηση µέλους που θέλουµε να υπάρχει στην κλάση lifo είναι η print, η οποία θα τυπώνει τα περιεχόµενα της ενεργής λίστας, ένα προς ένα. Ο αλγόριθµός της θα είναι : void print () - Άλλαξε γραµµή στη θέση του δροµέα στην οθόνη - Τύπωσε το στοιχείο list [i] για κάθε i ε [0, length-1] MEMBER Η συνάρτηση µέλους member δέχεται ως παράµετρο ένα ακέραιο x. Aν και απλούστατη, είναι βασική για τη λειτουργία της κλάσης, καθώς χρησιµοποιείται από άλλες συναρτήσεις-µέλους προκειµένου να ελεγχθεί αν ένας ακέραιος είναι στοιχείο µιας λίστας ή όχι. Η member είναι τύπου Bool, δηλαδή επιστρέφει τιµές True (=1) αν o x ανήκει στη λίστα και False (=0) στην αντίθετη περίπτωση. Ο αλγόριθµός της είναι: Bool member ( int x ) - Για i=0 έως i<= length-1 - [ Αν list[i] = x ] return True ; - [αλλιώς] return False SEEK Η επόµενη συνάρτηση της class lifo είναι η seek. Η seek είναι µια ολοκληρωµένη ρουτίνα η οποία ζητά από τον χρήστη ένα στοιχείο και ελέγχει την ύπαρξη και τη θέση του στη τρέχουσα λίστα. Ανάλογα µε το αποτέλεσµα τυπώνει αν υπάρχει ή όχι καθώς και τη θέση του στη λίστα. Η seek χρησιµοποιεί την συνάρτηση member για να ελέγξει αν το στοιχείο υπάρχει στη λίστα. Ο αλγόριθµός της θα είναι: void seek () - Όρισε χαρακτήρες x,m - Είσοδος στοιχείου x από τον χρήστη. - [Αν όχι member (x ) ] τότε - τύπωσε «εν βρέθηκε». - Τύπωσε «Πίεσε οποιοδήποτε πλήκτρο για συνέχεια». - Θέσε m=getch () - [Αν member (x) ] τότε - Για i=0 έως i=length-1 - [ Αν list[i] = x ] τότε - τύπωσε «Το στοιχείο βρέθηκε στη θέση» ; τύπωσε (i+1) - Τύπωσε «Πίεσε οποιοδήποτε πλήκτρο για συνέχεια» - Θέσε

14 ΠΑΡΑΤΗΡΗΣΗ Στην seek χρησιµοποιείται και η συνάρτηση getch() για το προσωρινό σταµάτηµα της ροής του προγράµµατος µετά την εκτύπωση ενός µηνύµατος στην οθόνη, µέχρι ο χρήστης να πιέσει κάποιο πλήκτρο COPY Η συνάρτηση µέλος copy αντιγράφει την ενεργή λίστα σε µία άλλη. Η λίστα στόχος b περνά στην συνάρτηση ως παράµετρος µε κλήση µε αναφορά προκειµένου να µπορεί η συνάρτηση να αλλάξει τα περιεχόµενα της. Ο αλγόριθµος της είναι: void copy ( lifo & b) - ηµιούργησε ένα νέο διάνυσµα b.list µε µήκος [length] - Για i =0 έως i <= length-1 - Θέσε b.list[i]=list[i]; - Θέσε b.length=length; Η copy αντιγράφει ένα προς ένα τα στοιχεία του *list στο νέο διάνυσµα *b.list και, τέλος, θέτει το length της b ίσο µε αυτό της πηγαίας λίστας COMPARE Η συνάρτηση compare συγκρίνει την ενεργή λίστα µε µια λίστα b, η οποία περνά στην συνάρτηση ως παράµετρος µε κλήση µε αναφορά. Η compare είναι τύπου Bool. Πρώτα ελέγχει τα µήκη των δύο λιστών. Αν είναι άνισα επιστρέφει False. Αν είναι ίσα, ελέγχει αν τα στοιχεία της τρέχουσας λίστας *list είναι ίσα, ένα προς ένα, µε τα αντίστοιχα στοιχεία της λίστας b. Αν οι λίστες διαφέρουν σε κάποιο στοιχείο, τότε και η compare επιστρέφει False. Αλλιώς επιστρέφει True. Ο αλγόριθµός της είναι: Bool compare (lifo &b) - [ Αν b.length όχι ίσο µε length ] return False; - για i = 0 έως i <= length-1 - [ Αν b.list[i] όχι ίσο µε list[i] ] return False ; - return True; CONCAT Η συνάρτηση µέλους concat συνενώνει την τρέχουσα λίστα µε µια λίστα b και αποθηκεύει το αποτέλεσµα σε µια τρίτη λίστα c. Οι λίστες b, c περνούν στην συνάρτηση ως παράµετροι µε κλήση µε αναφορά. Καταρχήν, η concat χρησιµοποιεί την συνάρτηση µέλους copy, για να αντιγράψει την λίστα b στην c. Κατόπιν, κάθε ένα στοιχείο της τρέχουσας λίστας εισάγεται στην c, µε διαδοχικά push. Ο αλγόριθµός της είναι:

15 void concat (lifo &b, lifo &c) - κάλεσε την συνάρτηση copy, από την λίστα b, στην λίστα c. - Για i = 0 έως i <= length-1 - Κάλεσε c.push ( list[ I ] ) ; LEN Η συνάρτηση µέλους len είναι τύπου int και επιστρέφει το µήκος length της τρέχουσας λίστας. Ο αλγόριθµός της είναι: int len ( ) - return length; TOP Η συνάρτηση µέλους top είναι τύπου int και επιστρέφει το στοιχείο που βρίσκεται στην κορυφή της στοίβας. Ο αλγόριθµός της είναι: int top () - return list[length-1]; Με βάση τα προηγούµενα ο ορισµός της κλάσης lifo θα περιέχει δώδεκα συναρτήσεις µέλους, οι οποίες θα είναι public συµπεριλαµβανοµένων και των constructor και destructor συναρτήσεων: lifo, ~lifo. Ακόµη θα υπάρχουν τρία δεδοµένα µέλη, οι δείκτες *list, *temp ακέραιου τύπου και η ακέραια µεταβλητή length. Και τα τρία δεδοµένα µέλη θα είναι ιδιωτικού χαρακτήρα, έτσι ώστε µόνο οι συναρτήσεις της κλάσης να έχουν πρόσβαση σε αυτά. Οπότε, ο ορισµός της κλάσης θα είναι: 2.4 Ορισµός της κλάσης lifo class lifo public : lifo () ; void push (int) ; int pop () ; void print () ; void seek () ; void copy ( lifo& ) ; void concat ( lifo&, lifo& ) ; Bool compare ( lifo& ) ; Bool member( int ) ; int len () ; int top () ; ~lifo () ; private : int *list,*temp ;

16 ; int length ; Στον παραπάνω ορισµό, οι συναρτήσεις µέλους αναφέρονται µόνο µε τα πρωτότυπά τους. Ο λεπτοµερής ορισµός τους γίνεται µετά και έχει ως εξής: lifo::lifo () length=0; list=new int [length]; temp = new int [length]; Bool lifo :: member ( int x ) for (register i=0 ; i<=length -1 ; ++i) if ( list[i] == x ) return True; return False ; void lifo :: push (int x ) if ( length == 0 ) delete [] list; list = new int [++length]; list[length-1] = x; else delete [] temp; temp = new int [length] ; for (register i=0 ; i <= length-1 ; i++ ) temp [i] = list [i]; delete [] list; list = new int [++length]; for ( register =0 ; i <= (length-2) ; i++ ) list [i] = temp [i]; list [length-1] = x; int lifo :: pop ()

17 int top; if ( length == 1 ) top = list [length-1]; delete [] list; list = new int [--length]; return top ; else if ( length == 0 ) cout << " \nerror. UNDERFLOW."; return -1; else delete [] temp; temp = new int [length]; for ( register i=0 ; i <= length-1 ; i++ ) temp [i] = list [i]; delete [] list; list = new int [--length]; for ( i=0 ; i <= length-1 ; i++ ) list [i] = temp [i]; top = temp [length] ; return top; void lifo :: seek () int x, m; cout << "\nenter element to seek : "; cin >> x; if (! member (x) ) cout << "\nsorry. Not Found.\n"; cout << "\npress any key."; else for ( register i=0 ; i<=length-1 ; i++) if (list[i] == x ) cout << "\nfound at " << (i+1)

18 << " position of current stack."; cout << "\npress any key."; void lifo::print ( ) cout << "\n"; for ( register i = 0 ; i <= length-1 ; i ++ ) cout << "[ " << list [i] << " ]" << "\t"; void lifo :: copy ( lifo &b ) b.list = new int [length]; for (register i=0 ; i<=length-1 ; i++) b.list[i]=list[i]; b.length=length; Bool lifo :: compare (lifo &b) if (b.length!= length ) return False; for (register i=0 ; i<=length-1 ; i++) if ( b.list[i]!= list[i] ) return False ; return True; void lifo :: concat (lifo &b, lifo &c) b.copy (c); for ( register i=0 ; i<=length-1 ; ++i) c.push ( list[i] ) ; int lifo :: len ( ) return length; int lifo :: top ()

19 return list[length-1]; lifo :: ~lifo () delete [] list; delete [] temp; 2.5 MAIN program Για να γίνει χρήση της κλάσης που δηµιουργήθηκε απαιτείται ένα κυρίως πρόγραµµα, το οποίο θα δηµιουργεί τα αντικείµενα-λίστες της κλάσης και παράλληλα θα προσφέρει ένα περιβάλλον εργασίας µε αυτά. Η δηµιουργία των αντικειµένων γίνεται για λόγους ευκολίας αλλά και δυναµικότητας, µε την εντολή lifo a[100], µέσω της οποίας δηµιουργούνται 100 διαφορετικά αντικείµενα lifo λίστες, από την a[0] έως την a[99]. Έτσι µπορεί κανείς να δει και την δυναµικότητα των κλάσεων στην C++, ακόµη και µε τις απλές τεχνικές προγραµµατισµού που χρησιµοποιούνται εδώ, καθώς κάθε µία από αυτές τις λίστες µπορεί να αποθηκεύσει πάνω από στοιχεία. Συνολικά, µπορούν να αποθηκευτούν 100 x = στοιχεία και αφού ένας ακέραιος αποθηκεύεται σε 2 bytes µνήµης, η κλάση ή µάλλον τα αντικείµενα της µπορούν να «χωρέσουν» 2 x = bytes τουλάχιστον, δηλαδή πάνω από 1 Megabyte. Το κυρίως πρόγραµµα ( main () ) τώρα το οποίο θα χρησιµοποιεί τις LIFO λίστες της παραπάνω κλάσης και τις συναρτήσεις της, θα πρέπει υποχρεωτικά να εµφανίζει ένα µενού επιλογών στο χρήστη, η κάθε µια από τις οποίες θα αντιστοιχεί σε µια συνάρτηση της κλάσης lifo, π.χ. push, pop, print, copy κοκ. Το µενού είναι απαραίτητο για την αλληλεπίδραση προγράµµατος και χρήστη. Για να γίνει αυτό θα χρησιµοποιηθεί ένας άπειρος βρόχος for (;;), στο εσωτερικό του οποίου θα εµφανίζονται µε τη βοήθεια των αντικειµένων cout της κλάσης iostream οι επιλογές στην οθόνη και µε τη χρήση της δοµηµένης εντολής switch () case case θα γίνονται οι επιλογές των απαραίτητων συναρτήσεων της κλάσης καθώς και των ορισµάτων τους. Συγκεκριµένα, στο κυρίως πρόγραµµα θα οριστούν έξι τοπικές µεταβλητές, εκ των οποίων η µία θα είναι τύπου χαρακτήρα (char) και οι υπόλοιπες ακέραιες. Η µεταβλητή τύπου χαρακτήρα καλείται key και σε αυτήν θα αποθηκεύεται ο χαρακτήρας του πληκτρολόγιου που επιλέγει ο χρήστης. Εν συνεχεία, την µεταβλητή key θα ελέγχει η switch (key) και αναλόγως της τιµής της θα γίνεται η επιλογή από το µενού. Οι υπόλοιπες ακέραιες µεταβλητές καλούνται x, y, z, num, m. H µεταβλητή num αποθηκεύει τον αριθµό της τρέχουσας λίστας ( 0 99 ) και αρχικά τίθεται 0. Η µεταβλητή m χρησιµοποιείται µόνο για τις ανάγκες ορισµού της συνάρτησης getch(), δηλαδή m=getch(), η οποία θα καλείται για το προσωρινό σταµάτηµα της ροής του προγράµµατος µέχρι ο χρήστης να πιέσει κάποιο πλήκτρο. Οι υπόλοιπες ακέραιες µεταβλητές x, y, z χρησιµοποιούνται τόσο για το πέρασµα στοιχείου σε λίστα ( η x ) όσο και σαν ορίσµατα των συναρτήσεων µέλους copy, concat, compare (οι x,y,z). Σύµφωνα µε τα παραπάνω, µερικά παραδείγµατα χρήσης των συναρτήσεων είναι: - a[x].copy ( a[y] ) /* Αντιγράφει την λίστα a[x] στην a[y] */ - a[num].pop() /* εξάγει το top στοιχείο της τρέχουσας λίστας a[num] */ - a[num].member (x) /*ελέγχει αν το x ανήκει στην τρέχουσα λίστα */

20 - a[y].concat ( a [x], a[z] ) /* Συνενώνει τις λίστες a[x],a[y] στην a[z] */ Έτσι, η main () συνάρτηση του προγράµµατος θα είναι: void main () char key; /* the answer-key in MAINMENU */ int x,y,z, num,m; lifo a[100]; /* Creates an array-style object of LIFO */ /* default list number is 0 */ num=0; /* printing of main menu -- repeated by for loop*/ for ( ;; ) cout << "\n"; cout << "\n/* MAIN MENU */\n"; cout << "\n(_1_) Push x "; cout << "\n(_2_) Pop x "; cout << "\n(_3_) Print List "; cout << "\n(_4_) Search element "; cout << "\n(_5_) Check element"; cout << "\n(_6_) Choose Active List "; cout << "\n(_7_) Copy List "; cout << "\n(_8_) Compare Lists"; cout << "\n(_9_) Concatenate Lists"; cout << "\n(_0_) Return TOP "; cout << "\n(_e_) Exit\n "; cout << "\n< Current List : " << num <<", Length = " << a[num].len () << " > "; cout << "\n> " ; cin >> key; cout << "\n\n"; switch (key) case '1' : cout << "/* PUSH */\n"; cout << "Enter integer to push : "; cin >> x; a[num].push (x); /* push x onto a(num) */ case '2' : cout << " /* POP */ "; if (a[num].len ()!= 0 ) cout << "\nlast entered integer : " << a[num].pop ();

21 cout << "\n\npress any key."; break ; else a[num].pop(); cout << "\npress any key."; case '3' : cout << "/* PRINT LIST */\n"; a[num].print (); cout << "\n\npress any key."; case '4' : a[num].seek (); case '5' : cout << "/* CHECK */ \n"; cout << "Enter int:"; cin >> x ; if (a[num].member (x)) cout <<"\nfound!\n"; else cout << "\n Not Found."; cout << "\n\npress any key."; case '6' : cout << " /* CHANGE CURRENT LIST */ "; cout << "\nchoose LIFO list number (0-99): "; cin >> num; case '7' : cout << "/* COPY LISTS */ " ; cout << "\nsource List : "; cin >> x ; cout << "\ntarget List : "; cin >> y; a[x].copy ( a[y] ); cout <<"\n List : "<< y ; a[y].print (); cout << "\n\npress any key."; case '8' : cout << "/* COMPARE LISTS */ "; cout << "\nfirst List : " ; cin >> x; cout << "\nsecond List : " ; cin >> y; if (! a[x].compare ( a[y] ) ) cout << "\nlists are different." ; else cout << "\nlists " << x << " and " << y << " are the same. "; cout << "\n\npress any key.";

22 case '9' : cout << "/* LISTS' CONCATENATION */ "; cout << "\nfirst List : "; cin >> x; cout << "\nsecond List : "; cin >> y ; cout << "\ntarget List : "; cin >> z; a[y].concat ( a [x], a[z] ); cout << "\n List : " << z ; a[z].print (); cout << "\n\npress any key."; case '0' : cout << "/* TOP */ "; if (a[num].len()!= 0 ) cout << "\n Top Of List ["<< num << "] is : "; cout << a[num].top(); cout << "\n\npress Any Key To Continue.\n"; else case 'E' : case 'e' : goto telos ; default : cout << "Wrong. Try Again." ; telos: cout << "\n\ngoodbye."; ΠΑΡΑΤΗΡΗΣΗ: Στην επιλογή case 2 για εξαγωγή στοιχείου (pop), αλλά και στην case 0 για την ανάγνωση της κορυφής της στοίβας (top), ελέγχεται πρώτα το µήκος της λίστας και αν είναι µεγαλύτερο του µηδενός καλείται η pop ( η top αντίστοιχα). Αυτό γίνεται, γιατί στην περίπτωση που η λίστα δεν περιέχει στοιχείο, η συνάρτηση µέλους pop εκτυπώνει το µήνυµα UNDERFLOW και µετά επιστρέφει την τυπική τιµή 1. Με αυτόν τον τρόπο αποφεύγεται η περίπτωση να ζητηθεί pop στοιχείου και να τυπωθεί µήνυµα της µορφής: - Last entered integer : UNDERFLOW ηλαδή θα εµφανίζονται: - Last entered integer : x /* αν a[num].len()!= 0 */ ή - Error. UNDERFLOW. /*αν a[num].len() = 0 */

23 ΚΕΦΑΛΑΙΟ TEMPLATES Σε αυτό το κεφάλαιο δηµιουργείται ένα πρότυπο κλάσεων lifo της οποίας τα αντικείµενα είναι LIFO λίστες (stacks), που όµως τα στοιχεία τους θα µπορούν να είναι είτε πραγµατικοί αριθµοί (float) είτε χαρακτήρες (char). Στην ουσία, πρόκειται για γενίκευση της κλάσης lifo ακεραίων που δηµιουργήθηκε στο προηγούµενο κεφάλαιο. Η γενίκευση αυτή επιτυγχάνεται εύκολα µε χρήση των templates που υποστηρίζει η C++. Σύµφωνα µε τον ορισµό της Borland C++, τα πρότυπα (templates) ή παραµετροποιηµένοι τύποι βοηθούν στον ορισµό µιας οικογένειας σχετικών συναρτήσεων ή κλάσεων. Τα πρότυπα χρησιµοποιούνται προκειµένου να δηµιουργηθεί ένα σχέδιο περιγραφής γενικού τύπου συναρτήσεων ή κλάσεων όπου ο τύπος της συνάρτησης ή των δεδοµένων-µελών και των συναρτήσεων-µέλους είναι παραµετροποιηµένος. Για παράδειγµα, αν θέλουµε µια συνάρτηση να επιστρέφει τη µέγιστη µεταξύ των τιµών δύο ακέραιων µεταβλητών θα είχαµε: - int max(int x, int y) return (x > y)? x : y; ; Αυτό είναι αρκετό στην περίπτωση που οι x, y είναι πάντοτε ακέραιες. Αν όµως θέλουµε οι x,y να είναι float ή char τύπου, προφανώς η παραπάνω συνάρτηση δεν λειτουργεί. Σε αυτήν την περίπτωση θα µπορούσαµε να δηµιουργήσουµε, χρησιµοποιώντας την τεχνική της υπερφόρτωσης συναρτήσεων (function overloading) της C++, µερικές παρόµοιες συναρτήσεις max όπου το µόνο που θα άλλαζε θα ήταν ο τύπος της συνάρτησης και των παραµέτρων της. Αντί αυτού, για λόγους συντοµίας στον κώδικα αλλά και συµπάγειας του προγράµµατος, κάνουµε χρήση των προτύπων. Ο γενικός ορισµός τους είναι: - template <class T> T function_name ( T x, T y, κοκ ) /* Function_Body */ Με αυτόν τον τρόπο, ο τύπος της συνάρτησης, αλλά και των παραµέτρων που δέχεται, αναπαρίσταται από το όρισµα <class T> του προτύπου. Είναι δηλαδή παραµετροποιηµένος, οπότε ο µεταγλωττιστής (compiler) θα αναλάβει να κάνει την σωστή απόδοση, δηµιουργώντας την «ακριβή» συνάρτηση, ανάλογα µε τον τύπο δεδοµένων που χρησιµοποιήθηκε κατά την κλήση της στο πρόγραµµα. Έτσι, στο παραπάνω παράδειγµα της max συνάρτησης θα είχαµε µε χρήση template: - template <class T> - T max (T x, T y) -

24 - return (x > y )? x : y ; - ; Οπότε αν στο κυρίως πρόγραµµα είχαµε: - int k,x,y; - float a; - k=max(x,y); /* ορίσµατα ακεραίων x, y, επιστρέφει int */ - a = max (5.4,5.091); /* ορίσµατα πραγµατικών, επιστρέφει float*/ Ανάλογη είναι και η διαδικασία για τον ορισµό µιας κλάσης µε χρήση template. Με τον τρόπο αυτό µπορούµε να παραµετροποιήσουµε τον τύπο των συναρτήσεων µέλους αλλά και των δεδοµένων: - template <class T> - class name - - public: - T member_function_name ( T arguments if any); - private: - T member_data; - ; Αυτή την τεχνική χρησιµοποιούµε στη συνέχεια για τον ορισµό της κλάσης lifo λιστών µε στοιχεία πραγµατικούς ή χαρακτήρες. Ορίζουµε το πρότυπο template <class Type> της class lifo, για να παραµετροποιήσουµε τον τύπο των δεδοµένων µελών αλλά και των επίµαχων συναρτήσεων-µέλους προκειµένου τα αντικείµενα της κλάσης να είναι λίστες είτε πραγµατικών είτε χαρακτήρων κατά το δοκούν και φυσικά να έχουµε τις ίδιες λειτουργίες µε τις λίστες ακεραίων. Φυσικά, οι δείκτες *list και *temp, που περιέχουν τα στοιχεία κάθε λίστας θα πρέπει να είναι τύπου Type, δηλαδή παραµετροποιηµένα ώστε να µπορούµε να αποθηκεύουµε είτε float είτε char στοιχεία χρησιµοποιώντας την ίδια κλάση. Ακόµη οι συναρτήσεις µέλους που εξάγουν - επιστρέφουν στοιχεία, δηλαδή οι pop και top, θα πρέπει να είναι παραµετροποιηµένου τύπου. Τέλος, οι συναρτήσεις µέλους που δέχονται στοιχεία για επεξεργασία, όπως οι push και member, θα δέχονται ορίσµατα τύπου Type, έτσι ώστε να λειτουργούν και µε float αλλά και µε char στοιχεία. Έτσι θα έχουµε: 3.2 CLASS TEMPLATE template <class Type> class lifo public : lifo () ; void push (Type) ; Type pop () ; void print () ; void seek () ; void copy (lifo& ) ;

25 void concat (lifo&, lifo&) ; Bool compare (lifo&) ; Bool member( Type ) ; int len () ; Type top () ; ~lifo () ; private : Type *list,*temp ; Type Top ; int length ; ; Όπως φαίνεται παραπάνω, η κλάση lifo ελάχιστα µεταβλήθηκε στην ουσία από αυτήν του 2 ου κεφαλαίου. Οι κύριες διαφορές εντοπίζονται στα επίµαχα δεδοµένα *list, *temp, Top που περιέχουν τα στοιχεία της λίστας και αφορούν τον τύπο τους, αλλά και στις συναρτήσεις «εισόδου/εξόδου» push & member, pop & top στοιχείων προς /από την λίστα, που προφανώς ήταν αναγκαίο να παραµετροποιηθούν οι τύποι ή τα ορίσµατα προκειµένου να µπορούν να χρησιµοποιήσουν τα γενικού τύπου δεδοµένα-µέλη. Με όµοιο τρόπο, αφού το σώµα της κλάσης περιέχει µόνον τα πρωτότυπά τους, ορίζονται λεπτοµερώς και φυσικά µε χρήση template οι συναρτήσεις-µέλους της κλάσης: 3.3 MEMBER FUNCTIONS template <class Type> lifo<type>::lifo () length=0; list=new Type [length]; temp = new Type [length]; Top = list [length-1]; template <class Type> void lifo<type> :: push (Type x ) if ( length == 0 ) delete [] list; list = new Type [++length]; list[length-1] = x; Top = list [length-1]; else delete [] temp; temp = new Type [length] ; for (register i=0 ; i <= length-1 ; i++ )

26 temp [i] = list [i]; delete [] list; list = new Type [++length]; for ( i=0 ; i <= (length-2) ; i++ ) list [i] = temp [i]; list [length-1] = x; Top=list [length-1]; template <class Type> Type lifo<type> :: pop () Type top; if ( length == 1 ) top = Top; delete [] list; list = new Type [--length]; Top= list[length-1]; return top ; else if ( length == 0 ) cout <<"\nerror. Underflow."; return -1; else delete [] temp; temp = new Type [length]; for ( register i=0 ; i <= length-1 ; i++ ) temp [i] = list [i]; delete [] list; list = new Type [--length]; for ( i=0 ; i <= length-1 ; i++ ) list [i] = temp [i]; top = temp [length] ; Top = list [length-1]; return top;

27 template <class Type> void lifo<type>::print ( ) cout << "\n"; for ( register i = 0 ; i <= length-1 ; i ++ ) cout << "[ " << list [i] << " ]" << "\t"; template <class Type> void lifo<type> :: seek () int m; Type x; cout << "Enter element to seek : "; cin >> x; if (! member (x) ) cout << "\nsorry. Not Found.\n"; cout << "\npress any key."; else for ( register i=0 ; i<=length-1 ; i++) if (list[i] == x ) cout << "\nfound at " << (i+1) << " position of current stack."; cout << "\npress any key."; template <class Type> Bool lifo<type> :: member ( Type x ) for (register i=0 ; i<=length -1 ; ++i) if ( list[i] == x ) return True; return False ;

28 template <class Type> void lifo<type> :: copy ( lifo &b ) b.list = new Type [length]; for (register i=0 ; i<=length-1 ; i++) b.list[i]=list[i]; b.length=length; b.top=list[length-1]; template <class Type> Bool lifo<type> :: compare (lifo &b) if (b.length!= length ) return False; for (register i=0 ; i<=length-1 ; i++) if ( b.list[i]!= list[i] ) return False ; return True; template <class Type> void lifo<type> :: concat (lifo &b, lifo &c) b.copy (c); for ( register i=0 ; i<=length-1 ; ++i) c.push ( list[i] ) ; template <class Type> int lifo<type> :: len ( ) return length; template <class Type> Type lifo<type> :: top () return Top; template <class Type> lifo<type> :: ~lifo () delete [] list; delete [] temp; Από τα προηγούµενα είναι προφανές ότι η χρήση template για τον ορισµό των συναρτήσεων µέλους σχεδόν καθόλου δεν µεταβάλλει τον αλγόριθµό τους. Αυτό που αλλάζει είναι στην ουσία η

29 επικεφαλίδα της συνάρτησης στα οποία υπεισέρχεται πρώτη η έκφραση template <class Type>, καθώς και πριν από τον τελεστή εµβέλειας ::, ο τύπος <Type>. Ο αλγόριθµος κάθε συνάρτησης είναι ίδιος µε του 2 ου κεφαλαίου, εκτός από τα σηµεία στα οποία χρησιµοποιούνται είτε δεδοµένα µέλη γενικού τύπου Type, όπως φυσικά στις συναρτήσεις push (type x) και pop(), είτε τοπικές µεταβλητές τύπου Type, όπως π.χ. στην συνάρτηση seek(). 3.4 MAIN program Στο κυρίως πρόγραµµα, τώρα, οι αλλαγές είναι ακόµη µικρότερου βαθµού. Απλώς, ορίζονται δύο ξεχωριστά αντικείµενα a[100] και b[100] της κλάσης lifo, το µεν b για τις λίστες µε πραγµατικούς αριθµούς, το δε a για τις λίστες µε στοιχεία χαρακτήρες. Και εδώ, για λόγους ευκολίας και δυναµικότητας, τα αντικείµενα ορίζονται υπό µορφή διανυσµάτων, µε αποτέλεσµα να έχουµε 100 λίστες µε στοιχεία float και άλλες 100 µε στοιχεία char. Ο ορισµός αυτών γίνεται µε τις εντολές: - lifo <float> b [100] - lifo <char> a [100] Λόγω της δοµής του προγράµµατος, δεν είναι δυνατό ο χρήστης να δουλεύει ταυτόχρονα και µε λίστες float και µε λίστες char στοιχείων, γι αυτό στην αρχή του προγράµµατος έχει γίνει µια προσθήκη για την επιλογή από τον χρήστη του τύπου της λιστών µε τον οποίο θέλει να δουλέψει. Αυτό γίνεται µε µια λογική συνθήκη διακλάδωσης if-else. Ελέγχεται η τιµή της char µεταβλητής choice και αν ισούται µε c ή C, τότε το πρόγραµµα ακολουθεί τον κλάδο του προγράµµατος που χρησιµοποιεί τα αντικείµενα a[100]. Αν η choice έχει τιµή f ή F τότε ακολουθείται ο κλάδος του προγράµµατος που χρησιµοποιεί τα αντικείµενα b[100]. Στην ουσία και οι δύο κλάδοι είναι αλγοριθµικά όµοιοι, οι µόνες δε διαφορές τους εντοπίζονται στα διαφορετικά αντικείµενα a ή b που χρησιµοποιούν καθώς και στις παρακάτω αναφερόµενες τοπικές µεταβλητές: Στον κλάδο για τις λίστες τύπου char χρησιµοποιείται η τοπική µεταβλητή xf τύπου char στην συνάρτηση push ( Type x ) για την προσθήκη χαρακτήρα σε λίστα µε χαρακτήρες, ενώ στον κλάδο για λίστες πραγµατικών χρησιµοποιείται η xf1 τύπου float για την ίδια συνάρτηση αλλά προφανώς για λίστες µε float στοιχεία. Το ίδιο επαναλαµβάνεται και στην συνάρτηση member ( Type x ). Τελικά, η main () συνάρτηση για τη templated κλάση lifo που δηµιουργήθηκε µε βάση αυτήν του προηγούµενου κεφαλαίου θα είναι: void main () char key,choice,xf; /* Key & choice για τις επιλογές µενού */ int x,y,z, num,m ; float xf1,amount; lifo <char> a[100]; /* ηµιουργία δυο αντικειµένων */ lifo <float> b[100]; /* ένα για char, το άλλο για float*/ /* Αρχικά επιλεγµένη λίστα */ num=0; ARXH :

30 cout << " \nchoose the type of your LIFO List:"; cout << " \n(_f_) Float. "; cout << " \n(_c_) Chars. "; cout << " \n>"; cin >> choice; if ( choice == 'c' choice == 'C' ) /* για char- λίστες */ for ( ;; ) cout << "\n"; cout << "\n/* MAIN MENU */\n"; cout << "\n(_1_) Push element "; cout << "\n(_2_) Pop element "; cout << "\n(_3_) Print List "; cout << "\n(_4_) Search element "; cout << "\n(_5_) Check element "; cout << "\n(_6_) Choose List "; cout << "\n(_7_) Copy Lists "; cout << "\n(_8_) Compare Lists"; cout << "\n(_9_) Concatenate Lists"; cout << "\n(_0_) Return TOP "; cout << "\n(_e_) Exit "; cout << "\n(_t_) Perform SelfTest.\n"; cout << "\n< Current List : " << num <<", Length = " << a[num].len () << " > "; cout << "\n>" ; cin >> key; cout << "\n\n"; switch (key) case '1' : cout << "/* PUSH */\n"; cout << "Enter element to push : "; cin >> xf; a[num].push (xf); case '2' : cout << " /* POP */ "; if (a[num].len()!= 0 ) cout << "\nlast entered element : " << a[num].pop (); cout << "\n\npress any key."; break ; else a[num].pop();

31 case '3' : cout << "\npress any key."; cout << "/* PRINT LIST */\n\n"; a[num].print (); cout << "\n\npress any key."; case '4' : a[num].seek (); case '5' : cout << "/* CHECK */ \n"; cout << "Enter element :"; cin >> xf ; if (a[num].member (xf)) cout <<"\nfound!\n"; else cout << "\n Not Found."; cout << "\n\npress any key."; case '6' : cout << " /* CHANGE CURRENT LIST */ "; cout << "\nchoose LIFO list number (0-99): "; cin >> num; case '7' : cout << "/* COPY LISTS */ " ; cout << "\nsource List : "; cin >> x ; cout << "\ntarget List : "; cin >> y; a[x].copy ( a[y] ); cout <<"\n List : "<< y ; a[y].print (); cout << "\n\npress any key."; case '8' : cout << "/* COMPARE LISTS */ "; cout << "\nfirst List : " ; cin >> x; cout << "\nsecond List : " ; cin >> y; if (! a[x].compare ( a[y] ) ) cout << "\nlists are different." ; else cout << "\nlists " << x << " and " << y << " are the same. "; cout << "\n\npress any key."; case '9' : cout << "/* LISTS' CONCATENATION */ ";

32 cout << "\nfirst List : "; cin >> x; cout << "\nsecond List : "; cin >> y ; cout << "\ntarget List : "; cin >> z; a[y].concat ( a [x], a[z] ); cout << "\n List : " << z ; a[z].print (); cout << "\n\npress any Key to Continue."; case '0' : cout << "/* TOP */"; if (a[num].len()!= 0 ) cout << "\ntop of List [" << num << "] is : "; cout << a[num].top() ; cout << "\n\n Press Any Key To Continue."; break ; else case 'E' : case 'e' : goto TELOS ; case 'T' : case 't' : cout << "\n */ SelfTest /*"; cout << "\nenter amount of PUSH actions to do: "; cin >> amount; cout << "\n"; xf='!'; for (xf1=0;xf1<=amount;xf1++) xf++; if (xf>='~') xf='!'; a[num].push(xf); cout << "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b"; cout << "Progress: " << ceil((100*xf1)/amount) << "%"; cout << "\nlist : " << num; a[num].print(); cout << "\npress any Key to Continue:"; default : cout << "Wrong. Try Again." ;

33 else if ( choice == 'f' choice == 'F') /* για float- Λίστες */ for ( ;; ) cout << "\n"; cout << "\n/* MAIN MENU */\n"; cout << "\n(_1_) Push element "; cout << "\n(_2_) Pop element "; cout << "\n(_3_) Print List "; cout << "\n(_4_) Search element "; cout << "\n(_5_) Check element "; cout << "\n(_6_) Choose List "; cout << "\n(_7_) Copy Lists "; cout << "\n(_8_) Compare Lists"; cout << "\n(_9_) Concatenate Lists"; cout << "\n(_0_) Return TOP "; cout << "\n(_e_) Exit "; cout << "\n(_t_) Perform SelfTest.\n"; cout << "\n< Current List : " << num <<", Length = " << b[num].len () << " > "; cout << "\n>" ; cin >> key; cout << "\n\n"; switch (key) case '1' : cout << "/* PUSH */\n"; cout << "Enter element to push : "; cin >> xf1; b[num].push (xf1); case '2' : cout << " /* POP */ "; if (b[num].len()!= 0 ) cout << "\nlast entered element : " << b[num].pop (); cout << "\n\npress any key."; break ; else b[num].pop(); cout << "\npress any key.";

34 case '3' : cout << "/* PRINT LIST */\n\n"; b[num].print (); cout << "\n\npress any key."; case '4' : b[num].seek (); case '5' : cout << "/* CHECK */ \n"; cout << "Enter element :"; cin >> xf1 ; if (b[num].member (xf1)) cout <<"\nfound!\n"; else cout << "\n Not Found."; cout << "\n\npress any key."; case '6' : cout << " /* CHANGE CURRENT LIST */ "; cout << "\nchoose LIFO list number (0-99): "; cin >> num; case '7' : cout << "/* COPY LISTS */ " ; cout << "\nsource List : "; cin >> x ; cout << "\ntarget List : "; cin >> y; b[x].copy ( b[y] ); cout <<"\n List : "<< y ; b[y].print (); cout << "\n\npress any key."; case '8' : cout << "/* COMPARE LISTS */ "; cout << "\nfirst List : " ; cin >> x; cout << "\nsecond List : " ; cin >> y; if (! b[x].compare ( b[y] ) ) cout << "\nlists are different." ; else cout << "\nlists " << x << " and " << y << " are the same. "; cout << "\n\npress any key."; case '9' : cout << "/* LISTS' CONCATENATIOΝ */ "; cout << "\nfirst List : "; cin >> x; cout << "\nsecond List : "; cin >> y ; cout << "\ntarget List : "; cin >> z; b[y].concat ( b [x], b[z] ); cout << "\n List : " << z ;

35 b[z].print (); cout << "\n\npress any key."; case '0' : cout << "/* TOP */"; if (b[num].len()!= 0 ) cout << "\ntop of List [" << num << "] is : "; cout << b[num].top() ; cout << "\n\n Press Any Key To Continue."; break ; else case 'E' : case 'e' : goto TELOS ; case 'T' : case 't' : cout << "\n */ SelfTest /*"; cout << "\nenter amount of PUSH actions to do : "; cin >> amount; cout << "\n"; for (xf1=0;xf1 <= amount;xf1++) b[num].push(xf1); cout << "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b"; cout << "Progress: " << ceil((100*xf1)/amount) << "%"; cout << "\nlist : " << num; b[num].print(); cout << "\npress any Key to Continue."; default : cout << "Wrong. Try Again." ; else cout << "\nwrong choice. Try Again.\n" ; goto ARXH; TELOS: cout << "\n\ngoodbye.";

36 ΠΑΡΑΤΗΡΗΣΕΙΣ 1. Σε σχέση µε τo κυρίως πρόγραµµα του προηγούµενου κεφαλαίου, η main() εδώ είναι διπλάσια σε αριθµό εντολών. Αυτό οφείλεται στο ότι υπάρχουν δυο κλάδοι σχεδόν όµοιοι, ένας για τον χειρισµό των λιστών µε πραγµατικούς αριθµούς και ένας για τις λίστες µε χαρακτήρες. Η επιλογή ενός από των δυο γίνεται στην αρχή του προγράµµατος µε µια συνθήκη διακλάδωσης if else. Σε περίπτωση που ο χρήστης πιέσει κάποιο άλλο πλήκτρο από αυτά που προβλέπονται ( f, F, c, C ) τότε ο αλγόριθµος επιστρέφει στην αρχή του προγράµµατος µέσω της ετικέτας ARXH (βλ. Προτελευταία γραµµή της main ()) 2. Στο µενού υπάρχει και µια επιπλέον εντολή SelfTest, η οποία δεν υπήρχε πριν. Είναι µια απλή ρουτίνα για τον έλεγχο των δυνατοτήτων κάθε λίστας. Ο χρήστης καλείται να δώσει τον αριθµό των διαδικασιών PUSH που θέλει να γίνουν στη λίστα και ο αριθµός αυτός αποθηκεύεται στην ακέραια µεταβλητή amount. Mετά αυτόµατα το πρόγραµµα εισάγει νέα στοιχεία στη τρέχουσα λίστα µε διαδοχικά PUSH τα οποία είναι πλήθους amount. Τέλος τα περιεχόµενα της λίστας τυπώνονται για του λόγου το αληθές. Έτσι µπορεί εύκολα κανείς να δει πόσα στοιχεία συνολικά µπορεί να αποθηκεύσει στις λίστες αντικείµενα της κλάσης lifo.

37 ΒΙΒΛΙΟΓΡΑΦΙΑ 1) Data Structures & Algorithm Analysis in C++, Mark Allen Weiss, Florida International University, ) C++ Programming, Sharam Hekmat, Pragmatix Software Pty. Ltd, ) οµές εδοµένων, Παναγιώτη Αλεβίζου, Πανεπιστήµιο Πατρών, ) Γλώσσες Προγραµµατισµού ΙΙ, Όµηρου Ράγγου, Πανεπιστήµιο Πατρών, ) Προγραµµατισµός Η/Υ C++, Ανδρέα Λεοντίτση, Πανεπιστήµιο Ιωαννίνων, 1996.

Υποψήφιοι Σχολικοί Σύμβουλοι 1986 2005

Υποψήφιοι Σχολικοί Σύμβουλοι 1986 2005 Υποψήφιοι Σχολικοί Σύμβουλοι 1986 25 Για τους /τις εκπαιδευτικούς που υπέβαλαν αίτηση υποψηφιότητας για τη θέση Σχολικού Συμβούλου υπάρχουν μας διατέθηκαν από τις αρμόδιες υπηρεσίες του ΥΠΕΠΘ, για τα έτη

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

Η αξιολόγηση των εκπαιδευτικών το Π.Δ 152/2013, του Γιώργου Καλημερίδη

Η αξιολόγηση των εκπαιδευτικών το Π.Δ 152/2013, του Γιώργου Καλημερίδη Η αξιολόγηση των εκπαιδευτικών το Π.Δ 152/2013, του Γιώργου Καλημερίδη Η εισήγηση μου χωρίζεται σε δύο μέρη. Θα κάνω μια μικρή εισαγωγή για την αξιολόγηση γενικά στη σημερινή συγκυρία και με βάση αυτό

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

ΔΙΑΔΟΣΗ ΘΕΡΜΟΤΗΤΑΣ Φυσική Β' Γυμνασίου. Επιμέλεια: Ιωάννης Γιαμνιαδάκης

ΔΙΑΔΟΣΗ ΘΕΡΜΟΤΗΤΑΣ Φυσική Β' Γυμνασίου. Επιμέλεια: Ιωάννης Γιαμνιαδάκης ΔΙΑΔΟΣΗ ΘΕΡΜΟΤΗΤΑΣ Φυσική Β' Γυμνασίου Επιμέλεια: Ιωάννης Γιαμνιαδάκης Σύνδεση με προηγούμενο Μάθημα Στο κεφάλαιο Θερμότητα έχουμε μάθει: Τι είναι θερμότητα & θερμοκρασία μακροσκοπικά & μικροσκοπικά Μέτρηση

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

ΟΡΓΑΝΩΣΗ ΕΝΟΤΗΤΩΝ Α ΤΑΞΗΣ ΕΝΟΤΗΤΑ 3

ΟΡΓΑΝΩΣΗ ΕΝΟΤΗΤΩΝ Α ΤΑΞΗΣ ΕΝΟΤΗΤΑ 3 ΟΡΓΑΝΩΣΗ ΕΝΟΤΗΤΩΝ Α ΤΑΞΗΣ ΕΝΟΤΗΤΑ 3 Σημειώνεται ότι για την ετοιμασία και εφαρμογή της ενότητας συνέδραμαν και οι συνάδελφοι Μαρία Ανθίμου και Χριστίνα Κκαΐλη (Δημοτικό Σχολείο Μενεού) ΔΕΙΚΤΕΣ ΕΠΙΤΥΧΙΑΣ:

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

ΠΡΟΣ: ΚΟΙΝ: ΘΕΜΑ: Ενηµερωτικό σηµείωµα για το πρόβληµα της παράνοµης υλοτοµίας και ειδικά αυτό της καυσοξύλευσης

ΠΡΟΣ: ΚΟΙΝ: ΘΕΜΑ: Ενηµερωτικό σηµείωµα για το πρόβληµα της παράνοµης υλοτοµίας και ειδικά αυτό της καυσοξύλευσης 1 Ιωάννης Κέκερης ασοπόνος Επίτιµος Πρόεδρος Ένωσης ασοπόνων Μακεδονίας Θράκης Μέλος.Σ. Πανελλήνιας Ένωσης ασοπόνων και ιαχειριστών Φυσικού Περιβάλλοντος ΠΡΟΣ: ΚΟΙΝ: Αρναία 16/12/2012 Κα Πρόεδρο Ειδικής

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

ΚΕΦΑΛΑΙΟ 3 ο ΤΟ ΜΕΛΛΟΝ ΤΗΣ ΕΥΡΩΠΑΪΚΗΣ ΕΝΩΣΗΣ. 3.1 Εισαγωγή

ΚΕΦΑΛΑΙΟ 3 ο ΤΟ ΜΕΛΛΟΝ ΤΗΣ ΕΥΡΩΠΑΪΚΗΣ ΕΝΩΣΗΣ. 3.1 Εισαγωγή ΚΕΦΑΛΑΙΟ 3 ο ΤΟ ΜΕΛΛΟΝ ΤΗΣ ΕΥΡΩΠΑΪΚΗΣ ΕΝΩΣΗΣ 3.1 Εισαγωγή Η Ελληνική Προεδρία πραγµατοποιείται σε µια κρίσιµη, για την Ευρωπαϊκή Ένωση, περίοδο. Μια Ένωση που προετοιµάζει την µεγαλύτερη διεύρυνση στην

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

03-00: Βιομάζα για παραγωγή ενέργειας Γενικά ζητήματα εφοδιαστικών αλυσίδων

03-00: Βιομάζα για παραγωγή ενέργειας Γενικά ζητήματα εφοδιαστικών αλυσίδων Κεφάλαιο 03-00 σελ. 1 03-00: Βιομάζα για παραγωγή ενέργειας Γενικά ζητήματα εφοδιαστικών αλυσίδων Μια από τις κύριες διαφορές μεταξύ της βιομάζας και των ορυκτών καυσίμων είναι ότι η βιομάζα παραμένει

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

Όταν το μάθημα της πληροφορικής γίνεται ανθρωποκεντρικό μπορεί να αφορά και την εφηβεία.

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

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

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

Η υποστήριξη της επαγγελματικής μάθησης μέσα από την έρευνα-δράση: διαδικασίες και αποτελέσματα Η υποστήριξη της επαγγελματικής μάθησης μέσα από την έρευνα-δράση: διαδικασίες και αποτελέσματα Σοφία Αυγητίδου Καθηγήτρια Παιδαγωγικής Εκπαίδευσης Εκπαιδευτικών Πανεπιστήμιο Δυτικής Μακεδονίας Δομή παρουσίασης

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

Σηµειώσεις στο ταξινοµούµε

Σηµειώσεις στο ταξινοµούµε Σηµειώσεις στο ταξινοµούµε Εισαγωγή... 2 επεξεργαστής βάσεων... 2 Τρόπος εµφάνισης των εγγραφών στη βάση δεδοµένων... 2 Ερώτηση- Σύνολο... 3 Λειτουργία... 3 Ραβδογράµµατα... 6 Γραφήµατα... 7 Εφαρµογή...

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

Πρακτικό εργαλείο. για την ταυτοποίηση πρώτου επιπέδου των θυμάτων παράνομης διακίνησης και εμπορίας. τη σεξουαλική εκμετάλλευση

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

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

Εισηγητής: Εµµανουήλ Σταµατάκης. Επιβλέπουσα: Χατζάκη Μαρία ΗΡΑΚΛΕΙΟ

Εισηγητής: Εµµανουήλ Σταµατάκης. Επιβλέπουσα: Χατζάκη Μαρία ΗΡΑΚΛΕΙΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ ΦΟΡΟ ΙΑΦΥΓΗ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εισηγητής: Εµµανουήλ Σταµατάκης Επιβλέπουσα: Χατζάκη Μαρία ΗΡΑΚΛΕΙΟ 2011 ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ...2

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

Περιβάλλον και Ανάπτυξη ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ. Γραμματικογιάννης Α. Ηλίας. Επιβλέπων: Καθηγητής Δ. Ρόκος

Περιβάλλον και Ανάπτυξη ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ. Γραμματικογιάννης Α. Ηλίας. Επιβλέπων: Καθηγητής Δ. Ρόκος ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΔΙΕΠΙΣΤΗΜΟΝΙΚΟ - ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ (Δ.Π.Μ.Σ.) "ΠΕΡΙΒΑΛΛΟΝ ΚΑΙ ΑΝΑΠΤΥΞΗ" Η ΦΤΩΧΕΙΑ Γραμματικογιάννης Α. Ηλίας Εργασία η οποία υποβάλλεται στο πλαίσιο

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

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

ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ ΤΗΣ Β ΛΥΚΕΙΟΥ ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙ ΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΚΕΝΤΡΟ ΕΚΠΑΙ ΕΥΤΙΚΗΣ ΕΡΕΥΝΑΣ ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ ΤΗΣ Β ΛΥΚΕΙΟΥ στο µάθηµα «Εισαγωγή στο ίκαιο και τους Πολιτικούς Θεσµούς» ΑΘΗΝΑ 2000 Οµάδα Σύνταξης Συντονιστής:

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

ΚΕΦΑΛΑΙΟ 8 ΣΥΜΠΕΡΑΣΜΑΤΑ

ΚΕΦΑΛΑΙΟ 8 ΣΥΜΠΕΡΑΣΜΑΤΑ ΚΕΦΑΛΑΙΟ 8 ΣΥΜΠΕΡΑΣΜΑΤΑ ΚΕΦΑΛΑΙΟ 8 : ΣΥΜΠΕΡΑΣΜΑΤΑ Σύμφωνα με τα όσα αναλυτικά έχουν περιγραφεί στα προηγούμενα κεφάλαια της παρούσας μελέτης η κατασκευή του τμήματος «Βρύσες Ατσιπόπουλο», του Βόρειου Οδικού

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

qwφιertyuiopasdfghjklzxερυυξnmηq σwωψerβνtyuςiopasdρfghjklzxcvbn mqwertyuiopasdfghjklzxcvbnφγιmλι qπςπζαwωeτrtνyuτioρνμpκaλsdfghςj

qwφιertyuiopasdfghjklzxερυυξnmηq σwωψerβνtyuςiopasdρfghjklzxcvbn mqwertyuiopasdfghjklzxcvbnφγιmλι qπςπζαwωeτrtνyuτioρνμpκaλsdfghςj qwφιertyuiopasdfghjklzxερυυξnmηq σwωψerβνtyuςiopasdρfghjklzxcvbn mqwertyuiopasdfghjklzxcvbnφγιmλι qπςπζαwωeτrtνyuτioρνμpκaλsdfghςj Προσέλκυση Προσωπικού klzxcvλοπbnαmqwertyuiopasdfghjklz «Η Περίπτωση Εταιριών

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

Ευάγγελος Αυδίκος Η αµηχανία µπροστά στον τοίχο: το Πρόγραµµα και οι κοινότητες των Τσιγγάνων Γεια σας. Εγώ είµαι καινούργιος στη Θεσσαλία οι εκατέρωθέν µου καθήµενοι προϋπήρξαν εµού. Να ξεκινήσω, λοιπόν,

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

5 η Ενότητα Κουλτούρα και στρατηγική

5 η Ενότητα Κουλτούρα και στρατηγική Στρατηγική Διοίκηση και Διαχείριση της Απόδοσης 5 η Ενότητα Κουλτούρα και στρατηγική ΓΙΑΝΝΗΣ ΦΑΝΟΥΡΓΙΑΚΗΣ ΕΠΙΣΤΗΜΟΝΙΚΟΣ ΣΥΝΕΡΓΑΤΗΣ ΤΕΙ ΚΡΗΤΗΣ Έως τώρα έχουμε μιλήσει Κεφάλαιο 2: Σημαντική επιρροή του περιβάλλοντος

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

ΝΕΟΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ

ΝΕΟΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ .1 ΝΕΟΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ Φτώχεια & Οικολογική Καταστροφή ΚΕΙΜΕΝΟ Είναι αναµφισβήτητο ότι το παγκόσµιο οικονοµικό σύστηµα έχει δηµιουργήσει πρωτοφανή πλούτο, ο οποίος

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

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

ΕΚΘΕΣΗ ΓΙΑ ΤΗΝ ΠΑΡΑΝΟΜΗ ΙΑΚΙΝΗΣΗ ΑΝΘΡΩΠΩΝ ΕΚΘΕΣΗ ΓΙΑ ΤΗΝ ΠΑΡΑΝΟΜΗ ΙΑΚΙΝΗΣΗ ΑΝΘΡΩΠΩΝ ηµοσιοποιείται από το Γραφείο Παρακολούθησης και Καταπολέµησης της Παράνοµης ιακίνησης Ανθρώπων 12 Ιουνίου 2007 ΕΙΣΑΓΩΓΗ Οι καταθέσεις των θυµάτων που περιλαµβάνονται

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

ΙΕΘΝΗΣ ΣΥΜΒΑΣΗ ΕΡΓΑΣΙΑΣ 183 «για την αναθεώρηση της (αναθεωρηµένης) σύµβασης για την προστασία της µητρότητας,»

ΙΕΘΝΗΣ ΣΥΜΒΑΣΗ ΕΡΓΑΣΙΑΣ 183 «για την αναθεώρηση της (αναθεωρηµένης) σύµβασης για την προστασία της µητρότητας,» ΙΕΘΝΗΣ ΣΥΜΒΑΣΗ ΕΡΓΑΣΙΑΣ 183 «για την αναθεώρηση της (αναθεωρηµένης) σύµβασης για την προστασία της µητρότητας,» Η γενική Συνδιάσκεψη της ιεθνούς Οργάνωσης Εργασίας, που συγκλήθηκε στη Γενεύη από το ιοικητικό

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

ΠΡΟΒΛΗΜΑΤΑ ΤΗΣ ΔΗΜΟΣΙΑΣ ΖΩΗΣ, ΜΙΑ ΨΥΧΑΝΑΛΥΤΙΚΗ ΠΡΟΣΕΓΓΙΣΗ

ΠΡΟΒΛΗΜΑΤΑ ΤΗΣ ΔΗΜΟΣΙΑΣ ΖΩΗΣ, ΜΙΑ ΨΥΧΑΝΑΛΥΤΙΚΗ ΠΡΟΣΕΓΓΙΣΗ ΠΡΟΒΛΗΜΑΤΑ ΤΗΣ ΔΗΜΟΣΙΑΣ ΖΩΗΣ, ΜΙΑ ΨΥΧΑΝΑΛΥΤΙΚΗ ΠΡΟΣΕΓΓΙΣΗ Τα τελευταία χρόνια σημειώθηκε στην χώρα μας αισθητή άνοδος του βιοτικού επιπέδου και της κοινωνικής ευμάρειας. Παράλληλα όμως αυξήθηκαν τα προβλήματα

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

Ερωτηµατολόγιο Επιχειρήσεων µε Γενική Άδεια Παροχής Ταχυδροµικών Υπηρεσιών Ποσοτικά εδοµένα Έτους 2009 (Χρήση από 1/1/2009 έως 31/12/2009)

Ερωτηµατολόγιο Επιχειρήσεων µε Γενική Άδεια Παροχής Ταχυδροµικών Υπηρεσιών Ποσοτικά εδοµένα Έτους 2009 (Χρήση από 1/1/2009 έως 31/12/2009) Ερωτηµατολόγιο Επιχειρήσεων µε Γενική Άδεια Παροχής Ταχυδροµικών Υπηρεσιών Ποσοτικά εδοµένα Έτους 2009 (Χρήση από 1/1/2009 έως 31/12/2009) Αριθµός Μητρώου / Επωνυµία Εταιρείας Έδρα Εταιρείας: Κατηγορία

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

ΚΕΦΑΛΑΙΟ 7 ΣΥΜΠΕΡΑΣΜΑΤΑ ΚΑΙ ΠΡΟΤΑΣΕΙΣ

ΚΕΦΑΛΑΙΟ 7 ΣΥΜΠΕΡΑΣΜΑΤΑ ΚΑΙ ΠΡΟΤΑΣΕΙΣ ΚΕΦΑΛΑΙΟ 7 ΣΥΜΠΕΡΑΣΜΑΤΑ ΚΑΙ ΠΡΟΤΑΣΕΙΣ Με βάση το στόχο της εργασίας που ήταν να εντοπιστούν και να παρουσιαστούν οι ποσοτικές (διαφορές βαθµολογικής απόδοσης) και οι ποιοτικές διαφορές (που αφορούν στην

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

ΤΟΜΟΣ Α ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΚΑΙΟ

ΤΟΜΟΣ Α ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΚΑΙΟ ΤΟΜΟΣ Α ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΚΑΙΟ ΠΗΓΕΣ ΔΙΚΑΙΟΥ Ως πηγές του δικαίου εννοούνται οι ειδικότεροι τρόποι παραγωγής των κανόνων δικαίου. Διακρίνονται σε: Α) Πρωτογενείς ή άμεσες πηγές είναι αυτές που αποτελούν γενεσιουργούς

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

Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρο-μεσαίες Επιχειρήσεις»

Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρο-μεσαίες Επιχειρήσεις» ΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΒΑΣΙΚΟΣ ΠΑΡΑΓΟΝΤΑΣ ΓΙΑ ΤΗΝ ΟΙΚΟΝΟΜΙΚΗ ΚΑΙ ΚΟΙΝΩΝΙΚΗ ΑΝΑΠΤΥΞΗ ΤΟΥ ΑΙΓΑΙΟΠΕΛΑΓΙΤΙΚΟΥ ΧΩΡΟΥ Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρο-μεσαίες

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

ΦΥΣΙΚΟΣ ΑΕΡΙΣΜΟΣ - ΡΟΣΙΣΜΟΣ

ΦΥΣΙΚΟΣ ΑΕΡΙΣΜΟΣ - ΡΟΣΙΣΜΟΣ ΕΦΑΡΜΟΓΕΣ νέες κατασκευές αναδιαµόρφωση καινούριων κτιρίων ανακαίνιση και µετασκευή ιστορικών κτιρίων έργα "εκ του µηδενός" σε ιστορικά πλαίσια 2 Με τη χρήση συστηµάτων δροσισµού ο στόχος είναι να µειωθεί

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

Έλλειψη εσωτερικής ελευθερίας

Έλλειψη εσωτερικής ελευθερίας Έλλειψη εσωτερικής ελευθερίας Ανωριμότητα Προκαταλήψεις- Στερεότυπα Απουσία ανθρωπιστικής παιδείας Ημιμάθεια Έλλειψη έμπρακτης χριστιανικής ζωής ΣΤΟΧΟΙ Να αρχίσουν να αναγνωρίζουν και να εκφράζουν τα δικά

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

Ο ΙΑΜΑΤΙΚΟΣ ΤΟΥΡΙΣΜΟΣ & Η ΑΝΑΠΤΥΞΗ ΤΟΥ ΣΤΗΝ ΠΕΡΙΠΤΩΣΗ ΤΗΣ ΣΑΝΤΟΡΙΝΗΣ

Ο ΙΑΜΑΤΙΚΟΣ ΤΟΥΡΙΣΜΟΣ & Η ΑΝΑΠΤΥΞΗ ΤΟΥ ΣΤΗΝ ΠΕΡΙΠΤΩΣΗ ΤΗΣ ΣΑΝΤΟΡΙΝΗΣ Ο ΙΑΜΑΤΙΚΟΣ ΤΟΥΡΙΣΜΟΣ & Η ΑΝΑΠΤΥΞΗ ΤΟΥ ΣΤΗΝ ΠΕΡΙΠΤΩΣΗ ΤΗΣ ΣΑΝΤΟΡΙΝΗΣ ΑΤΕΙ ΗΡΑΚΛΕΙΟΥ ΣΧΟΛΗ: ΔΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΤΜΗΜΑ: ΤΟΥΡΙΣΤΙΚΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ ΚΑΡΑΜΟΛΕΓΚΟΥ ΜΑΡΙΑ ΑΜ:4968 Hhhhhkjl;h;oiugtpi;uf ΗΡΑΚΛΕΙΟ

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

ΙΑΧΕΙΡΙΣΗ ΒΙΩΣΙΜΩΝ ΕΝΕΡΓΕΙΑΚΑ ΣΥΣΤΗΜΑΤΩΝ & ΚΑΙΝΟΤΟΜΕΣ ΕΦΑΡΜΟΓΕΣ ΣΤΗΝ ΚΡΗΤΗ

ΙΑΧΕΙΡΙΣΗ ΒΙΩΣΙΜΩΝ ΕΝΕΡΓΕΙΑΚΑ ΣΥΣΤΗΜΑΤΩΝ & ΚΑΙΝΟΤΟΜΕΣ ΕΦΑΡΜΟΓΕΣ ΣΤΗΝ ΚΡΗΤΗ ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΑΡΑΓΩΓΗΣ & ΙΟΙΚΗΣΗΣ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Αναστασιάδου Πετρούλα Σοφία ΑΜ: 2003010053 ΙΑΧΕΙΡΙΣΗ ΒΙΩΣΙΜΩΝ ΕΝΕΡΓΕΙΑΚΑ ΣΥΣΤΗΜΑΤΩΝ & ΚΑΙΝΟΤΟΜΕΣ ΕΦΑΡΜΟΓΕΣ ΣΤΗΝ ΚΡΗΤΗ Ε ιβλέ ων:

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

ΠΟΛΙΤΙΚΉ ΠΑΙΔΕΙΑ. Α Γενικού Λυκείου και ΕΠΑ.Λ. Καζάκου Γεωργία, ΠΕ09 Οικονομολόγος

ΠΟΛΙΤΙΚΉ ΠΑΙΔΕΙΑ. Α Γενικού Λυκείου και ΕΠΑ.Λ. Καζάκου Γεωργία, ΠΕ09 Οικονομολόγος 1 ΠΟΛΙΤΙΚΉ ΠΑΙΔΕΙΑ Α Γενικού Λυκείου και ΕΠΑ.Λ. 2 ΚΕΦΑΛΑΙΟ 11 Ο ΤΟ ΧΡΗΜΑ ΚΑΙ ΟΙ ΤΡΑΠΕΖΕΣ 11.1 Από τον αντιπραγματισμό στην οικονομία του χρήματος 11.1 ΑΠΟ ΤΟΝ ΑΝΤΙΠΡΑΓΜΑΤΙΣΜΟ ΣΤΗΝ ΟΙΚΟΝΟΜΙΑ ΤΟΥ ΧΡΗΜΑΤΟΣ

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

Αφήγηση. Βασικά στοιχεία αφηγηµατικού κειµένου:

Αφήγηση. Βασικά στοιχεία αφηγηµατικού κειµένου: Αφήγηση Αφήγηση µιας ιστορίας έχουµε όταν παρουσιάζουµε γεγονότα µε µια ορισµένη σειρά. Τα γεγονότα µπορεί να είναι πραγµατικά ή φανταστικά. Η αφήγηση µπορεί να είναι προφορική ή γραπτή. Όταν η αφήγηση

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

Φλωρεντία, 10 Δεκεμβρίου 1513 Προς τον: ΦΡΑΓΚΙΣΚΟ ΒΕΤΤΟΡΙ, Πρέσβη της Φλωρεντίας στην Αγία Παπική Έδρα, Ρώμη. Εξοχώτατε Πρέσβη,

Φλωρεντία, 10 Δεκεμβρίου 1513 Προς τον: ΦΡΑΓΚΙΣΚΟ ΒΕΤΤΟΡΙ, Πρέσβη της Φλωρεντίας στην Αγία Παπική Έδρα, Ρώμη. Εξοχώτατε Πρέσβη, (Ο Νικολό Μακιαβέλι, μέσα από μία επιστολή του, περιγράφει την ζωή του στο κτήμα του, στο οποίο είχε αποτραβηχτεί, μετά το 1513 που οι Μεδίκοι ανακατέλαβαν την εξουσία.) Φλωρεντία, 10 Δεκεμβρίου 1513 Προς

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

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ ΑΘΗΝΑ 2015 1 Το επιστημονικό περιεχόμενο του παρόντος βιβλίου έχει υποβληθεί σε κριτική ανάγνωση και εγκριθεί με το σύστημα των κριτών. Η κριτική ανάγνωση πραγματοποιήθηκε από

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

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

ΚΑΝΟΝΙΣΜΟΣ ΠΡΟΣΤΑΣΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΚΑΙ ΚΑΘΑΡΙΟΤΗΤΑΣ ΔΗΜΟΥ ΔΙΟΝΥΣΟΥ ΝΟΜΟΥ ΑΤΤΙΚΗΣ ΚΑΝΟΝΙΣΜΟΣ ΠΡΟΣΤΑΣΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΚΑΙ ΚΑΘΑΡΙΟΤΗΤΑΣ ΔΗΜΟΥ ΔΙΟΝΥΣΟΥ ΝΟΜΟΥ ΑΤΤΙΚΗΣ Εφαρμογή του Κανονισμού 1.Η εφαρμογή του παρόντος Κανονισμού είναι υπευθυνότητα του Δήμου Διονύσου και τα επιμέρους τμήματα

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

ΤΟ ΝΕΟ ΑΣΦΑΛΙΣΤΙΚΟ ΤΟΠΙΟ

ΤΟ ΝΕΟ ΑΣΦΑΛΙΣΤΙΚΟ ΤΟΠΙΟ ΤΑ ΟΡΙΑ ΗΛΙΚΙΑΣ ΓΙΑ ΕΡΓΑΖΟΜΕΝΟΥΣ ΣΤΑ ΕΛ-ΤΑ - ΑΝΑΛΥΤΙΚΟΙ ΠΙΝΑΚΕΣ ΓΙΑ ΟΛΕΣ ΤΙΣ ΚΑΤΗΓΟΡΙΕΣ ΑΣΦΑΛΙΣΜΕΝΩΝ (ΤΑΠ-ΟΤΕ) ΓΡΑΜΜΑΤΕΙΑ ΑΣΦΑΛΙΣΤΙΚΟΥ Π.Ο.Σ.Τ. ΤΟ ΝΕΟ ΑΣΦΑΛΙΣΤΙΚΟ ΤΟΠΙΟ Μετά την έκδοση της εγκυκλίου με

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

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

ΓΕΩΓΡΑΦΙΚΗ ΑΝΑΛΥΣΗ ΤΟΥ ΕΛΛΗΝΙΚΟΥ ΓΡΑΜΜΑΤΟΣΗΜΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ Τμήμα Γεωγραφίας ΓΕΩΓΡΑΦΙΚΗ ΑΝΑΛΥΣΗ ΤΟΥ ΕΛΛΗΝΙΚΟΥ ΓΡΑΜΜΑΤΟΣΗΜΟΥ Δημητράκη Αικατερίνη Μυτιλήνη 2012 1 ΠΕΡΙΕΧΟΜΕΝΑ Εισαγωγή 3 Μεθοδολογία..6 Συμπεράσματα 13 Βιβλιογραφία 20 2 ΕΙΣΑΓΩΓΗ

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

ΑΚΡΟΒΑΤΗΣ-ΧΑΪΝΗΔΕΣ Οι Χαΐνηδες Ο Δημήτρης Αποστολάκης

ΑΚΡΟΒΑΤΗΣ-ΧΑΪΝΗΔΕΣ Οι Χαΐνηδες Ο Δημήτρης Αποστολάκης ΑΚΡΟΒΑΤΗΣ-ΧΑΪΝΗΔΕΣ 1. Έχω επιλέξει ένα τραγούδι τον που είναι μια δημιουργία των Χαΐνηδων. Οι Χαΐνηδες είναι ένα συγκρότημα από την Κρήτη που παίζουν έντεχνη και παραδοσιακή μουσική. Οι μουσική

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

στο ΕΣΠΑ του έργου ανέγερσης του 4ου Λυκείου Κέρκυρας.

στο ΕΣΠΑ του έργου ανέγερσης του 4ου Λυκείου Κέρκυρας. Η ένταξη στο ΕΣΠΑ του έργου ανέγερσης του 4ου Λυκείου Κέρκυρας. Δευτέρα, 06 Φεβρουαρίου 2012 Ο Περιφερειάρχης Ιονίων Νήσων, Σπύρος Σπύρου, υπέγραψε την ένταξη στο ΕΣΠΑ του έργου ανέγερσης του 4ου Λυκείου

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

& ../../.. 37, 151 80 :.. :... ... FAX :... & e-mail: :...

&  ../../..   37, 151 80   :.. :...  ...    FAX :... &  e-mail: :... Να διατηρηθεί µέχρι... ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ Βαθµός Ασφαλείας ΥΠΟΥΡΓΕΙΟ ΕΘΝ.ΠΑΙ ΕΙΑΣ & ΘΡΗΣΚΕΥΜΑΤΩΝ ΕΝΙΑΙΟΣ ΙΟΙΚΗΤΙΚΟΣ ΤΟΜΕΑΣ Αθήνα../../.. Π/ΘΜΙΑΣ ΚΑΙ /ΘΜΙΑΣ ΕΚΠΑΙ ΕΥΣΗΣ /ΝΣΗ ΣΠΟΥ ΩΝ /ΘΜΙΑΣ ΕΚΠΑΙ ΕΥΣΗΣ Αριθ.

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

Γραφείο Τύπου Αθήνα, 10 Μαρτίου 2015

Γραφείο Τύπου Αθήνα, 10 Μαρτίου 2015 Γραφείο Τύπου Αθήνα, 10 Μαρτίου 2015 ΣΗΜΕΙΑ ΟΜΙΛΙΑΣ ΓΙΩΡΓΟΥ Α. ΠΑΠΑΝΔΡΕΟΥ ΠΡΟΕΔΡΟΥ ΚΙΝΗΜΑΤΟΣ ΔΗΜΟΚΡΑΤΩΝ ΣΟΣΙΑΛΙΣΤΩΝ ΣΕ ΔΙΑΔΙΚΑΣΙΑ ΔΙΑΒΟΥΛΕΥΣΗΣ ΓΙΑ ΤΗ ΔΙΑΠΡΑΓΜΑΤΕΥΤΙΚΗ ΔΙΑΔΙΚΑΣΙΑ, ΣΤΟ ΙΛΙΟΝ Συντρόφισσες

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

Διδάγματα από την Επανάσταση του 1821. Αξίες για μια Δημιουργική Κύπρο

Διδάγματα από την Επανάσταση του 1821. Αξίες για μια Δημιουργική Κύπρο Διδάγματα από την Επανάσταση του 1821. Αξίες για μια Δημιουργική Κύπρο Σταύρος Α. Ζένιος, Πανεπιστήμιο Κύπρου, Δήμος Αγ. Δομετίου, 25 Μαρτίου 2012. Υλικό για την ομιλία από το βιβλίο Δημιουργική Κύπρος.

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

/νση: ΧΑΡΑΚΟΠΟΥΛΟΣ ΧΡΗΣΤΟΣ Μ. Αλεξάνδρου 49, 66100, ράµα Τηλ&φαξ: +2521021972, κιν.: + 6973585563 www.akademia.gr, e-mail: info@akademia.

/νση: ΧΑΡΑΚΟΠΟΥΛΟΣ ΧΡΗΣΤΟΣ Μ. Αλεξάνδρου 49, 66100, ράµα Τηλ&φαξ: +2521021972, κιν.: + 6973585563 www.akademia.gr, e-mail: info@akademia. ΝΕΟΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ (Οδηγίες) Α. ΠΕΡΙΛΗΨΗ (25 µονάδες) ιαβάζουµε µια φορά προσεκτικά το κείµενο, κατανοούµε το περιεχόµενό του κι επισηµαίνουµε το θεµατικό του κέντρο. ουλεύουµε ανά παράγραφο. Υπογραµµίζουµε

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

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

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

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

στο σχέδιο νόµου «Διαχείριση των µη εξυπηρετούµενων δανείων, µισθολογικές ρυθµίσεις και άλλες επείγουσες στόχων και διαρθρωτικών µεταρρυθµίσεων»

στο σχέδιο νόµου «Διαχείριση των µη εξυπηρετούµενων δανείων, µισθολογικές ρυθµίσεις και άλλες επείγουσες στόχων και διαρθρωτικών µεταρρυθµίσεων» ΑΙΤΙΟΛΟΓΙΚΗ ΕΚΘΕΣΗ στο σχέδιο νόµου «Διαχείριση των µη εξυπηρετούµενων δανείων, µισθολογικές ρυθµίσεις και άλλες επείγουσες διατάξεις εφαρµογής της συµφωνίας δηµοσιονοµικών στόχων και διαρθρωτικών µεταρρυθµίσεων»

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

Ευρώπη: Μια κοινότητα αξιών

Ευρώπη: Μια κοινότητα αξιών Ευρώπη: Μια κοινότητα αξιών Είναι σηµαντικό για κάθε κάτοικο και πολίτη της Ευρωπαϊκής Ένωσης (Ε.Ε.) να γνωρίζει τις αξίες πάνω στις οποίες βασίζεται η Ε.Ε. σήµερα. Η πληροφόρηση αυτή προσφέρει την δυνατότητα

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

Εισηγητής: Στέλλα Μαρινάκη, Αριθμός μητρώου: 229. Επιβλέπουσα: Άννα Μποτωνάκη

Εισηγητής: Στέλλα Μαρινάκη, Αριθμός μητρώου: 229. Επιβλέπουσα: Άννα Μποτωνάκη ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΕΜΠΟΡΙΑΣ & ΔΙΑΦΗΜΙΣΗΣ Ο ΟΙΝΙΚΟΣ ΤΟΥΡΙΣΜΟΣ ΣΤΗΝ ΚΡΗΤΗ. ΥΦΙΣΤΑΜΕΝΗ ΚΑΤΑΣΤΑΣΗ ΚΑΙ ΠΡΟΟΠΤΙΚΕΣ ΑΝΑΠΤΥΞΗΣ. ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εισηγητής:

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

ΚΕΦΑΛΑΙΟ Γ. Η πολιτική πρόταση και το πρόγραμμα της ΑΝΤΑΡΣΥΑ

ΚΕΦΑΛΑΙΟ Γ. Η πολιτική πρόταση και το πρόγραμμα της ΑΝΤΑΡΣΥΑ ΑΝΤΑΡΣΥΑ-3 η Συνδιάσκεψη- ΘΕΣΕΙΣ του ΠΣΟ ΚΕΦΑΛΑΙΟ Γ. Η πολιτική πρόταση και το πρόγραμμα της ΑΝΤΑΡΣΥΑ Γ1. Η αντικαπιταλιστική ανατροπή της επίθεσης και το πρόγραμμά της 35. Με το ανοιχτό πέρασμα του ΣΥΡΙΖΑ

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

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

ΓΥΝΑΙΚΕΙΟΙ ΑΓΡΟΤΟΥΡΙΣΤΙΚΟΙ ΣΥΝΕΤΑΙΡΙΣΜΟΙ ΣΤΗΝ ΕΛΛΑ Α ΕΝΤΥΠΟ ΥΛΙΚΟ 8 ης ΙΑΛΕΞΗΣ ΓΥΝΑΙΚΕΙΟΙ ΑΓΡΟΤΟΥΡΙΣΤΙΚΟΙ ΣΥΝΕΤΑΙΡΙΣΜΟΙ ΣΤΗΝ ΕΛΛΑ Α Τις δύο τελευταίες δεκαετίες στην Ελλάδα έγιναν σηµαντικές προσπάθειες για την ανάπτυξη του αγροτουρισµού, ως µοχλό για την

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

ΓΙΩΡΓΟΣ ΜΠΛΑΝΑΣ ΓΙΑ ΤΟΝ ΑΝΑΡΧΙΣΜΟ

ΓΙΩΡΓΟΣ ΜΠΛΑΝΑΣ ΓΙΑ ΤΟΝ ΑΝΑΡΧΙΣΜΟ ΓΙΩΡΓΟΣ ΜΠΛΑΝΑΣ ΟΚΙΜΙΟ ΓΙΑ ΤΟΝ ΑΝΑΡΧΙΣΜΟ 1 2 Το θέµα µας είναι ο Αναρχισµός. Τι είναι ο Αναρχισµός; Μια διδασκαλία για την πολιτική. Σαν πολιτική διδασκαλία διαθέτει απόψεις για το πολιτικό πρόβληµα, για

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

Η εξέλιξη της επιστηµονικής σκέψης και του πειραµατισµού στην Ελληνιστική

Η εξέλιξη της επιστηµονικής σκέψης και του πειραµατισµού στην Ελληνιστική ΟΙ ΕΠΙΣΤΗΜΟΝΙΚΕΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΚΕΣ ΕΞΕΛΙΞΕΙΣ ΤΗΣ ΕΛΛΗΝΙΣΤΙΚΗΣ ΠΕΡΙΟΔΟΥ Η εξέλιξη της επιστηµονικής σκέψης και του πειραµατισµού στην Ελληνιστική εποχή Παρά τους διαρκείς πολέµους και το κλίµα σχετικής ανασφάλειας,

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

ΘΕΜΑ: «Παραθεριστικοί Οικοδοµικοί Συνεταιρισµοί. Μελέτη Περίπτωσης του «Βραχόκηπου» ήµου Γουβών Ηρακλείου Κρήτης»

ΘΕΜΑ: «Παραθεριστικοί Οικοδοµικοί Συνεταιρισµοί. Μελέτη Περίπτωσης του «Βραχόκηπου» ήµου Γουβών Ηρακλείου Κρήτης» ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΠΜΣ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ - ΣΧΕ ΙΑΣΜΟΣ ΤΟΥ ΧΩΡΟΥ ΚΑΤΕΥΘΥΝΣΗ: ΠΟΛΕΟ ΟΜΙΑ ΧΩΡΟΤΑΞΙΑ ΜΑΘΗΜΑ: ΥΝΑΜΙΚΗ ΤΩΝ ΧΩΡΙΚΩΝ ΟΜΩΝ ΚΑΙ ΤΩΝ ΧΡΗΣΕΩΝ ΓΗΣ ΚΑΙ ΣΥΓΧΡΟΝΕΣ ΠΡΑΚΤΙΚΕΣ ΣΧΕ ΙΑΣΜΟΥ Ι ΑΣΚΟΝΤΕΣ:

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

Ηλεκτρικό φορτίο Ηλεκτρική δύναμη

Ηλεκτρικό φορτίο Ηλεκτρική δύναμη ΗΛΕΚΤΡΙΣΜΟΣ ΗΛΕΚΤΡΟΜΑΓΝΗΤΙΣΜΟΣ ΔΗΜΗΤΡΗΣ ΦΡΑΓΚΑΚΗΣ ΔΑΣΚΑΛΟΣ-ΧΗΜΙΚΟΣ ΜΗΧΑΝΙΚΟΣ ΣΥΝΕΡΓΑΤΗΣ 2ου ΕΚΦΕ Ν. ΗΡΑΚΛΕΙΟΥ 1 ΘΕΩΡΙΑ Ηλεκτρικό φορτίο Ηλεκτρική δύναμη Εάν τρίψουμε ένα πλαστικό στυλό σε ένα μάλλινο ύφασμα

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

Τρίτη, 23 Μαΐου 2006 Γ ΛΥΚΕΙΟΥ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ ΕΚΦΡΑΣΗ - ΕΚΘΕΣΗ ΚΕΙΜΕΝΟ

Τρίτη, 23 Μαΐου 2006 Γ ΛΥΚΕΙΟΥ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ ΕΚΦΡΑΣΗ - ΕΚΘΕΣΗ ΚΕΙΜΕΝΟ Τρίτη, 23 Μαΐου 2006 Γ ΛΥΚΕΙΟΥ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ ΕΚΦΡΑΣΗ - ΕΚΘΕΣΗ ΚΕΙΜΕΝΟ Έχει παρατηρηθεί ότι οι πέρα από τα κοινά µέτρα δηµιουργικοί άνθρωποι στον τοµέα του πνεύµατος έχουν σιδερένιαν αντοχή και µπορούν

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

ΓΙΑ ΝΑ ΠΝΙΞΕΙΣ ΤΟ ΦΙΔΙ ΔΕΝ ΑΡΚΕΙ ΝΑ ΤΣΑΚΙΣΕΙΣ ΤΑ (ΧΡΥΣΑ) ΑΥΓΑ ΤΟΥ

ΓΙΑ ΝΑ ΠΝΙΞΕΙΣ ΤΟ ΦΙΔΙ ΔΕΝ ΑΡΚΕΙ ΝΑ ΤΣΑΚΙΣΕΙΣ ΤΑ (ΧΡΥΣΑ) ΑΥΓΑ ΤΟΥ ΓΙΑ ΝΑ ΠΝΙΞΕΙΣ ΤΟ ΦΙΔΙ ΔΕΝ ΑΡΚΕΙ ΝΑ ΤΣΑΚΙΣΕΙΣ ΤΑ (ΧΡΥΣΑ) ΑΥΓΑ ΤΟΥ Φασισμός και αντιφασισμός στα χρόνια της χολέρας Συνέλευση για την ΚΥκλοφορία των Αγώνων Ένθετη έκδοση μαζί με το 7ο τεύχος της Σφήκας

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

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

7. ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΕΛΛΗΝΙΚΗΣ ΝΟΗΜΑΤΙΚΗΣ ΓΛΩΣΣΑΣ ΤΗΣ ΠΡΩΤΗΣ ΤΑΞΗΣ ΤΟΥ ΔΗΜΟΤΙΚΟΥ ΣΧΟΛΕΙΟΥ 7. ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΕΛΛΗΝΙΚΗΣ ΝΟΗΜΑΤΙΚΗΣ ΓΛΩΣΣΑΣ ΤΗΣ ΠΡΩΤΗΣ ΤΑΞΗΣ ΤΟΥ ΔΗΜΟΤΙΚΟΥ ΣΧΟΛΕΙΟΥ 7.1. Περιεχόμενο 1.Κατανόηση Γλώσσας- Ο μαθητής θα κατανοήσει το θέμα που εκφέρεται στην Ελληνική Νοηματική Γλώσσα.

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

ΤΕΙ ΚΑΛΑΜΑΤΑΣ. ΑΡΓΥΡΗ ΔΗΜΗΤΡΑ Σχολής Διοίκησης και Οικονομίας Τμήμα Χρηματοοικονομικής και Ελεγκτικής Επιστήμης Εισηγητής :Λυγγίτσος Αλέξανδρος

ΤΕΙ ΚΑΛΑΜΑΤΑΣ. ΑΡΓΥΡΗ ΔΗΜΗΤΡΑ Σχολής Διοίκησης και Οικονομίας Τμήμα Χρηματοοικονομικής και Ελεγκτικής Επιστήμης Εισηγητής :Λυγγίτσος Αλέξανδρος ΤΕΙ ΚΑΛΑΜΑΤΑΣ ΑΡΓΥΡΗ ΔΗΜΗΤΡΑ Σχολής Διοίκησης και Οικονομίας Τμήμα Χρηματοοικονομικής και Ελεγκτικής Επιστήμης Εισηγητής :Λυγγίτσος Αλέξανδρος «Φορολογία εισοδήματος φυσικών προσώπων στην Ελλάδα» ΚΑΛΑΜΑΤΑ

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

Η ΑΝΑΔΕΙΞΗ ΤΩΝ ΔΥΝΑΤΟΤΗΤΩΝ ΤΩΝ ΤΑΛΑΝΤΟΥΧΩΝ ΜΑΘΗΤΩΝ. Ανδρέας Πούλος

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

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

ΕΚΤΕΛΕΣΤΙΚΗ ΕΠΙΤΡΟΠΗ ΦΙΛΕΛΛΗΝΩΝ & ΨΥΛΛΑ 2 105 57 ΑΘΗΝΑ Τηλ 213.16.16.900 Fax 2103246165 Email: adedy@adedy.gr, adedy1@adedy.gr

ΕΚΤΕΛΕΣΤΙΚΗ ΕΠΙΤΡΟΠΗ ΦΙΛΕΛΛΗΝΩΝ & ΨΥΛΛΑ 2 105 57 ΑΘΗΝΑ Τηλ 213.16.16.900 Fax 2103246165 Email: adedy@adedy.gr, adedy1@adedy.gr ΕΚΤΕΛΕΣΤΙΚΗ ΕΠΙΤΡΟΠΗ ΦΙΛΕΛΛΗΝΩΝ & ΨΥΛΛΑ 2 105 57 ΑΘΗΝΑ Τηλ 213.16.16.900 Fax 2103246165 Email: adedy@adedy.gr, adedy1@adedy.gr Τοποθέτηση στη Βουλή της Αντιπροέδρου της Α..Ε..Υ., έσποινας Σπανού για το

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

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

ΔΕΛΤΙΟ ΜΕΣΟΓΕΙΑΚΗΣ ΣΥΝΕΡΓΑΣΙΑΣ ΚΑΙ ΣΥΝΥΠΑΡΞΗΣ ΔΕΛΤΙΟ ΜΕΣΟΓΕΙΑΚΗΣ ΣΥΝΕΡΓΑΣΙΑΣ ΚΑΙ ΣΥΝΥΠΑΡΞΗΣ ΓΕΝΙΚΗ ΓΡΑΜΜΑΤΕΙΑ ΕΝΗΜΕΡΩΣΗΣ & ΕΠΙΚΟΙΝΩΝΙΑΣ ΔΙΕΥΘΥΝΣΗ ΑΜΕΣΗΣ ΕΝΗΜΕΡΩΣΗΣ ΤΜΗΜΑ ΥΠΟΔΟΜΩΝ ΕΝΗΜΕΡΩΣΗΣ ΣΥΝΤΑΞΗ: ΜΑΡΓΚΩ ΚΟΥΜΑΝΑΚΟΥ ΑΡΙΘΜΟΣ ΔΕΛΤΙΟΥ: 1 ΑΘΗΝΑ: 24/11/2015

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

Πολιτική Πρόταση για μια Προοδευτική Διέξοδο Από την Κρίση

Πολιτική Πρόταση για μια Προοδευτική Διέξοδο Από την Κρίση Πολιτική Πρόταση για μια Προοδευτική Διέξοδο Από την Κρίση ΑΘΗΝΑ, 09/04/12 ΕΙΣΑΓΩΓΗ Η χώρα διανύει την κρισιμότερη περίοδο μετά τη μεταπολίτευση. Δεν πρέπει να ζήσει σε καθεστώς χρεοκρατίας, ούτε όμως

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

ΒΑΣΙΚΗ ΕΚΠΑΙΔΕΥΣΗ. Οδηγός Οργάνωσης και Λειτουργίας ΕΚΔΟΣΗ 1.0

ΒΑΣΙΚΗ ΕΚΠΑΙΔΕΥΣΗ. Οδηγός Οργάνωσης και Λειτουργίας ΕΚΔΟΣΗ 1.0 ΒΑΣΙΚΗ ΕΚΠΑΙΔΕΥΣΗ Οδηγός Οργάνωσης και Λειτουργίας ΕΚΔΟΣΗ 1.0 ΑΠΡΙΛΙΟΣ 2014 ΒΑΣΙΚΗ ΕΚΠΑΙΔΕΥΣΗ Οδηγός Οργάνωσης και Λειτουργίας Περιεχόμενα Εισαγωγή Σκοπός Απαιτούμενες Γνώσεις Μορφή της Εκπαίδευσης Σχολή

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

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

ΠΑΡΟΥΣΙΑΣΗ ΤΩΝ ΓΕΝΙΚΩΝ ΚΑΙ ΕΙΔΙΚΩΝ ΟΡΩΝ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ «ΑΣΦΑΛΩΣ ΚΑΤΟΙΚΕΙΝ» ΚΟΙΝΟΧΡΗΣΤΟΙ ΧΩΡΟΙ ΠΑΡΟΥΣΙΑΣΗ ΤΩΝ ΓΕΝΙΚΩΝ ΚΑΙ ΕΙΔΙΚΩΝ ΟΡΩΝ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ «ΑΣΦΑΛΩΣ ΚΑΤΟΙΚΕΙΝ» ΚΟΙΝΟΧΡΗΣΤΟΙ ΧΩΡΟΙ ΓΕΝΙΚΟΙ ΟΡΟΙ ΑΡΘΡΟ 1. ΟΡΙΣΜΟΙ Αξία καινούργιου: Είναι το ποσό που απαιτείται για την ανακατασκευή του κτιρίου

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

ΠΟΛΗ ΚΑΙ ΧΩΡΟΣ ΑΠΟ ΤΟΝ 20 Ο ΣΤΟΝ 21 Ο ΑΙΩΝΑ

ΠΟΛΗ ΚΑΙ ΧΩΡΟΣ ΑΠΟ ΤΟΝ 20 Ο ΣΤΟΝ 21 Ο ΑΙΩΝΑ ΣΕΠΤΕΜΒΡΙΟΣ-ΟΚΤΩΒΡΙΟΣ 2005 ΤΕΧΝΙΚΑ ΧΡΟΝΙΚΑ 1 ΠΟΛΗ ΚΑΙ ΧΩΡΟΣ ΑΠΟ ΤΟΝ 20 Ο ΣΤΟΝ 21 Ο ΑΙΩΝΑ Α. ΠΑΡΟΥΣΙΑΣΗ ΕΚΔΟΣΗΣ ΑΠΟ ΤΟΥΣ ΕΠΙΜΕΛΗΤΕΣ ΤΟΥ ΤΟΜΟΥ ΓΕΩΡΓΙΟ ΣΑΡΗΓΙΑΝΝΗ Καθηγητή Ε.Μ.Π., Σχολή Αρχιτεκτόνων ΔΗΜΗΤΡΗ

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

Συνωμοσία Πυρήνων της Φωτιάς - Πυρήνας Αντάρτικου Πόλης

Συνωμοσία Πυρήνων της Φωτιάς - Πυρήνας Αντάρτικου Πόλης Συνωμοσία Πυρήνων της Φωτιάς - Πυρήνας Αντάρτικου Πόλης ΤΟ ΣΧΕΔΙΟ Προς τον αναρχικό χώρο i) Το κάλεσμα Κάθε κάλεσμα δράσης, όπως ο «Μαύρος Δεκέμβρης», είναι μία απόπειρα συντονισμού των δυνάμεων μας. Είναι

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

ΑΙΤΙΟΛΟΓΙΚΗ ΕΚΘΕΣΗ. Άρθρο 4 Κοινοί διαδικαστικοί κανόνες

ΑΙΤΙΟΛΟΓΙΚΗ ΕΚΘΕΣΗ. Άρθρο 4 Κοινοί διαδικαστικοί κανόνες ΑΙΤΙΟΛΟΓΙΚΗ ΕΚΘΕΣΗ στο σχέδιο νόµου «Προσαρµογή στο εθνικό δίκαιο της Εκτελεστικής Οδηγίας 2012/25/ΕΕ της Επιτροπής της 9ης Οκτωβρίου 2012 για τη θέσπιση διαδικασιών ε- νηµέρωσης σχετικά µε την ανταλλαγή,

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

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

ΘΕΜΑΤΑ ΚΑΝΟΝΙΣΜΩΝ ΒΙΒΛΙΟ ΠΕΡΙΠΤΩΣΕΩΝ ΠΕΡΙΕΧΟΜΕΝΑ ΘΕΜΑΤΑ ΚΑΝΟΝΙΣΜΩΝ ΒΙΒΛΙΟ ΠΕΡΙΠΤΩΣΕΩΝ ΠΕΡΙΕΧΟΜΕΝΑ Κεφάλαιο 1: ΕΓΚΑΤΑΣΤΑΣΕΙΣ ΚΑΙ ΕΞΟΠΛΙΣΜΟΣ ΥΨΟΣ ΤΟΥ ΦΙΛΕ 1.1. Ύψος του φιλέ Κεφάλαιο 2: ΣΥΜΜΕΤΕΧΟΝΤΕΣ ΑΠΑΓΟΡΕΥΜΕΝΑ ΑΝΤΙΚΕΙΜΕΝΑ 2.1. Παίκτης µε τεχνητό πόδι

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

Α. ΚΑΤΑΣΤΑΤΙΚΟ ΚΟΙΝΟΠΡΑΞΙΑΣ ΜΕ ΤΗΝ ΕΠΩΝΥΜΙΑ

Α. ΚΑΤΑΣΤΑΤΙΚΟ ΚΟΙΝΟΠΡΑΞΙΑΣ ΜΕ ΤΗΝ ΕΠΩΝΥΜΙΑ Α. ΚΑΤΑΣΤΑΤΙΚΟ ΚΟΙΝΟΠΡΑΞΙΑΣ ΜΕ ΤΗΝ ΕΠΩΝΥΜΙΑ Κεφάλαιο Ευρώ.. (όπως αναφέρθηκε και στην εισαγωγή αναφέρεται μόνο για φορολογικούς λόγους) Στ.. (τόπος υπογραφής), σήμερα. (ημερομηνία υπογραφής) οι εδώ συμβαλλόμενοι:

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

Η ΔΙΔΑΚΤΙΚΗ ΑΞΙΟΠΟΙΗΣΗ ΚΙΝΗΤΩΝ ΕΡΓΑΣΤΗΡΙΩΝ ΦΟΡΗΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. στο μάθημα της Γλώσσας της ΣΤ ΔΗΜΟΤΙΚΟΥ

Η ΔΙΔΑΚΤΙΚΗ ΑΞΙΟΠΟΙΗΣΗ ΚΙΝΗΤΩΝ ΕΡΓΑΣΤΗΡΙΩΝ ΦΟΡΗΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. στο μάθημα της Γλώσσας της ΣΤ ΔΗΜΟΤΙΚΟΥ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΚΈΝΤΡΟ ΕΛΛΗΝΙΚΗΣ ΓΛΩΣΣΑΣ Η ΔΙΔΑΚΤΙΚΗ ΑΞΙΟΠΟΙΗΣΗ ΚΙΝΗΤΩΝ ΕΡΓΑΣΤΗΡΙΩΝ ΦΟΡΗΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ στο μάθημα της Γλώσσας της ΣΤ ΔΗΜΟΤΙΚΟΥ Σεπτέμβριος 2014 1 Περιεχόμενα Εισαγωγή...

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

ΘΕΜΑ: Η κοινωνικοποίηση του παιδιού στα πλαίσια του ολοήµερου σχολείου και της οικογένειας.

ΘΕΜΑ: Η κοινωνικοποίηση του παιδιού στα πλαίσια του ολοήµερου σχολείου και της οικογένειας. ΘΕΜΑΤΙΚΗ ΠΕΡΙΟΧΗ: Ολοήµερο σχολείο ΘΕΜΑ: Η κοινωνικοποίηση του παιδιού στα πλαίσια του ολοήµερου σχολείου και της οικογένειας. ηµαράς Σεραφείµ Α.Μ. 3811 Θεοχάρης Θωµάς Α.Μ. 3818 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΑΙ

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΑΡΙΘΜΟΣ ΜΕΛΕΤΗΣ: 58/ 2014 ΝΟΜΟΣ ΘΕΣΠΡΩΤΙΑΣ ΔΗΜΟΣ ΗΓΟΥΜΕΝΙΤΣΑΣ Δ/ΝΣΗ ΤΕΧΝΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΜΕΛΕΤΗ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΑΡΙΘΜΟΣ ΜΕΛΕΤΗΣ: 58/ 2014 ΝΟΜΟΣ ΘΕΣΠΡΩΤΙΑΣ ΔΗΜΟΣ ΗΓΟΥΜΕΝΙΤΣΑΣ Δ/ΝΣΗ ΤΕΧΝΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΜΕΛΕΤΗ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΑΡΙΘΜΟΣ ΜΕΛΕΤΗΣ: 58/ 2014 ΝΟΜΟΣ ΘΕΣΠΡΩΤΙΑΣ ΔΗΜΟΣ ΗΓΟΥΜΕΝΙΤΣΑΣ Δ/ΝΣΗ ΤΕΧΝΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΜΕΛΕΤΗ ΕΡΓΑΣΙΑ : ΣΥΝΤΗΡΗΣΗ ΗΛΕΚΤΡΟΛΟΓΙΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ Δ.Ε ΗΓΟΥΜΕΝΙΤΣΑΣ ΠΡΟΫΠΟΛΟΓΙΣΜΟΣ ΕΡΓΑΣΙΑΣ

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

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

ΕΙΣΗΓΗΣΗ ΣΤΗ ΣΥΝΕΔΡΙΑΣΗ ΤΗΣ ΠΑΝΕΛΛΑΔΙΚΗΣ ΣΥΝΤΟΝΙΣΤΙΚΗΣ ΕΠΙΤΡΟΠΗΣ ΣΑΒΒΑΤΟ 14 ΦΛΕΒΑΡΗ 2015 ΚΙΝΗΜΑΤΟΓΡΑΦΟΣ ΑΛΚΥΟΝΙΣ ΕΙΣΗΓΗΣΗ ΣΤΗ ΣΥΝΕΔΡΙΑΣΗ ΤΗΣ ΠΑΝΕΛΛΑΔΙΚΗΣ ΣΥΝΤΟΝΙΣΤΙΚΗΣ ΕΠΙΤΡΟΠΗΣ ΣΑΒΒΑΤΟ 14 ΦΛΕΒΑΡΗ 2015 ΚΙΝΗΜΑΤΟΓΡΑΦΟΣ ΑΛΚΥΟΝΙΣ Για πρόγραμμα δράσης για το επόμενο διάστημα μέχρι την πρωτομαγιά Eισαγωγή Συνάδελφοι-ες,

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

ΕΦΑΡΜΟΓΕΣ ΗΜΟΣΙΟΥ ΙΚΑΙΟΥ ΒΙΟΪΑΤΡΙΚΗ & ΣΥΝΤΑΓΜΑ. Υπεύθυνος καθηγητής : ηµητρόπουλος Α. ΙΩΑΝΝΗΣ.Α ΜΕΪ ΑΝΗΣ ΑΜ 1340200200760 ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ...

ΕΦΑΡΜΟΓΕΣ ΗΜΟΣΙΟΥ ΙΚΑΙΟΥ ΒΙΟΪΑΤΡΙΚΗ & ΣΥΝΤΑΓΜΑ. Υπεύθυνος καθηγητής : ηµητρόπουλος Α. ΙΩΑΝΝΗΣ.Α ΜΕΪ ΑΝΗΣ ΑΜ 1340200200760 ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ... ΕΦΑΡΜΟΓΕΣ ΗΜΟΣΙΟΥ ΙΚΑΙΟΥ ΒΙΟΪΑΤΡΙΚΗ & ΣΥΝΤΑΓΜΑ Υπεύθυνος καθηγητής : ηµητρόπουλος Α. ΙΩΑΝΝΗΣ.Α ΜΕΪ ΑΝΗΣ ΑΜ 1340200200760 ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ... 1 ΚΕΦΑΛΑΙΟ Α ΟΙ ΒΙΟΪΑΤΡΙΚΕΣ ΕΞΕΛΙΞΕΙΣ ΥΠΟ ΤΟ ΠΡΙΣΜΑ ΤΟΥ

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

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

Ι ΡΥΜΑ ΚΡΗΤΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Αναδιανοµή εισοδήµατος µε έµφαση στην κοινωνική ασφάλιση στην Ελλάδα και στην Ευρωπαϊκή Ένωση: ιστορία

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

ΔΕΛΤΙΟ ΤΥΠΟΥ. Ακολουθεί ολόκληρη η τοποθέτηση - παρέμβαση του Υπουργού Δ.Μ.&Η.Δ.

ΔΕΛΤΙΟ ΤΥΠΟΥ. Ακολουθεί ολόκληρη η τοποθέτηση - παρέμβαση του Υπουργού Δ.Μ.&Η.Δ. ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΔΙΟΙΚΗΤΙΚΗΣ ΜΕΤΑΡΡΥΘΜΙΣΗΣ & ΗΛΕΚΤΡΟΝΙΚΗΣ ΔΙΑΚΥΒΕΡΝΗΣΗΣ ΓΡΑΦΕΙΟ ΤΥΠΟΥ Αθήνα, 18 Ιουνίου 2013 ΔΕΛΤΙΟ ΤΥΠΟΥ Ο Υπουργός Διοικητικής Μεταρρύθμισης και Ηλεκτρονικής Διακυβέρνησης

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

Βουλευτικές Εκλογές 2011

Βουλευτικές Εκλογές 2011 Πολίτης ή πελάτης; Είναι αλήθεια, ότι το πολιτικό σύστημα αποτυγχάνει σημαντικά να ανταποκριθεί στις σημερινές προκλήσεις. Το ρουσφέτι, η αναξιοκρατία, η συναλλαγή και τα παζάρια, απαξιώνουν την πολιτική.

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΟΙΝΟΤΗΤΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΟΙΝΟΤΗΤΑΣ 2.9 Προγραµµατισµός 2.9.1 Εισαγωγή Οργάνωση σηµαίνει να προγραµµατίζουµε, να ελέγχουµε και να αξιολογούµε την χρήση των Πόρων (ανθρώπινων και υλικών) που διαθέτουµε, για να πετύχουµε

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

Ο Οδικός Χάρτης για την Ελλάδα της δημιουργίας

Ο Οδικός Χάρτης για την Ελλάδα της δημιουργίας Ο Οδικός Χάρτης για την Ελλάδα της δημιουργίας Από την κρίση και τα ελλείμματα στην ανάπτυξη και την κοινωνική δικαιοσύνη ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ Α. Αντιμέτωποι με την κρίση: τα πρώτα βήματα για τη σωτηρία

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

Η παρακμή του εργατικού κινήματος είναι μια διαδικασία που έχει ήδη διαρκέσει. πολλά χρόνια, τώρα ζούμε τα επεισόδια του τέλους της.

Η παρακμή του εργατικού κινήματος είναι μια διαδικασία που έχει ήδη διαρκέσει. πολλά χρόνια, τώρα ζούμε τα επεισόδια του τέλους της. Η παρακμή του εργατικού κινήματος είναι μια διαδικασία που έχει ήδη διαρκέσει πολλά χρόνια, τώρα ζούμε τα επεισόδια του τέλους της. 1 / 7 Αυτή η διαδικασία, φυσικά, δεν ήταν μια ευθεία πορεία από την ακμή

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

ΠΕΡΙΦΕΡΕΙΑΚΗ ΕΦΟΡΕΙΑ ΑΘΗΝΩΝ. Αθήνα, 19 Ιανουαρίου 2015 Α ΝΑΚΟΙΝΩΣΗ 3/15. ΠΡΟΣ : Όλους τους Βαθμοφόρους της Αθήνας ΚΟΙΝΟΠΟΙΗΣΗ :

ΠΕΡΙΦΕΡΕΙΑΚΗ ΕΦΟΡΕΙΑ ΑΘΗΝΩΝ. Αθήνα, 19 Ιανουαρίου 2015 Α ΝΑΚΟΙΝΩΣΗ 3/15. ΠΡΟΣ : Όλους τους Βαθμοφόρους της Αθήνας ΚΟΙΝΟΠΟΙΗΣΗ : ΠΕΡΙΦΕΡΕΙΑΚΗ ΕΦΟΡΕΙΑ ΑΘΗΝΩΝ Αθήνα, 19 Ιανουαρίου 2015 Α ΝΑΚΟΙΝΩΣΗ 3/15 ΠΡΟΣ : Όλους τους Βαθμοφόρους της Αθήνας ΚΟΙΝΟΠΟΙΗΣΗ : ΘΕΜΑ : Συνέδριο Περιφέρειας - Πορίσματα Αγαπητοί βαθμοφόροι Σας γνωστοποιούμε

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

Πρώτη διδακτική πρόταση Χρωματίζοντας ένα σκίτσο

Πρώτη διδακτική πρόταση Χρωματίζοντας ένα σκίτσο Κατανόηση προφορικού λόγου Επίπεδο Α (αρχάριο) Πρώτη διδακτική πρόταση Χρωματίζοντας ένα σκίτσο Ενδεικτική διάρκεια: Ομάδα-στόχος: Διδακτικός στόχος: Στρατηγικές: Υλικό: Ενσωμάτωση δεξιοτήτων: 1-2 διδακτικές

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

Τουριστικές Μονάδες Αγροτουρισμού

Τουριστικές Μονάδες Αγροτουρισμού Τουριστικές Μονάδες Αγροτουρισμού... Επενδύστε στον αγροτουρισμό. Οραματιζόμαστε Σχεδιάζουμε Υλοποιούμε Αγροτουρισμός, το μέλλον του Ελληνικού τουρισμού. Για το σύνολο των οικονομιών της Ε.Ε. ο τουρισμός,

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

ΠΛΑΤΩΝΑΣ. 427 π.χ. - 347 π.χ.

ΠΛΑΤΩΝΑΣ. 427 π.χ. - 347 π.χ. ΠΛΑΤΩΝΑΣ 427 π.χ. - 347 π.χ. Έργα Ίωνας, Ευθύφρων, Απολογία, Κρίτων, Φαίδων, Χαρµίδης, Λάχης, Γοργίας, Κρατύλος, Ευθύδηµος, Μένων, Συµπόσιον, Φαίδρος, Πολιτεία, Θεαίτητος, Παρµενίδης, Σοφιστής, Πολιτικός,

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

Επίσης, η μελέτη αξιολογήθηκε από το Διεθνές Γραφείο Εργασίας και τα ευρήματά της επικυρώθηκαν.

Επίσης, η μελέτη αξιολογήθηκε από το Διεθνές Γραφείο Εργασίας και τα ευρήματά της επικυρώθηκαν. Ημερομηνία: 11 Νοεμβρίου 2013 Ταχύτητα: 60 λ. τ. λ. Ώρα: 4.15 μ.μ. Διάρκεια Υπαγόρευσης/Αποστενογράφησης: 4 / 40 Αισιόδοξα είναι τα οικονομικά αποτελέσματα σχετικά με τη βιωσιμότητα του Ταμείου Κοινωνικών

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

Ξαναδίνουμε ζωή στο δικό μας ΗΡΑΚΛΕΙΟ Δ.Α.Σ.Η. ΓΙΩΡΓΟΣ ΜΑΣΤΟΡΑΚΟΣ. Δημοτική Ανεξάρτητη Συνεργασία Ηρακλείου

Ξαναδίνουμε ζωή στο δικό μας ΗΡΑΚΛΕΙΟ Δ.Α.Σ.Η. ΓΙΩΡΓΟΣ ΜΑΣΤΟΡΑΚΟΣ. Δημοτική Ανεξάρτητη Συνεργασία Ηρακλείου Δ.Α.Σ.Η. Δημοτική Ανεξάρτητη Συνεργασία Ηρακλείου ΓΙΩΡΓΟΣ ΜΑΣΤΟΡΑΚΟΣ Ο βαθμός δημοκρατίας κάθε χώρας συναρτάται ευθέως και άμεσα με τον τρόπο που αντιμετωπίζονται οι κοινωνικά και οικονομικά αδύναμοι Ούλωφ

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

Η ελληνική οικονοµία σε αναζήτηση στρατηγικής: Στόχοι και µέσα για µια ολική επαναφορά

Η ελληνική οικονοµία σε αναζήτηση στρατηγικής: Στόχοι και µέσα για µια ολική επαναφορά Η ελληνική οικονοµία σε αναζήτηση στρατηγικής: Στόχοι και µέσα για µια ολική επαναφορά του Γιάννη Στουρνάρα Καθηγητή Οικονοµικών του Πανεπιστηµίου Αθηνών & Επιστηµονικού ιευθυντή του ΙΟΒΕ Α. Το διεθνές

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Πρώτες βοήθειες και αντιλήψεις του πληθυσμού στους Νομούς Χανίων, Ηρακλείου, Λασιθίου και Μεσσηνίας

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Πρώτες βοήθειες και αντιλήψεις του πληθυσμού στους Νομούς Χανίων, Ηρακλείου, Λασιθίου και Μεσσηνίας Α.Τ.Ε.Ι. ΚΡΗΤΗΣ ΣΧΟΛΗ ΕΠΑΓΓΕΛΜΑΤΩΝ ΥΓΕΙΑΣ ΠΡΟΝΟΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Πρώτες βοήθειες και αντιλήψεις του πληθυσμού στους Νομούς Χανίων, Ηρακλείου, Λασιθίου και Μεσσηνίας ΣΠΟΥΔΑΣΤΕΣ Δημητρακόπουλος

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

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

ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ ΑΝΑΓΚΩΝ ΑΓΟΡΑΣ ΕΡΓΑΣΙΑΣ ΠΑΡΑΔΟΤΕΟ ΕΘΝΙΚΟΥ ΜΗΧΑΝΙΣΜΟΥ ΥΠΟ ΤΗΝ ΕΠΟΠΤΕΙΑ ΤΟΥ ΥΠΟΥΡΓΕΙΟΥ ΕΡΓΑΣΙΑΣ, ΚΟΙΝΩΝΙΚΗΣ ΑΣΦΑΛΙΣΗΣ ΚΑΙ ΚΟΙΝΩΝΙΚΗΣ ΑΛΛΗΛΕΓΓΥΗΣ ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ ΑΝΑΓΚΩΝ ΑΓΟΡΑΣ ΕΡΓΑΣΙΑΣ ΔΕΚΕΜΒΡΙΟΣ 2015 ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ ΑΝΑΓΚΩΝ ΑΓΟΡΑΣ ΕΡΓΑΣΙΑΣ Ολυμπία Καμινιώτη

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

ΤΜΗΜΑ : Βελτίωσης της Ανταγωνιστικότητας Αθήνα : 05/02/2014 Πληροφορίες : Μπούρκουλας Σπύρος Τσαλέρα Ελευθερία

ΤΜΗΜΑ : Βελτίωσης της Ανταγωνιστικότητας Αθήνα : 05/02/2014 Πληροφορίες : Μπούρκουλας Σπύρος Τσαλέρα Ελευθερία ΓΡΑΦΕΙΟ ΔΙΟΙΚΗΣΗΣ ΑΡΜΟΔΙΑ ΔΙΕΥΘΥΝΣΗ : Αγροτικής Ανάπτυξης & Αλιείας ΑΔΑ: ΑΝΑΡΤΗΤΕΑ ΣΤΟ ΔΙΑΔΙΚΤΥΟ ΤΜΗΜΑ : Βελτίωσης της Ανταγωνιστικότητας Αθήνα : 05/02/2014 Πληροφορίες : Μπούρκουλας Σπύρος Τσαλέρα Ελευθερία

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

Ο τουριστικός οδηγός για τις αυστριακές Άλπεις και λίµνες δηµιουργήθηκε στα πλαίσια του πολιτιστικού προγράµµατος «Ο ελληνικός και ευρωπαϊκός

Ο τουριστικός οδηγός για τις αυστριακές Άλπεις και λίµνες δηµιουργήθηκε στα πλαίσια του πολιτιστικού προγράµµατος «Ο ελληνικός και ευρωπαϊκός Ο τουριστικός οδηγός για τις αυστριακές Άλπεις και λίµνες δηµιουργήθηκε στα πλαίσια του πολιτιστικού προγράµµατος «Ο ελληνικός και ευρωπαϊκός πολιτισµός»που υλοποίησαν το σχολ. έτος 2008-09 οι καθηγητές

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

ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ 13 Α' ΜΕΡΟΣ ΑΠΟ ΤΟΝ ΠΟΛΕΜΟ ΤΟΥ 1897 ΣΤΟ ΓΟΥΔΙ

ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ 13 Α' ΜΕΡΟΣ ΑΠΟ ΤΟΝ ΠΟΛΕΜΟ ΤΟΥ 1897 ΣΤΟ ΓΟΥΔΙ ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ 13 Α' ΜΕΡΟΣ ΑΠΟ ΤΟΝ ΠΟΛΕΜΟ ΤΟΥ 1897 ΣΤΟ ΓΟΥΔΙ Του Βασίλη Γούναρη 19 1. Η ΔΙΑΧΕΙΡΙΣΗ ΤΗΣ ΗΤΤΑΣ ΤΟΥ 1897 21 η ηττα και η συνθηκολογηση οι συνεπειες της ηττας εξελιξεις και

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

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

ΕΘΝΙΚΟ ΚΑΠΟ ΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΕΘΝΙΚΟ ΚΑΠΟ ΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΝΟΜΙΚΩΝ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΠΟΛΙΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΝΟΜΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΑΚΟ ΕΤΟΣ: 2007-2008 ΜΑΘΗΜΑ ΣΥΝΘΕΣΗ ΗΜΟΣΙΟΥ ΙΚΑΙΟΥ ΚΑΘΗΓΗΤΗΣ κ. ΑΝ ΡΕΑΣ ΗΜΗΤΡΟΠΟΥΛΟΣ ΘΕΜΑ

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

Σοφία Γιουρούκου, Ψυχολόγος Συνθετική Ψυχοθεραπεύτρια

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

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

ΚΕΦΑΛΑΙΟ 9 ΑΞΙΟΛΟΓΗΣΗ ΕΦΑΡΜΟΓΗΣ «ΕΝΑ ΟΝΕΙΡΙΚΟ ΤΑΞΙΔΙ ΣΤΗΝ ΚΝΩΣΟ» - ΠΕΡΙΓΡΑΦΗ ΔΙΑΔΙΚΑΣΙΑΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ

ΚΕΦΑΛΑΙΟ 9 ΑΞΙΟΛΟΓΗΣΗ ΕΦΑΡΜΟΓΗΣ «ΕΝΑ ΟΝΕΙΡΙΚΟ ΤΑΞΙΔΙ ΣΤΗΝ ΚΝΩΣΟ» - ΠΕΡΙΓΡΑΦΗ ΔΙΑΔΙΚΑΣΙΑΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΚΕΦΑΛΑΙΟ 9 ΑΞΙΟΛΟΓΗΣΗ ΕΦΑΡΜΟΓΗΣ «ΕΝΑ ΟΝΕΙΡΙΚΟ ΤΑΞΙΔΙ ΣΤΗΝ ΚΝΩΣΟ» - ΠΕΡΙΓΡΑΦΗ ΔΙΑΔΙΚΑΣΙΑΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ 9.1 Επιλογή δείγµατος Το λογισµικό «Ένα ονειρικό ταξίδι στην Κνωσό» δοκιµάστηκε και αξιολογήθηκε

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

Α. ΠΕΡΙΓΡΑΦΗ ΜΙΚΡΟΣΚΟΠΙΟΥ Ένα απλό σχολικό µικροσκόπιο αποτελείται από τρία βασικά συστήµατα, το οπτικό, το µηχανικό και το φωτιστικό.

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

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

Κύριε υπουργέ και όσοι υπάλληλοι βαθμολογούνται κάτω από τη βάση θα απολύονται;

Κύριε υπουργέ και όσοι υπάλληλοι βαθμολογούνται κάτω από τη βάση θα απολύονται; Συνέντευξη Υπουργού Διοικητικής Μεταρρύθμισης και Ηλεκτρονικής Διακυβέρνησης, Κυριάκου Μητσοτάκη, στην εφημερίδα «Ελευθερία» και στο δημοσιογράφο Φιλήμων Καραμίτσο Με το ξέσπασμα της κρίσης τα τελευταία

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

35η ιδακτική Ενότητα ΕΝΟΧΙΚΕΣ ΣΧΕΣΕΙΣ ( ΕΝΟΧΙΚΟ ΙΚΑΙΟ)

35η ιδακτική Ενότητα ΕΝΟΧΙΚΕΣ ΣΧΕΣΕΙΣ ( ΕΝΟΧΙΚΟ ΙΚΑΙΟ) 35η ιδακτική Ενότητα ΕΝΟΧΙΚΕ ΧΕΕΙ ( ΕΝΟΧΙΚΟ ΙΚΑΙΟ) Εργασία για το σχολείο Ο καθηγητής θα µοιράσει µισθωτήρια κατοικιών στους µαθητές, θα τους χωρίσει ανά θρανίο σε εκµισθωτές και µισθωτές και αφού τους

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

Ομιλία του Υφυπουργού Ανάπτυξης κου Θανάση Σκορδά στο CapitalVision 2012

Ομιλία του Υφυπουργού Ανάπτυξης κου Θανάση Σκορδά στο CapitalVision 2012 Ομιλία του Υφυπουργού Ανάπτυξης κου Θανάση Σκορδά στο CapitalVision 2012 Κυρίες, κύριοι, Η έννοια της ανάπτυξης είναι τόσο πολυφορεμένη στο σύγχρονο πολιτικό λεξιλόγιο, που αν δεν δώσουμε, ο καθένας από

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

Κατερίνα Παναγοπούλου: Δημιουργώντας κοινωνικό κεφάλαιο την εποχή της κρίσης

Κατερίνα Παναγοπούλου: Δημιουργώντας κοινωνικό κεφάλαιο την εποχή της κρίσης Κατερίνα Παναγοπούλου Πρέσβυς της Ελλάδας στο Συμβούλιο της Ευρώπης, πρόεδρος του σωματείου γυναικών «Καλλιπάτειρα». Πρώτο βραβείο «Γυναίκα και Αθλητισμός» 2012 για την Ευρώπη. Δημιουργώντας κοινωνικό

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

Ελένη Σκούρτου Πανεπιστήµιο Αιγαίου. Από το σπίτι στο σχολείο: Οι οµιλητές και οι γλώσσες τους

Ελένη Σκούρτου Πανεπιστήµιο Αιγαίου. Από το σπίτι στο σχολείο: Οι οµιλητές και οι γλώσσες τους Σκούρτου, Ε. (2002) Από το σπίτι στο σχολείο: Οι Οµιλητές και οι Γλώσσες τους. Υλικά Ηµερίδας: «Γλώσσες στο Σπίτι, Γλώσσες στην Κοινωνία», Ρόδος, Γενική Γραµµατεία Εκπαίδευσης Ενηλίκων, Πανεπιστήµιο Αιγαίου

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