Δομές Δεδομένων. Ενότητα 5: Στοίβες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

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

Download "Δομές Δεδομένων. Ενότητα 5: Στοίβες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ"

Transcript

1 Δομές Δεδομένων Ενότητα 5: Στοίβες Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

2 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

3 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο TEI Δυτικής Μακεδονίας και στην Ανώτατη Εκκλησιαστική Ακαδημία Θεσσαλονίκης» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

4 Σκοποί ενότητας Σε αυτή την ενότητα παρουσιάζονται οι στοίβες. 4

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

6 Εισαγωγή Οι στοίβες είναι μια δομή στην οποία οι βασικές λειτουργίες εισαγωγής και εξαγωγής στοιχείων γίνονται στο ίδιο άκρο τους (στην κορυφή). Η κλασσική απεικόνισή τους είναι με τη βοήθεια μιας στοίβας πιάτων στην οποία προσθέτουμε και αφαιρούμε στοιχεία στην κορυφή της. Η υλοποίηση των στοιβών γίνεται συνήθως με στατικό τρόπο (μονοδιάστατους πίνακες) και δυναμικό τρόπο (συνδεδεμένες λίστες). 6

7 Στατικές στοίβες (1/4) Στο σχήμα απεικονίζεται μια στατική στοίβα που είναι υλοποιημένη με τη βοήθεια ενός μονοδιάστατου πίνακα 10 στοιχείων, τα οποία είναι αριθμημένα από 0 μέχρι 9. Εικόνα 1. Στατική στοίβα. Πηγή: Διδάσκων (2015). 7

8 Στατικές στοίβες (2/4) Ο δείκτης i εξυπηρετεί δύο σκοπούς: 1. Μας δίνει το πλήθος των στοιχείων που είναι αποθηκευμένα στη στοίβα (εδώ έχουμε δύο στοιχεία στις θέσεις 0 και 1). 2. Δείχνει στην επόμενη διαθέσιμη θέση στην οποία μπορεί να προστεθεί ένα στοιχείο (η επόμενη διαθέσιμη θέση για ώθηση ενός στοιχείου στη στοίβα είναι η 2, δηλ. η 3η κατά σειρά θέση). 8

9 Στατικές στοίβες (3/4) Οι βασικές λειτουργίες μιας στοίβας (είτε στατικής είτε δυναμικής) είναι οι ακόλουθες: 1. Αρχικοποίηση (δηλωμένης) στοίβας. 2. Έλεγχος για κενή στοίβα. 3. Ώθηση/εισαγωγή στοιχείου στην κορυφή μιας στοίβας που δεν έχει γεμίσει. 4. Ανάγνωση με αφαίρεση/εξαγωγή του στοιχείου στην κορυφή μιας στοίβας που έχει τουλάχιστον 1 στοιχείο. 5. Ανάγνωση χωρίς αφαίρεση/εξαγωγή του στοιχείου στην κορυφή μιας στοίβας που έχει τουλάχιστον 1 στοιχείο. 6. Αποδέσμευση μιας δυναμικής στοίβας. 9

10 Στατικές στοίβες (4/4) Φυσικά μπορείτε να επινοήσετε και άλλες βοηθητικές λειτουργίες, όπως η επί τόπου αντιστροφή μιας στοίβας, η αντιστροφή της σε 2η, η εμφάνιση των στοιχείων της στην οθόνη (για έλεγχο του προγράμματός σας), ενδεχομένως το μέτρημα των στοιχείων της (αν δε διατηρείτε μετρητή κατά την εισαγωγή και εξαγωγή στοιχείων στοιχείων), κ.α. Ακολουθεί ένα απλό πρόγραμμα που δείχνει μια βασική υλοποίηση στατικής στοίβας. Παρακάτω θα σχολιάσουμε τον κώδικα. 10

11 Παράδειγμα στατικής στοίβας (1/9) /* */ #include <stdio.h> #include <stdlib.h> /* */ #define MAX_STACK_SIZE 10 /* */ typedef int TItem; 11

12 Παράδειγμα στατικής στοίβας (2/9) typedef struct { Titem size_t } TStaticStack; Array[MAX_STACK_SIZE]; Index; void StaticStack_Init(TStaticStack *s) { for ( size_t i = 0; i < MAX_STACK_SIZE; i++ ) s->array[i] = 0; s->index = 0; } // StaticStack_Init 12

13 Παράδειγμα στατικής στοίβας (3/9) bool StaticStack_IsEmpty(TStaticStack s) { return ( s.index == 0 ); } // StaticStack_IsEmpty bool StaticStack_Push(TStaticStack *s, TItem Item) { if ( s->index < MAX_STACK_SIZE ) { s->array[s->index] = Item; s->index++; return ( true ); } else { return ( false ); } // if } // StaticStack_Push 13

14 Παράδειγμα στατικής στοίβας (4/9) bool StaticStack_Pop(TStaticStack *s, TItem *Item) { if ( s->index > 0 ) { s->index--; *Item = s->array[s->index]; return ( true ); } else { return ( false ); } // if } // StaticStack_Pop 14

15 Παράδειγμα στατικής στοίβας (5/9) bool StaticStack_Top(TStaticStack s, TItem *Item) { if ( s.index > 0 ) { *Item = s.array[s.index - 1]; return ( true ); } else { return ( false ); } // if } // StaticStack_Top 15

16 Παράδειγμα στατικής στοίβας (6/9) /* */ void main() { TStaticStack stack; TItem item; printf("\nstaticstack_init\n"); printf(" \n"); StaticStack_Init(&stack); 16

17 Παράδειγμα στατικής στοίβας printf("\nstaticstack_push\n"); printf(" \n"); (7/9) while ( StaticStack_Push(&stack, rand()) ) printf("push: [%d] = %5d\n", stack.index - 1, stack.array[stack.index - 1]); printf("\nstaticstack_pop\n"); printf(" \n"); while ( StaticStack_Pop(&stack, &item) ) } // main printf("pop: [%d] = %5d\n", stack.index, stack.array[stack.index]); /* */ 17

18 Παράδειγμα στατικής στοίβας (8/9) Η βασική δήλωση των τύπων δίνεται στην αρχή του προγράμματος. Πιο συγκεκριμένα: typedef int TItem; typedef struct { Titem Array[MAX_STACK_SIZE]; size_t Index; } TStaticStack; 18

19 Παράδειγμα στατικής στοίβας (9/9) Ο τύπος TItem εδώ είναι ένας απλός ακέραιος. Στην πράξη μπορεί να είναι κάτι πολύ πιο πολύπλοκο. Η χρήση ενός τέτοιου ενδιάμεσου τύπου μάς βοηθάει να μειώσουμε το πλήθος των αλλαγών σε περίπτωση που αποφασίσουμε να χρησιμοποιήσουμε άλλον τύπο δεδομένων στη στοίβα. Ακολουθεί η δήλωση της στατικής στοίβας (TStaticStack), η οποία περιγράφεται με μια δομή που περιέχει έναν πίνακα στοιχείων τύπου TItem με MAX_STACK_SIZE θέσεις (εδώ απλά 10), και ένα δείκτη/μετρητή, όπως περιγράψαμε πιο πάνω. 19

20 Δηλώσεις και υλοποιήσεις πέντε βασικών λειτουργιών για τη στατική στοίβα (1/5) 1. Η συνάρτηση void StaticStack_Init(TStaticStack *s) δέχεται μία παράμετρο δείκτη/διεύθυνση στοίβας και αρχικοποιεί τα στοιχεία του πίνακα στο 0 και το δείκτη, επίσης, στο 0. Έτσι γνωρίζουμε ότι μόλις ξεκινήσουμε έχουμε 0 στοιχεία στη στοίβα (είναι κενή). Αυτή η συνάρτηση μεταβάλλει τη στοίβα. 20

21 Δηλώσεις και υλοποιήσεις πέντε βασικών λειτουργιών για τη στατική στοίβα (2/5) 2. Η συνάρτηση bool StaticStack_IsEmpty(TStaticStack s) δέχεται μία παράμετρο που είναι στοίβα και επιστρέφει TRUE αν η στοίβα είναι κενή (δηλαδή το δείκτης της είναι 0), αλλιώς επιστρέφει FALSE. Αυτή η συνάρτηση δε μεταβάλλει τη στοίβα. 21

22 Δηλώσεις και υλοποιήσεις πέντε βασικών λειτουργιών για τη στατική στοίβα (3/5) 3. Η συνάρτηση bool StaticStack_Push(TStaticStack *s, TItem Item) δέχεται δύο παραμέτρους: Μία στοίβα στην οποία θα γίνει απόπειρα ώθησης/εισαγωγής ενός στοιχείου, και το στοιχείο στη 2η παράμετρο. Αν η ώθηση ήταν επιτυχής, δηλαδή υπήρχε χώρος για την προσθήκη του στοιχείου στη στοίβα, επιστρέφει TRUE, αλλιώς επιστρέφει FALSE. Αυτή η συνάρτηση δυνητικά μεταβάλλει τη στοίβα αν υπάρχει χώρος για την εισαγωγή ενός στοιχείου σε αυτή (τον πίνακα με τα στοιχεία και το δείκτη/μετρητή), αλλιώς την αφήνει άθικτη. Σε κάθε περίπτωση αφήνει το στοιχείο αμετάβλητο. 22

23 Δηλώσεις και υλοποιήσεις πέντε βασικών λειτουργιών για τη στατική στοίβα (4/5) 4. Η συνάρτηση bool StaticStack_Pop(TStaticStack *s, TItem *Item) δέχεται δύο παραμέτρους: Μία στοίβα στην οποία θα γίνει απόπειρα εξαγωγής στοιχείου, και μια διεύθυνση στοιχείου στην οποία θα μπει το στοιχείο που ενδεχομένως εξαχθεί. Αν η εξαγωγή ήταν επιτυχής, δηλαδή υπήρχε στοιχείο στη στοίβα για αφαίρεση, επιστρέφει TRUE, αλλιώς επιστρέφει FALSE. Αυτή η συνάρτηση δυνητικά μεταβάλλει τη στοίβα (τόσο τον πίνακα όσο και το δείκτη/μετρητή) και το στοιχείο αν υπάρχουν στοιχεία σε αυτή, αλλιώς δε μεταβάλλει καμία παράμετρο. 23

24 Δηλώσεις και υλοποιήσεις πέντε βασικών λειτουργιών για τη στατική στοίβα (5/5) 5. Η συνάρτηση bool StaticStack_Top(TStaticStack s, TItem *Item) δέχεται δύο παραμέτρους: Μία στοίβα στην οποία θα γίνει απόπειρα ανάγνωσης του στοιχείου στην κορυφή της, και τη διεύθυνση ενός στοιχείου στην οποία θα αποθηκευτεί η τιμή του στοιχείου στη κορυφή της στοίβας, αν αυτή δεν είναι άδεια. Αν υπάρχει στοιχείο προς ανάγνωση (η στοίβα έχει στοιχεία) τότε επιστρέφει TRUE, αλλιώς επιστρέφει FALSE. Αυτή η συνάρτηση δε μεταβάλλει τη στοίβα, αλλά δυνητικά μεταβάλλει τη 2η παράμετρο. 24

25 Ασκήσεις στις στατικές στοίβες Άσκηση 1. Υλοποιήστε συνάρτηση που αντιστρέφει τη σειρά των στοιχείων μιας στοίβας, αφήνοντας το δείκτη στην κορυφής της αμετάβλητο. Άσκηση 2. Υλοποιήστε συνάρτηση που αντιγράφει τα στοιχεία μιας στοίβας σε μια άλλη, αλλά με αντίστροφη σειρά. 25

26 Δυναμικές στοίβες (1/16) Στο σχήμα απεικονίζεται μια δυναμική στοίβα η οποία είναι υλοποιημένη αλυσιδωτά με μικρά μπλοκ μνήμης που περιέχουν τα δεδομένα (TItem) και δείκτη σε επόμενο μπλοκ. Εικόνα 2. Δυναμική στοίβα. Πηγή: Διδάσκων (2015). 26

27 Δυναμικές στοίβες (2/16) Κάθε μπλοκ δύο στοιχείων (Item, Next) είναι τύπου: typedef struct TDynamicStackTAG { TItem Item; TDynamicStackTAG *Next; } TDynamicStack; 27

28 Δυναμικές στοίβες (3/16) Ο δείκτης Head δείχνει στο πρώτο στοιχείο της στοίβας (στην κορυφή της). Η εισαγωγή ενός στοιχείου (π.χ. του 50) θα γινόταν αμέσως μετά το Head, δηλαδή ανάμεσα στο Head και στη δυάδα που περιέχει το 40. Ομοίως, η αφαίρεση ενός στοιχείου από τη στοίβα θα σημάνει την αφαίρεση του 40 από αυτή, και τη σύνδεση του Head με το

29 Δυναμικές στοίβες (4/16) Είναι σημαντικό να μη χάσουμε ή καταστρέψουμε την αλυσίδα με το λάθος χειρισμό των δεικτών, αφού έτσι θα χάσουμε την πρόσβαση στα στοιχεία μιας στοίβας, αλλά δε θα μπορούμε και να αποδεσμεύσουμε τη μνήμη που έχουμε δεσμεύσει για κάθε ένα στοιχείο της στοίβας. 29

30 Δυναμικές στοίβες (5/16) Η σειρά των ενεργειών για την εισαγωγή ενός στοιχείου στην κορυφή της στοίβας είναι η εξής: 1. Δέσμευση μνήμης για ένα στοιχείο. 2. Αν η δέσμευση πετύχει, τότε: a. Αντιγράφουμε τα δεδομένα που θέλουμε στο Item του καινούργιου στοιχείου (δηλ. το ζεύγος Item, Next). b. Αντιγράφουμε το δείκτη της κεφαλής της στοίβας στο Next του καινούργιου στοιχείου, ώστε να μη χάσουμε την αλυσίδα προς τα υπόλοιπα στοιχεία. c. Ενημερώνουμε το δείκτη της κεφαλής της στοίβας ώστε να δείχνει στη διεύθυνση μνήμης του καινούργιου στοιχείου που μόλις πριν λίγο δεσμεύσαμε. d. Αναφέρουμε την επιτυχή ώθηση ενός στοιχείου στη στοίβα. 30

31 Δυναμικές στοίβες (6/16) 3. Αν η δέσμευση ΔΕΝ πετύχει, τότε: a. Αφήνουμε τη στοίβα αμετάβλητη, δηλαδή δεν επιτελούμε καμία ενέργεια (όπως θα δείτε στην υλοποίηση σε λίγο αυτό είναι εύκολο, αφού δε γράφουμε καθόλου κώδικα). b. Αναφέρουμε την αποτυχία ώθησης ενός στοιχείου στη στοίβα. 31

32 Δυναμικές στοίβες (7/16) Δηλαδή, όπως παρατηρούμε, η επιτυχής ή ανεπιτυχής εισαγωγή ενός στοιχείου στη στοίβα εξαρτάται από την ύπαρξη μνήμης (ή απλούστερα χώρου) για τα νέα δεδομένα. Θα παρατηρήσετε ότι αυτό είναι αντίστοιχο της ύπαρξης χώρου στον πίνακα στην περίπτωση της στατικής στοίβας. 32

33 Δυναμικές στοίβες (8/16) Η σειρά των ενεργειών για την ανάγνωση και εξαγωγή ενός στοιχείου από την κορυφή μιας στοίβας είναι η εξής: 1. Έλεγχος αν η στοίβα είναι κενή (ο δείκτης της κεφαλής της στοίβας είναι NULL). a. Δε μεταβάλλουμε καμία παράμετρο (τη στοίβα και το χώρο αποθήκευσης της τιμής στην κορυφή της στοίβας). b. Αναφέρουμε την αποτυχία ανάγνωσης και εξαγωγής του επάνω στοιχείου από τη στοίβα. 33

34 Δυναμικές στοίβες (9/16) 2. Αν η στοίβα ΔΕΝ είναι κενή, τότε: a. Δηλώνουμε προσωρινό δείκτη στον τύπο της δομής, και αντιγράφουμε σε αυτόν τα περιεχόμενα της κεφαλής της στοίβας. b. Τροποποιούμε την κεφαλή ώστε να δείχνει στο επόμενο στοιχείο της στοίβας από αυτό που έδειχνε. c. Ενημερώνουμε την παράμετρο με τα δεδομένα του στοιχείου που θα αφαιρέσουμε. d. Ελευθερώνουμε το χώρο μνήμης που δεσμεύτηκε για το προς αφαίρεση στοιχείο. e. Αναφέρουμε την επιτυχή εξαγωγή του επάνω στοιχείου της στοίβας. 34

35 Δυναμικές στοίβες (10/16) Θα παρατηρήσετε για μία ακόμη φορά ότι η επιτυχία της συγκεκριμένης λειτουργίας εξαρτάται αποκλειστικά από την ύπαρξη στοιχείων στη στοίβα, δηλαδή όπως ακριβώς και με την περίπτωση της στατικά υλοποιημένης στοίβας. 35

36 Δυναμικές στοίβες (11/16) Η σειρά των ενεργειών για την απλή ανάγνωση του στοιχείου στην κορυφή μιας στοίβας, χωρίς την αφαίρεσή του, είναι η εξής: 1. Έλεγχος αν η στοίβα είναι κενή (ο δείκτης της κεφαλής της στοίβας είναι NULL). a. Δε μεταβάλλουμε καμία παράμετρο. Φυσικά η στοίβα στην παρούσα λειτουργία δε θα άλλαζε, ούτως ή άλλως. b. Αναφέρουμε την αποτυχία ανάγνωσης του επάνω στοιχείου από τη στοίβα. 36

37 Δυναμικές στοίβες (12/16) 2. Αν η στοίβα ΔΕΝ είναι κενή, τότε: a. Αντιγράφουμε τα δεδομένα (Item) του πρώτου/επάνω στοιχείου της στοίβας στην παράμετρο. b. Αναφέρουμε την επιτυχή ανάγνωση του επάνω στοιχείου της στοίβας. 37

38 Δυναμικές στοίβες (13/16) Το μέτρημα των στοιχείων μιας δυναμικής στοίβας γίνεται με τη χρήση ενός προσωρινού δείκτη που, για αρχή, δείχνει στην κορυφή της στοίβας. Με τη βοήθεια αυτού του δείκτη «κατεβαίνουμε» τη στοίβα μέχρι αυτός να γίνει NULL, μετρώντας ταυτόχρονα τα στοιχεία της στοίβας ένα-ένα. 38

39 Δυναμικές στοίβες (14/16) Η χρήση του προσωρινού δείκτη είναι απαραίτητη, αφού αν τροποποιήσουμε το δείκτη της κεφαλής της στοίβας, στο τέλος θα χάσουμε ολόκληρη τη στοίβα. Εξάλλου, η λειτουργία του μετρήματος των στοιχείων μιας στοίβας δε θα πρέπει να τη μεταβάλλει καθόλου, αλλά απλά να μετρήσει τα στοιχεία της. 39

40 Δυναμικές στοίβες (15/16) Η αποδέσμευση των στοιχείων μιας στοίβας είναι απαραίτητη ώστε να επιστρέψουμε πίσω στο ΛΣ τη μνήμη που έχουμε δεσμεύσει. Ο τρόπος υλοποίησης είναι παρόμοιος με το μέτρημα, δηλαδή με τη χρήση ενός προσωρινού δείκτη ο οποίος προοδευτικά δείχνει ολοένα και πιο κάτω στη στοίβα, αποδεσμεύοντας τη μνήμη καθ' οδόν. 40

41 Δυναμικές στοίβες (16/16) Τα πλεονεκτήματα και μειονεκτήματα, όσον αφορά τη στατική ή δυναμική υλοποίηση μιας στοίβας, συνοψίζονται ως εξής: Η στατική στοίβα είναι απλούστερη στην υλοποίηση. Η στατική στοίβα δέχεται σταθερό μέγιστο αριθμό στοιχείων, είτε χρησιμοποιείται ολόκληρη η μνήμη, είτε όχι. Η δυναμική στοίβα χρησιμοποιεί μνήμη ανάλογη των στοιχείων που έχει αποθηκευμένα. Ο χώρος που απαιτείται για την αποθήκευση των δεδομένων σε κάθε κόμβο μιας δυναμικής στοίβας είναι μεγαλύτερος σε σχέση με τη στατική, αφού σε κάθε κόμβο αποθηκεύονται όχι μόνο τα δεδομένα που θέλουμε, αλλά και ένας δείκτης προς το επόμενο στοιχείο. Ακολουθεί μία ενδεικτική υλοποίηση δυναμικής στοίβας. 41

42 Παράδειγμα δυναμικής στοίβας (1/18) /* */ #include <stdio.h> #include <stdlib.h> /* */ typedef int TItem; typedef struct TDynamicStackTAG { TItem TDynamicStackTAG *Next; } TDynamicStack; Item; 42

43 Παράδειγμα δυναμικής στοίβας (2/18) void DynamicStack_Init(TDynamicStack **s) { *s = NULL; } // DynamicStack_Init bool DynamicStack_IsEmpty(TDynamicStack *s) { return ( s == NULL ); } // DynamicStack_IsEmpty 43

44 Παράδειγμα δυναμικής στοίβας (3/18) bool DynamicStack_Push(TDynamicStack **s, TItem Item) { TDynamicStack *NewItem; NewItem = (TDynamicStack *) malloc(sizeof(tdynamicstack)); if ( NewItem!= NULL ) { NewItem->Item = Item; NewItem->Next = *s; *s = NewItem; return ( true ); } else { return ( false ); } // if } // DynamicStack_Push 44

45 Παράδειγμα δυναμικής στοίβας (4/18) bool DynamicStack_Pop(TDynamicStack **s, TItem *Item) { if ( *s == NULL ) return ( false ); TDynamicStack *s = (*s)->next; *Item = Tmp->Item; free(tmp); return ( true ); } // DynamicStack_Pop *Tmp = *s; 45

46 Παράδειγμα δυναμικής στοίβας (5/18) bool DynamicStack_Top(TDynamicStack *s, TItem *Item) { if ( s == NULL ) return ( false ); *Item = s->item; return ( true ); } // DynamicStack_Top 46

47 Παράδειγμα δυναμικής στοίβας (6/18) size_t DynamicStack_Count(TDynamicStack *s) { TDynamicStack *Tmp = s; size_t Counter = 0; while ( Tmp!= NULL ) { Tmp = Tmp->Next; Counter++; } // while return ( Counter ); } // DynamicStack_Count 47

48 Παράδειγμα δυναμικής στοίβας (7/18) void DynamicStack_Deallocate(TDynamicStack **s) { TDynamicStack *Tmp = *s; while ( *s!= NULL ) { *s = (*s)->next; free(tmp); Tmp = *s; } // while } // DynamicStack_Deallocate 48

49 Παράδειγμα δυναμικής στοίβας (8/18) /* */ void main() { TDynamicStack *Head; TItem Item; //printf("head = 0x%08X\n", Head); DynamicStack_Init(&Head); printf("head = 0x%08X\n", Head); // Uninitialised value of head. // Initialise head. // Initialised value of head 49

50 Παράδειγμα δυναμικής στοίβας (9/18) if ( DynamicStack_IsEmpty(Head) ) printf("stack is Empty\n"); else printf("stack is NOT Empty\n"); printf("\n"); printf("push 10 onto stack.\n"); printf(" \n"); printf("items on stack: %2d\n", DynamicStack_Count(Head)); DynamicStack_Push(&Head, 10); printf("head = 0x%08X\n", Head); printf("items on stack: %2u\n", DynamicStack_Count(Head)); 50

51 Παράδειγμα δυναμικής στοίβας (10/18) printf("\n"); printf("pop 10 from stack.\n"); printf(" \n"); DynamicStack_Pop(&Head, &Item); printf("head = 0x%08X\n", Head); printf("item = %d\n", Item); printf("items on stack: %2u\n", DynamicStack_Count(Head)); 51

52 Παράδειγμα δυναμικής στοίβας (11/18) printf("\n"); printf("push 20 onto stack.\n"); printf(" \n"); DynamicStack_Push(&Head, 20); printf("head = 0x%08X\n", Head); printf("items on stack: %2u\n", DynamicStack_Count(Head)); 52

53 Παράδειγμα δυναμικής στοίβας (12/18) printf("\n"); printf("read top of stack.\n"); printf(" \n"); DynamicStack_Top(Head, &Item); printf("head = 0x%08X\n", Head); printf("item = %d\n", Item); 53

54 Παράδειγμα δυναμικής στοίβας (13/18) printf("\n"); printf("push 30 onto stack.\n"); printf(" \n"); DynamicStack_Push(&Head, 30); printf("head = 0x%08X\n", Head); printf("items on stack: %2u\n", DynamicStack_Count(Head)); 54

55 Παράδειγμα δυναμικής στοίβας (14/18) printf("\n"); printf("read top of stack.\n"); printf(" \n"); DynamicStack_Top(Head, &Item); printf("head = 0x%08X\n", Head); printf("item = %d\n", Item); 55

56 Παράδειγμα δυναμικής στοίβας (15/18) printf("\n"); printf("deallocate stack.\n"); printf(" \n"); DynamicStack_Deallocate(&Head); printf("items on stack: %2u\n", DynamicStack_Count(Head)); printf("head = 0x%08X\n", Head); } // main 56

57 Παράδειγμα δυναμικής στοίβας (16/18) Η συγκεκριμένη υλοποίηση διαφέρει από τη στατική υλοποίηση, διότι τώρα χρησιμοποιούμε ένα μόνο δείκτη (αυτόν της κορυφής) για την περιγραφή της στοίβας. Έτσι, στις συναρτήσεις που υλοποιούν τις βασικές λειτουργίες χρησιμοποιούμε τη διεύθυνση του δείκτη (**) όταν ενδέχεται να μεταβάλλουμε μια στοίβα (read/write), και το δείκτη (*) όταν απλά χρησιμοποιούμε τη στοίβα μόνο για ανάγνωση (read only). 57

58 Παράδειγμα δυναμικής στοίβας (17/18) Ο τρόπος υλοποίησης των επιμέρους λειτουργιών είναι παρόμοιος με τη στατική στοίβα, αλλά αυτήν τη φορά δεσμεύουμε και αποδεσμεύουμε μνήμη με τις συναρτήσεις malloc και free, αντίστοιχα. Οι συνθήκες που καθορίζουν την επιτυχία ή αποτυχία μιας λειτουργίας παραμένουν οι ίδιες: Ώθηση ενός στοιχείου: επαρκής μνήμη. Ανάγνωση και αφαίρεση ενός στοιχείου: η στοίβα δεν είναι κενή. Ανάγνωση του στοιχείου στην κορυφή μιας στοίβας: η στοίβα δεν είναι κενή. 58

59 Παράδειγμα δυναμικής στοίβας (18/18) Μια εναλλακτική υλοποίηση θα ήταν μια αντίστοιχη της στατικής στοίβας, όπου θα έχουμε τη δήλωση της δομής της δυναμικής στοίβας, η οποία θα περιέχει το δείκτη της κεφαλής, καθώς, ίσως, και το μετρητή των στοιχείων της (αυτό θα πρέπει να κάνετε ως άσκηση παρακάτω). 59

60 Ερωτήσεις (1/2) Στο κυρίως πρόγραμμα παραπάνω η πρώτη εντολή είναι σχολιασμένη (αυτή που τυπώνει την τιμή του Head πριν την αρχικοποίηση). Δοκιμάστε να την επαναφέρετε και εκτελέστε το πρόγραμμα. Στην προειδοποίηση του Visual Studio επιλέξτε «Παράβλεψη», ώστε να εκτελεστεί το πρόγραμμα χωρίς να προκληθεί εξαίρεση. 60

61 Ερωτήσεις (2/2) Τι τιμή έχει ο δείκτης Head πριν την αρχικοποίηση; Επαναλάβετε το πείραμα 2-3 φορές ακόμη. Τί τιμή συνεχίζει να έχει ο δείκτης; Τί σημαίνει, ή αν προτιμάτε για ποιο λόγο είναι συγκεκριμένη, η τιμή που βλέπετε; 61

62 Ασκήσεις στις δυναμικές στοίβες

63 Άσκηση 1 Συμπληρώστε τον κώδικα της δυναμικής στοίβας, προσθέτοντας μια συνάρτηση που να επιστρέφει το πλήθος των φορών που εμφανίζεται ένα στοιχείο. Η στοίβα θα πρέπει, σε κάθε περίπτωση, να παραμένει αμετάβλητη. 63

64 Άσκηση 2 Υλοποιήστε συνάρτηση που να αφαιρεί ένα επιλεγμένο στοιχείο από τη στοίβα, όσες φορές κι αν αυτό υπάρχει. Κατά την υλοποίηση της συνάρτησης επιτρέπεται να διαβάζετε και να γράφετε μόνο στην αρχή της στοίβας (χρησιμοποιώντας τις Push και Pop). Δηλαδή, μην προχωράτε στη στοίβα προς τα κάτω αφαιρώντας τα ανεπιθύμητα στοιχεία. Η σειρά των στοιχείων της στοίβας πρέπει να παραμείνει η ίδια (χωρίς φυσικά τα διαγραφέντα στοιχεία), και η συνάρτηση να επιστρέφει το πλήθος των στοιχείων που αφαιρέθηκαν. 64

65 Άσκηση 3 Τροποποιήστε κατάλληλα των κώδικα των δυναμικών στοιβών ώστε δουλεύει με δομή της επιλογής σας (που πρέπει να έχει τουλάχιστον δύο πεδία). Δείξτε στο κυρίως πρόγραμμά σας την καλή λειτουργία των τροποποιήσεών σας. 65

66 Άσκηση 4 Τροποποιήστε κατάλληλα τον κώδικα που σας δόθηκε ώστε τώρα να κατασκευάσετε στοίβα πινάκων όπου ο καθένας έχει πέντε (5) στοιχεία μέσα του. 66

67 Άσκηση 5 (1/2) Υποθέστε ότι οι μόνοι τύποι παρενθέσεων που μπορείτε να έχετε σε έναν υπολογιστή χειρός που κατασκευάζετε είναι οι (), [], και {}. Οι πιο εξωτερικές είναι τα άγκιστρα {}, μετά οι αγκύλες [], και οι πιο εσωτερικές οι απλές παρενθέσεις (). Με τη βοήθεια στοιβών (που πρέπει να τροποποιήσετε κατάλληλα), υλοποιήστε συνάρτηση που δέχεται μια συμβολοσειρά που περιέχει μόνο τους έξι χαρακτήρες ()[]{}, αλλά πολλές φορές (π.χ. 20). 67

68 Άσκηση 5 (2/2) Αυτή η συνάρτηση θα πρέπει να ελέγχει την ορθότητα της σειράς των παρενθέσεων, καθώς και να υποδεικνύει το πρώτο λάθος που συναντάει κατά το συντακτικό έλεγχο (επιστρέφοντας τον αριθμό του χαρακτήρα που έχει πρόβλημα αρνητικό, όπως το -1, αν όλα πήγαν καλά). 68

69 Άσκηση 6 Τροποποιήστε ή και δημιουργήστε κατάλληλους τύπους δομών ώστε η υλοποίηση της δυναμικής στοίβας να μοιάζει με αυτή της στατικής. Έτσι θα αποφύγετε τους διπλούς δείκτες. Τροποποιήστε κατάλληλα τις συναρτήσεις που υλοποιούν τις διάφορες λειτουργίες, έτσι ώστε να μοιάζουν στη δήλωση με αυτές της στατικής στοίβας. Φροντίστε τώρα να ενημερώνετε σωστά το μετρητή των στοιχείων της στοίβας όταν προσθέτετε ή αφαιρείτε στοιχεία. 69

70 Άσκηση 7 (1/2) Υλοποιήστε αλληλεπιδραστικό πρόγραμμα (σε γραμμή εντολών) που δέχεται από το πληκτρολόγιο μια σειρά ανοιχτών ή κλειστών παρενθέσεων, ( ή ). Όταν το πρόγραμμα δέχεται ανοιχτή παρένθεση, τότε να τη βάζει σε στοίβα χαρακτήρων. Όταν δέχεται κλειστή παρένθεση, τότε να αφαιρεί μια ανοιχτή από τη στοίβα. 70

71 Άσκηση 7 (2/2) Το πρόγραμμα θα τερματίζει όταν δεχτεί οποιονδήποτε άλλο χαρακτήρα πέραν των ( και ). Στο κυρίως πρόγραμμά σας ελέγξτε την ισορροπία ή μη της εμφάνισης παρενθέσεων (δηλαδή όσες ανοίγουν πρέπει και να κλείνουν). 71

72 Άσκηση 8 (1/2) Προσπαθήστε να βρείτε πόσα στοιχεία μπορείτε να προσθέσετε σε μια δυναμική στοίβα μέχρι να αποτύχει η δέσμευση μνήμης. Κατόπιν τυπώστε τον αριθμό που βρήκατε. Τέλος αποδεσμεύστε τη μνήμη της στοίβας. Κατά την εκτέλεση του προγράμματός να λάβετε υπόψη ότι η εκτέλεσή του μπορεί να αργήσει αρκετά. 72

73 Άσκηση 8 (2/2) Αν πολλαπλασιάσετε το αριθμό που βρήκατε με το μέγεθος της δομής, σε τι συμπέρασμα καταλήγετε όσον αφορά την ποσότητα μνήμης που δεσμεύτηκε; Πώς συγκρίνεται το νούμερο αυτό με την ποσότητα μνήμης που θα έπρεπε να μπορείτε να δεσμεύσετε; Γιατί ενδέχεται να υπάρχει διαφορά; 73

74 Βιβλιογραφία (1/8) Aho AV, Hopcroft JE, and Ullman JD. (1974) The design and analysis of computer algorithms. USA, Addison-Wesley Publishing Company. 470 pp. ISBN ( 38.33, 46.76). Aho AV, Hopcroft JE, and Ullman JD. (1983) Data structures and algorithms. USA, Addison-Wesley Publishing Company. 427 pp. ISBN ( 43.65, 53.25). Bik AJC. (2004) The software vectorization handbook: applying multimedia extensions for maximum performance. USA, Intel Press. 236 pp. ISBN ( 32.31, 46.63). 74

75 Βιβλιογραφία (2/8) Carrano FM and Henry T. (2013) Data abstraction and problem solving with C++: walls and mirrors. 6th ed. UK, Pearson Education Limited. 833 pp. ISBN , ISBN Cormen TH, Leiserson CE, Rivest RL, and Stein C. (2012) Εισαγωγή στους αλγορίθμους. USA/Ελλάδα, MIT Press/Ίδρυμα Τεχνολογίας & Έρευνας - Πανεπιστημιακές Εκδόσεις Κρήτης pp. ISBN Dasgupta S, Papadimitriou C and Vazirani U. (2009) Αλγόριθμοι. Ελλάδα, Εκδόσεις Κλειδάριθμος. 416 σελ. ISBN

76 Βιβλιογραφία (3/8) Gerber R, Bik AJC, Smith KB and Tian X. (2006) The software optimization cookbook: high-performance recipes for IA-32 platforms. 2nd ed. USA, Intel Press. 404 pp. ISBN ( 35.07, 50.61). Helman P and Veroff R. (1988) Walls and mirrors: intermediate problem solving and data structures. Modula 2 ed. USA, The Benjamin/Cummings Publishing Company, Inc. 625 pp. ( 23.95). Kleinberg J and Tardos W. (2008) Σχεδιασμός αλγορίθμων. Ελλάδα, Εκδόσεις Κλειδάριθμος. 944 σελ. ISBN

77 Βιβλιογραφία (4/8) Knuth DE. (2009) Η τέχνη του προγραμματισμού: θεμελιώδεις αλγόριθμοι, Τόμος Α. 3η Έκδοση. Ελλάδα, Εκδόσεις Τζιόλα. 759 σελ. ISBN Knuth DE. (2010) Η τέχνη του προγραμματισμού: ημιαριθμητικοί αλγόριθμοι, Τόμος Β. 3η Έκδοση. Ελλάδα, Εκδόσεις Τζιόλα. 912 σελ. ISBN Knuth DE. (2010) Η τέχνη του προγραμματισμού: ταξινόμηση και αναζήτηση, Τόμος Γ. 2η Έκδοση. Ελλάδα, Εκδόσεις Τζιόλα. 926 σελ. ISBN

78 Βιβλιογραφία (5/8) Kruse RL and Ryba AJ. (1999) Data structures and program design in C++. USA, Prentice Hall. 717 pp. ISBN ( 40.74). Lafore R. (2005) Δομές δεδομένων και αλγόριθμοι στη Java. Ελλάδα, Εκδόσεις Μ. Γκιούρδα. 798 σελ. ISBN Levitin A. (2008) Εισαγωγή στην ανάλυση και σχεδίαση αλγορίθμων. 2η Έκδοση. Ελλάδα, Εκδόσεις Τζιόλα. 700 σελ. ISBN

79 Βιβλιογραφία (6/8) McConnell S. (1993) Code complete: a practical handbook of software construction. USA, Microsoft Press. 857 pp. ( 25.99). Mehlhorn K and Sanders P. (2008) Algorithms and data structures: the basic toolbox. Germany, Springer-Verlag Berlin Heidelberg. 300 pp. ISBN ( 28.11, 34.29). Prichard JJ and Carrano FM. (2011) Data abstraction and problem solving with Java: walls and mirrors. 3rd ed. UK, Pearson Education Limited. 959 pp. ISBN ISBN

80 Βιβλιογραφία (7/8) Sahni S. (2004) Δομές Δεδομένων, Αλγόριθμοι, και Εφαρμογές στη C++. Ελλάδα/ΗΠΑ, Εκδόσεις Τζιόλα/McGraw-Hill. 830 σελ. ISBN Sedgewick R and Flajolet P. (2013) An introduction to the analysis of algorithms. 2nd ed. USA, Pearson Education, Inc. 572 pp. ISBN Sedgewick R and Wayne K. (2011) Algorithms. 4th ed. USA, Pearson Education, Inc. 952 pp. ISBN Κοίλιας Χ. (2004) Δομές δεδομένων & οργανώσεις αρχείων. Ελλάδα, Εκδόσεις Νέων Τεχνολογιών. 447 σελ. ISBN

81 Βιβλιογραφία (8/8) Μποζάνης ΠΔ. (2006) Δομές Δεδομένων. Ελλάδα, Εκδόσεις Τζιόλα. 552 σελ. ISBN Μποζάνης ΠΔ. (2009) Προβλήματα & ασκήσεις στους αλγορίθμους. Ελλάδα, Εκδόσεις Τζιόλα. 492 σελ. ISBN Μποζάνης ΠΔ. (2013) Αλγόριθμοι. Ελλάδα, Εκδόσεις Τζιόλα. 549 σελ. ISBN Μυσιρλής Ν. (2002) Δομές δεδομένων με C. Ελλάδα, αυτοέκδοση. 347 σελ. ISBN Παπαρίζος Κ. (2010) Ανάλυση και σχεδίαση αλγορίθμων. Ελλάδα, Εκδόσεις Τζιόλα. 606 σελ. ISBN

82 Τέλος Ενότητας

83 Σημείωμα Αναφοράς Copyright ΤΕΙ Δυτικής Μακεδονίας, Δρ. Γεώργιος Σίσιας. «Δομές Δεδομένων». Έκδοση: 1.0. Κοζάνη Διαθέσιμο από τη δικτυακή διεύθυνση: URL. 83

84 Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εμπορική Χρήση Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο. που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο. που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος (π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο. Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί. 84

85 Διατήρηση Σημειωμάτων Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού θα πρέπει να συμπεριλαμβάνει: το Σημείωμα Αναφοράς. το Σημείωμα Αδειοδότησης. τη δήλωση Διατήρησης Σημειωμάτων. το Σημείωμα Χρήσης Έργων Τρίτων (εφόσον υπάρχει). μαζί με τους συνοδευόμενους υπερσυνδέσμους. 85

Δομές Δεδομένων. Ενότητα 2: Περισσότερα για τους δείκτες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Δομές Δεδομένων. Ενότητα 2: Περισσότερα για τους δείκτες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Δομές Δεδομένων Ενότητα 2: Περισσότερα για τους δείκτες Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Δομές Δεδομένων. Ενότητα 3: Διαχείριση μνήμης. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Δομές Δεδομένων. Ενότητα 3: Διαχείριση μνήμης. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Δομές Δεδομένων Ενότητα 3: Διαχείριση μνήμης Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Δομές Δεδομένων. Ενότητα 6: Ουρές. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Δομές Δεδομένων. Ενότητα 6: Ουρές. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Δομές Δεδομένων Ενότητα 6: Ουρές Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

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

Δομές Δεδομένων. Ενότητα 4: Πίνακες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Δομές Δεδομένων. Ενότητα 4: Πίνακες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Δομές Δεδομένων Ενότητα 4: Πίνακες Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

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

Δομές Δεδομένων. Ενότητα 1: Βασικοί τύποι δεδομένων. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Δομές Δεδομένων. Ενότητα 1: Βασικοί τύποι δεδομένων. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Δομές Δεδομένων Ενότητα 1: Βασικοί τύποι δεδομένων Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

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

Δομές Δεδομένων. Ενότητα 8: Διπλά συνδεδεμένες λίστες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Δομές Δεδομένων Ενότητα 8: Διπλά συνδεδεμένες λίστες Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Προγραμματισμός H/Y Ενότητα 4: Δείκτες. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 4: Δείκτες. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 4: Δείκτες Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Δομές Δεδομένων Ενότητα 1

Δομές Δεδομένων Ενότητα 1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 1: Εισαγωγή Απόστολος Παπαδόπουλος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 7: ΑΣΚΗΣΕΙΣ ΜΕΓΕΘΟΥΣ ΕΠΙΧΕΙΡΗΣΗΣ Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2) Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2) Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 3: Στρατηγικός Προγραμματισμός Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Εισαγωγή στον δομημένο προγραμματισμό

Εισαγωγή στον δομημένο προγραμματισμό Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στον δομημένο προγραμματισμό Ενότητα 12 η : Δυναμική Ανάθεση Θέσης Αν. καθηγητής Στεργίου Κώστας e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής

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

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

Εισαγωγή στους Αλγορίθμους Εισαγωγή στους Αλγορίθμους Ενότητα 5 η Άσκηση Συγχώνευση & απαρίθμηση Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 11: Θεωρία Οργάνωσης & Διοίκησης Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 9: ΑΣΚΗΣΕΙΣ ΕΠΙΛΟΓΗΣ ΤΟΠΟΥ ΕΓΚΑΤΑΣΤΑΣΗΣ Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους. Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους. Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας Ενότητα 8: Αξιολόγηση και επιλογή αγορών στόχων από ελληνική εταιρία στον κλάδο παραγωγής και εμπορίας έτοιμου γυναικείου Καθ. Αλεξανδρίδης Αναστάσιος Δρ. Αντωνιάδης

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 2: Οργάνωση και Διοίκηση Εισαγωγή Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 4: Στρατηγικοί προσανατολισμοί Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

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

Εισαγωγή στους Αλγορίθμους Εισαγωγή στους Αλγορίθμους Ενότητα 5 η Άσκηση - Συγχώνευση Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν

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

Προγραμματισμός H/Y Ενότητα 5: Συναρτήσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 5: Συναρτήσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 5: Συναρτήσεις Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Προγραμματισμός Η/Υ Βασικές Προγραμματιστικές Δομές ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Δομή Ελέγχου Ροής (IF) Η εντολή IF χρησιμοποιείται όταν

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

Αντικειμενοστραφής Προγραμματισμός

Αντικειμενοστραφής Προγραμματισμός 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αντικειμενοστραφής Προγραμματισμός Ενότητα 12 : Επαναληπτικές Ασκήσεις (2/3) Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών

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

Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 6: ΜΕΓΕΘΟΣ ΕΠΙΧΕΙΡΗΣΗΣ Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

Εισαγωγή στους Αλγορίθμους Εισαγωγή στους Αλγορίθμους Ενότητα 6 η Άσκηση - DFS δένδρα Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν

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

Προγραμματισμός H/Y Ενότητα 6: Δομές (structures) Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 6: Δομές (structures) Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 6: Δομές (structures) Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Προγραμματισμός H/Y Ενότητα 1: Εισαγωγή. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 1: Εισαγωγή. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 1: Εισαγωγή Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Εισαγωγή στους Αλγορίθμους Ενότητα 10η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

Βάσεις Δεδομένων. Ενότητα 1: Εισαγωγή στις Βάσεις δεδομένων. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών Βάσεις Δεδομένων Ενότητα 1: Εισαγωγή στις Βάσεις δεδομένων Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Προγραμματισμός H/Y Ενότητα 3: Πίνακες αριθμών και χαρακτήρων. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 3: Πίνακες αριθμών και χαρακτήρων. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 3: Πίνακες αριθμών και χαρακτήρων Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη) ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ενότητα: ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Οντοκεντρικός Προγραμματισμός

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 8: C++ ΒΙΒΛΙΟΗΚΗ STL, ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Δομές Δεδομένων ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Δομές

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

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 3: Constructors και destructors

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 3: Constructors και destructors Αντικειμενοστρεφής Προγραμματισμός Ενότητα 3: Constructors και destructors Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

Προγραμματισμός H/Y Ενότητα 7: Αρχεία. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 7: Αρχεία. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 7: Αρχεία Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής Ανοικτά Ακαδημαϊκά Μαθήματα Τεχνολογικό Εκπαιδευτικό Ίδρυμα Αθήνας Πίνακες Νερού σε κατάσταση Κορεσμού Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής Διπλ. Ναυπηγός Μηχανολόγος Μηχανικός M.Sc. Διασφάλιση

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

Αντικειμενοστραφής Προγραμματισμός

Αντικειμενοστραφής Προγραμματισμός 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αντικειμενοστραφής Προγραμματισμός Ενότητα 12 : Επαναληπτικές Ασκήσεις (3/3) Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών

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

Διοικητική Λογιστική

Διοικητική Λογιστική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Διοικητική Λογιστική Ενότητα 10: Προσφορά και κόστος Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

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

Ηλεκτρονικοί Υπολογιστές

Ηλεκτρονικοί Υπολογιστές ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 9: Πίνακες στη C++ Ζαχαρούλα Ανδρεοπούλου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση Αγροτικής Οικονομίας Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους (1)

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους (1) Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους (1) Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 7η Εισαγωγή στους Αλγορίθμους Ενότητα 7η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 8η Εισαγωγή στους Αλγορίθμους Ενότητα 8η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

Συστήματα Αναμονής. Ενότητα 3: Στοχαστικές Ανελίξεις. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Συστήματα Αναμονής. Ενότητα 3: Στοχαστικές Ανελίξεις. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Συστήματα Αναμονής Ενότητα 3: Στοχαστικές Ανελίξεις Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας Ενότητα 1: 8 Bήματα για να Εξάγω Εξαγωγική Ετοιμότητα Επιχειρήσεων Καθ. Αλεξανδρίδης Αναστάσιος Δρ. Αντωνιάδης Ιωάννης Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

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

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 5: Κληρονομικότητα. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 5: Κληρονομικότητα. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Αντικειμενοστρεφής Προγραμματισμός Ενότητα 5: Κληρονομικότητα Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 9: Ειδικά θέματα γλώσσας C/C++. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 9: Ειδικά θέματα γλώσσας C/C++. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Αντικειμενοστρεφής Προγραμματισμός Ενότητα 9: Ειδικά θέματα γλώσσας C/C++. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra Εισαγωγή στους Αλγορίθμους Ενότητα 1η Άσκηση Αλγόριθμος Dijkra Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upara.gr Άδειες Χρήσης Το παρόν

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

Μηχανολογικό Σχέδιο Ι

Μηχανολογικό Σχέδιο Ι ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Ενότητα # 8: Άτρακτοι και σφήνες Μ. Γρηγοριάδου Μηχανολόγων Μηχανικών Α.Π.Θ. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

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

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

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

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 1: Εισαγωγή. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 1: Εισαγωγή. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Αντικειμενοστρεφής Προγραμματισμός Ενότητα 1: Εισαγωγή Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Αντικειμενοστραφής Προγραμματισμός

Αντικειμενοστραφής Προγραμματισμός 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αντικειμενοστραφής Προγραμματισμός Ενότητα 2 : Ελεγχόμενη ροή προγράμματος Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Τμήμα Μηχανικών Πληροφορικής

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

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

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ ΜΕΤΑΒΑΤΙΚΑ ΦΑΙΝΟΜΕΝΑ ΣΤΑ ΣΗΕ Λαμπρίδης Δημήτρης Κατσανού Βάνα Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών

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

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

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ ΜΕΤΑΒΑΤΙΚΑ ΦΑΙΝΟΜΕΝΑ ΣΤΑ ΣΗΕ Λαμπρίδης Δημήτρης Κατσανού Βάνα Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών

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

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

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ ΜΕΤΑΒΑΤΙΚΑ ΦΑΙΝΟΜΕΝΑ ΣΤΑ ΣΗΕ Λαμπρίδης Δημήτρης Κατσανού Βάνα Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών

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

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

Ενότητα. Εισαγωγή στις βάσεις δεδομένων Ενότητα 1 Εισαγωγή στις βάσεις δεδομένων 2 1.1 Βάσεις Δεδομένων Ένα βασικό στοιχείο των υπολογιστών είναι ότι έχουν τη δυνατότητα να επεξεργάζονται εύκολα και γρήγορα μεγάλο πλήθος δεδομένων και πληροφοριών.

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

Οργάνωση και Διοίκηση Πωλήσεων

Οργάνωση και Διοίκηση Πωλήσεων Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 5: ΚΑΘΟΡΙΣΜΟΣ ΣΤΟΧΩΝ ΠΩΛΗΣΕΩΝ Αθανασιάδης Αναστάσιος Τμήμα Εφαρμογών Πληροφορικής στη Διοίκηση και Οικονομία Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

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

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 7: Υπερφόρτωση τελεστών. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 7: Υπερφόρτωση τελεστών. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Αντικειμενοστρεφής Προγραμματισμός Ενότητα 7: Υπερφόρτωση τελεστών Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 4: Δομές Ελέγχου Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

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

ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ Ενότητα 4: Ισχύς στο Συνεχές Ρεύμα Αριστείδης Νικ. Παυλίδης Τμήμα Μηχανολόγων Μηχανικών και Βιομηχανικού Σχεδιασμού ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Emil: zro@ei.uptrs.r Άδειες Χρήσης Το παρόν

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

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskl Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Emil: zro@ei.uptrs.r Άδειες Χρήσης Το παρόν

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

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΔΕΝΤΡΑ

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΔΕΝΤΡΑ Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΔΕΝΤΡΑ Δημήτριος Κουκόπουλος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών

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

Αντικειμενοστραφής Προγραμματισμός

Αντικειμενοστραφής Προγραμματισμός 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αντικειμενοστραφής Προγραμματισμός Ενότητα 10 : Επαναληπτικές Ασκήσεις (1/3) Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών

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

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 9: Μνήμη Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά Το έργο

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

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο Ενότητα 2: Δημιουργία και Επεξεργασία διανυσμάτων και πινάκων μέσω του Matlab Διδάσκουσα: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών ΤΕ Άδειες

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

Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων.

Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων. Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων. Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Πληροφορική ΙΙ Θεματική Ενότητα 5

Πληροφορική ΙΙ Θεματική Ενότητα 5 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Πληροφορική ΙΙ Θεματική Ενότητα 5 Λογικοί Τελεστές Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

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

Αντικειμενοστραφής Προγραμματισμός

Αντικειμενοστραφής Προγραμματισμός 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αντικειμενοστραφής Προγραμματισμός Ενότητα 4 : Πίνακες Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

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

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 1: Ο ΡΟΛΟΣ ΤΩΝ ΠΩΛΗΣΕΩΝ ΣΤΟ ΠΛΑΙΣΙΟ ΤΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΜΑΡΚΕΤΙΝΓΚ

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 1: Ο ΡΟΛΟΣ ΤΩΝ ΠΩΛΗΣΕΩΝ ΣΤΟ ΠΛΑΙΣΙΟ ΤΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΜΑΡΚΕΤΙΝΓΚ Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 1: Ο ΡΟΛΟΣ ΤΩΝ ΠΩΛΗΣΕΩΝ ΣΤΟ ΠΛΑΙΣΙΟ ΤΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΜΑΡΚΕΤΙΝΓΚ Αθανασιάδης Αναστάσιος Τμήμα Εφαρμογών Πληροφορικής στη Διοίκηση και Οικονομία Άδειες Χρήσης Το παρόν

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

Σχεδίαση Δικτύων Υπολογιστών

Σχεδίαση Δικτύων Υπολογιστών Σχεδίαση Δικτύων Υπολογιστών Ενότητα 6: Δρομολόγηση κατάστασης ζεύξης Άγγελος Μιχάλας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Εισαγωγή στους Αλγορίθμους Ενότητα 9η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

Προγραμματισμός Η/Υ. 4 η ενότητα: Δομές Δεδομένων. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

Προγραμματισμός Η/Υ. 4 η ενότητα: Δομές Δεδομένων. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Προγραμματισμός Η/Υ 4 η ενότητα: Δομές Δεδομένων Τμήμα Τεχνολόγων Περιβάλλοντος ΤΕΙ Ιονίων Νήσων Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative

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

Συστήματα Αναμονής. Ενότητα 7: Ουρά Μ/Μ/1. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Συστήματα Αναμονής. Ενότητα 7: Ουρά Μ/Μ/1. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Συστήματα Αναμονής Ενότητα 7: Ουρά Μ/Μ/1 Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων Δρ.Ευσταθία Παπαγεωργίου, Αναπληρώτρια Καθηγήτρια Τμήμα Ιατρικών Εργαστηρίων Το περιεχόμενο του μαθήματος

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων Δρ.Ευσταθία Παπαγεωργίου, Αναπληρώτρια Καθηγήτρια Τμήμα Ιατρικών Εργαστηρίων Το περιεχόμενο του μαθήματος διατίθεται

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

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

ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ Ενότητα 7: Άσκηση στο Εναλλασσόμενο Ρεύμα Αριστείδης Νικ. Παυλίδης Τμήμα Μηχανολόγων Μηχανικών και Βιομηχανικού Σχεδιασμού ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 6: Φιλικές συναρτήσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 6: Φιλικές συναρτήσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Αντικειμενοστρεφής Προγραμματισμός Ενότητα 6: Φιλικές συναρτήσεις Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

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

ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ Ενότητα 3: Νόμος του Ohm Κανόνες του Kirchhoff Αριστείδης Νικ. Παυλίδης Τμήμα Μηχανολόγων Μηχανικών και Βιομηχανικού Σχεδιασμού ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Συστήματα Αναμονής. Ενότητα 5: Ανέλιξη Poisson. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Συστήματα Αναμονής. Ενότητα 5: Ανέλιξη Poisson. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Συστήματα Αναμονής Ενότητα 5: Ανέλιξη Poisson Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

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

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 3: Πολλαπλή Παλινδρόμηση. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 3: Πολλαπλή Παλινδρόμηση. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) ΟΙΚΟΝΟΜΕΤΡΙΑ Ενότητα 3: Πολλαπλή Παλινδρόμηση. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 1: Εκτιμητές και Ιδιότητες. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 1: Εκτιμητές και Ιδιότητες. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) ΟΙΚΟΝΟΜΕΤΡΙΑ Ενότητα 1: Εκτιμητές και Ιδιότητες. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Εισαγωγή στον δομημένο προγραμματισμό

Εισαγωγή στον δομημένο προγραμματισμό Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στον δομημένο προγραμματισμό Ενότητα 7 η : Δείκτες Αν. καθηγητής Στεργίου Κώστας e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

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

Τεχνικό Σχέδιο - CAD

Τεχνικό Σχέδιο - CAD Τεχνικό Σχέδιο - CAD Προσθήκη Διαστάσεων & Κειμένου ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Εντολές προσθήκης διαστάσεων & κειμένου Στο βασική (Home)

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

Συστήματα Αναμονής. Ενότητα 4: Αλυσίδες Markov. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Συστήματα Αναμονής. Ενότητα 4: Αλυσίδες Markov. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Συστήματα Αναμονής Ενότητα 4: Αλυσίδες Markov Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική Δρ.Ευσταθία Παπαγεωργίου, Αναπληρώτρια Καθηγήτρια Τμήμα Ιατρικών Εργαστηρίων Το περιεχόμενο του μαθήματος

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

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 2: Κλάσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 2: Κλάσεις. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Αντικειμενοστρεφής Προγραμματισμός Ενότητα 2: Κλάσεις Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 4

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 4 Εισαγωγή στους Αλγορίθμους Φροντιστήριο 4 Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

Εισαγωγή στους Υπολογιστές

Εισαγωγή στους Υπολογιστές Εισαγωγή στους Υπολογιστές Εργαστήριο 2 Καθηγητές: Αβούρης Νικόλαος, Παλιουράς Βασίλης, Κουκιάς Μιχαήλ, Σγάρμπας Κυριάκος Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άσκηση 2 ου εργαστηρίου

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

Οντοκεντρικός Προγραμματισμός

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 5: H ΓΛΩΣΣΑ C++ Πίνακες & Δείκτες ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πίνακες Πίνακες Τα στοιχεία

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

Τεχνολογία Πολυμέσων. Ενότητα 8: Pool Table. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Τεχνολογία Πολυμέσων. Ενότητα 8: Pool Table. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Τεχνολογία Πολυμέσων Ενότητα 8: Pool Table Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

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

Δομές Δεδομένων. Ενότητα 9: Αναδρομικότητα. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Δομές Δεδομένων. Ενότητα 9: Αναδρομικότητα. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Δομές Δεδομένων Ενότητα 9: Αναδρομικότητα Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

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

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 4: Πηγές Δεδομένων- Δευτερογενή Στοιχεία. Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 4: Πηγές Δεδομένων- Δευτερογενή Στοιχεία. Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 4: Πηγές Δεδομένων- Δευτερογενή Στοιχεία. Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση Αγροτικής Οικονομίας Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Διδακτική της Πληροφορικής

Διδακτική της Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 14: Διδακτικές Προσεγγίσεις για τον Προγραμματισμό Σταύρος Δημητριάδης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

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

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη Ενότητα 8: Η Οικονομική πολιτική της Ευρωπαϊκής Ένωσης Γρηγόριος Ζαρωτιάδης Άδειες Χρήσης Το

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

Δομές Δεδομένων Ενότητα 3

Δομές Δεδομένων Ενότητα 3 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 3: Στοίβα Απόστολος Παπαδόπουλος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Προγραμματισμός ΙΙ. Ενότητα 4: Διαχείριση μνήμης. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Προγραμματισμός ΙΙ. Ενότητα 4: Διαχείριση μνήμης. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Προγραμματισμός ΙΙ Ενότητα 4: Διαχείριση μνήμης Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Προγραμματισμός ΙΙ. Ενότητα 2: Διαχείριση μνήμης. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Προγραμματισμός ΙΙ. Ενότητα 2: Διαχείριση μνήμης. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Προγραμματισμός ΙΙ Ενότητα 2: Διαχείριση μνήμης Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 10: Πρότυπα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

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