Η στοίβα (stack) H στοίβα είναι ένας αποθηκευτικός χώρος οργανωµένος κατά τέτοιο τρόπο ώστε να υποστηρίζει δύο βασικές λειτουργίες:

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

Download "Η στοίβα (stack) H στοίβα είναι ένας αποθηκευτικός χώρος οργανωµένος κατά τέτοιο τρόπο ώστε να υποστηρίζει δύο βασικές λειτουργίες:"

Transcript

1 Άσκηση 5Α_5 26/3/ Άσκηση 5A - [αναγνώριση αντικειµένων-διάγραµµα κλάσεων] [Σε αντικατάσταση της άσκησης 5 του κεφαλαίου 11] Περιγραφή Η άσκηση αυτή είναι η πρώτη από µία σειρά ασκήσεων που έχουν σαν στόχο την ανάπτυξη ενός προγράµµατος (εφαρµογής) σε Java σύµφωνα µε το οποίο το σύστηµα θα δέχεται οποιαδήποτε έκφραση που ακολουθεί την αντίστροφη Πολωνική σηµειογραφία και περιέχει τους βασικούς αριθµητικούς τελεστές, και θα υπολογίζει την τιµή της. Για την ανάπτυξη της αριθµοµηχανής θα χρησιµοποιήσουµε την στοίβα ( ες ένθετο πλαίσιο που ακολουθεί.). Μια σύντοµη περιγραφή της αριθµοµηχανής που χρησιµοποιεί την στοίβα παρατίθεται στο ένθετο «Αριθµοµηχανή αντίστροφης Πολωνικής σηµειογραφίας». Για να µελετήσετε τον τρόπο ανάπτυξης της εφαρµογής µε διαδικαστικό προγραµµατισµό και C µπορείτε να ανατρέξτε στο κεφάλαιο 8 του πρώτου τόµου «ιαδικαστικός Προγραµµατισµός - C» του Κλ. Θραµπουλίδη ή στο κεφάλαιο 4 του βιβλίου «The C Programming Language» των B.Kernighan και D.Ritchie. Η στοίβα (stack) H στοίβα είναι ένας αποθηκευτικός χώρος οργανωµένος κατά τέτοιο τρόπο ώστε να υποστηρίζει δύο βασικές λειτουργίες: 1. Εισαγωγή στοιχείου (push) 2. Eξαγωγή στοιχείου (pop) H λειτουργία «εισαγωγή στοιχείου» έχει σαν αποτέλεσµα την εισαγωγή και αποθήκευση ενός στοιχείου στην στοίβα µε την προϋπόθεση βέβαια ότι υπάρχει διαθέσιµος χώρος. Η λειτουργία «εξαγωγή στοιχείου» έχει σαν αποτέλεσµα την εξαγωγή από την στοίβα του στοιχείου που εισήχθη τελευταίο. Η στοίβα είναι γνωστή και µε το όνοµα Last In First Out (LIFO). Η στοίβα, η οποία χρησιµοποιείται ευρύτατα στο system programming, αποτελεί πολύ καλό εργαλείο για την υλοποίηση εκφράσεων που συντάσσονται σύµφωνα µε την µετα-θεµατική σηµειολογία. Στα πλαίσια αυτής της άσκησης απλά θα εξοικειωθείτε µε την λειτουργία µιας Αριθµοµηχανής 1. Την εφαρµογή πού έχει αναπτυχθεί σε Java θα την βρείτε στο συνοδευτικό CD. Την εφαρµογή αυτή θα χρησιµοποιήσετε για να περιγράψετε τις περιπτώσεις χρήσης του συστήµατος (use cases), να δώσετε τα διαγράµµατα αλληλεπίδρασης για κάθε περίπτωση χρήσης και να δηµιουργήσετε το διάγραµµα κλάσεων της εφαρµογής. Στο πρώτο διάγραµµα κλάσεων που θα κατασκευάσουµε από την παραπάνω διαδικασία θα εντοπίσουµε τις βασικές κλάσεις που απαρτίζουν τον πυρήνα (καρδιά) της αριθµοµηχανής χωρίς να λαµβάνουµε υπόψη σε αυτό το στάδιο τον τρόπο που η 1 H Αριθµοµηχανή που σας δίνεται συνοδεύεται και από ένα παράθυρο στο οποίο εµφανίζονται τα περιεχόµενα της στοίβας. Το παράθυρο αυτό θα σας βοηθήσει στην κατανόηση της λειτουργίας της στοίβας.

2 Άσκηση 11.5Α 2 αριθµοµηχανή επικοινωνεί µε τον χρήστη. Ο ορισµός των βασικών αυτών κλάσεων θα µπορεί να υποστηρίζει και γραφική αλλά και απλή διεπαφή µε τον χρήστη Στόχος Εξοικείωση µε την έννοια της περίπτωσης χρήσης (use case) και το πως αυτή χρησιµοποιείται στην διαδικασία εντοπισµού των αντικειµένων που απαρτίζουν το σύστηµα, µε το διάγραµµα κλάσεων το οποίο αναπαριστά τα αντικείµενα που απαρτίζουν το σύστηµα και τις µεταξύ τους συσχετίσεις. Χρόνος εκτέλεσης: Κατά την διάρκεια της µελέτης του κεφαλαίου 8 ή µε την ολοκλήρωση του. Αριθµοµηχανή αντίστροφης Πολωνικής σηµειογραφίας Η αριθµοµηχανή αντίστροφης Πολωνικής σηµειογραφίας δέχεται σαν είσοδο αριθµητικές εκφράσεις που είναι σύµφωνες µε την αντίστροφη Πολωνική σηµειογραφία, υπολογίζει την τιµή τους και την δίνει στο χρήστη. Η αντίστροφη Πολωνική σηµειογραφία είναι η γνωστή µας µεταθεµατική σηµειογραφία που αναφέραµε στο κεφάλαιο των τελεστών. Σύµφωνα µε αυτή µια έκφραση της ενθεµατικής σηµειογραφίας σαν την (3 + 6 ) * (8 6) παρουσιάζεται µε την παρακάτω µορφή * = Παρατηρήστε πως αν γνωρίζουµε τον αριθµό των τελεστέων πάνω στους οποίους ενεργεί ο κάθε τελεστής δεν απαιτούνται παρενθέσεις για την δηµιουργία της έκφρασης. Για τον υπολογισµό της τιµής της έκφρασης µπορεί να χρησιµοποιηθεί η έννοια της στοίβας (stack). Η στοίβα είναι ένας αποθηκευτικός χώρος στον οποίο µπορούµε να βάζουµε και να βγάζουµε αντικείµενα µε τον περιορισµό ότι βγαίνει πρώτο όποιο µπήκε τελευταίο (Last In First Out - LIFO). Στην συνέχεια θα δούµε πως µια οντότητα (άνθρωπος, υπολογιστής) υπολογίζει την τιµή της παράστασης µεταθεµατικής σηµειολογίας * = κάνοντας χρήση της στοίβας. Στον πίνακα που ακολουθεί, δίνονται οι απαραίτητες ενέργειες που θα πρέπει να κάνει η οντότητα και δίπλα τους η εκάστοτε κατάσταση της στοίβας. Ενέργεια Παίρνει το 3 και το βάζει στη στοίβα Παίρνει το 6 και το βάζει στη στοίβα έχεται το + το οποίο επιδρά πάνω σε δύο τελεστέους. Βγάζει δύο τελεστέους (το 6 και το 3), τους προσθέτει όπως ορίζει ο τελεστής + και το αποτέλεσµα το βάζει στην στοίβα. Παίρνει το 8 και το βάζει στη στοίβα Κατάσταση Στοίβας

3 Άσκηση 11.5Α 3 Παίρνει το 6 και το βάζει στη στοίβα έχεται το - το οποίο επιδρά πάνω σε δύο τελεστέους. Βγάζει δύο τελεστέους (το 8 και το 6), τους αφαιρεί όπως ορίζει ο τελεστής - και το αποτέλεσµα το βάζει στην στοίβα έχεται το * το οποίο επιδρά πάνω σε δύο τελεστέους. Βγάζει δύο τελεστέους (το 2 και το 9), τους αφαιρεί όπως ορίζει ο τελεστής - και το αποτέλεσµα το βάζει στην στοίβα έχεται τον τελεστή =, βγάζει ένα αντικείµενο (το 18 που είναι η τιµή της έκφρασης) και το δίνει στο χρήστη Οδηγίες Στη φάση αυτή θα αγνοήσουµε πλήρως τον τρόπο µε τον οποίο επικοινωνεί ο χρήστης µε το σύστηµα. Η επικοινωνία αυτή θα µπορεί να είναι διαµέσου της γραµµής διαταγών, ή ακόµη καλύτερα διαµέσου ενός γραφικού περιβάλλοντος όπως αυτού του calculator των Windows ή της διεπαφής που χρησιµοποιεί η υλοποίηση που θα βρείτε στο συνοδευτικό CD. Ίσως σε λίγα χρόνια η τεχνολογία µας δώσει την δυνατότητα να έχουµε σαν επιλογή και την ηχητική διεπαφή. Ένα είναι σαφές, οι κλάσεις που θα προκύψουν για την υλοποίηση της συγκεκριµένης σε κάθε περίπτωση διεπαφής θα πρέπει να έχουν τη µικρότερη δυνατή σύζευξη (coupling) µε τις κλάσεις που προκύπτουν από την περιοχή του προβλήµατος (problem space). Η διαδικασία της αναγνώρισης των κλάσεων των δύο περιοχών, του προβλήµατος και αυτής της λύσης (solution space), είναι µια σύνθετη διαδικασία που το αποτέλεσµα της προσδιορίζει την ποιότητα σχεδιασµού του συστήµατος. Η διαδικασία αυτή που περιγράφεται από τις αντικειµενοστρεφείς µεθοδολογίες Ανάλυσης και Σχεδιασµού συστηµάτων λογισµικού, είναι εκτός των ορίων του παρόντος βιβλίου Μεθοδολογία εκτέλεσης Η άσκηση δίνεται σαν ένα σύνολο από δραστηριότητες που πρέπει να εκτελέσετε µόνοι σας. Σε κάθε δραστηριότητα σας δίνονται οδηγίες και βοήθεια ώστε να ξεπεράσετε τα δύσκολα σηµεία. Στο τέλος της άσκησης σας δίνονται ενδεικτικές απαντήσεις των δραστηριοτήτων. ραστηριότητα 1 Λίστα περιπτώσεων χρήσης Θεωρήστε τις παρακάτω περιπτώσεις χρήσης: Ο χρήστης εισάγει ένα ψηφίο κατά την διαδικασία διαµόρφωσης του τελεστέου που εισάγει. Ο χρήστης ζητά την εκτέλεση της πράξης της πρόσθεσης. Καταγράψτε τις υπόλοιπες περιπτώσεις χρήσης του συστήµατος σας.

4 Άσκηση 11.5Α 4 Για να δείτε την δική µας λίστα περιπτώσεων χρήσης µπορείτε να ανατρέξετε στο τέλος της άσκησης. ραστηριότητα 2 Περιγραφή περίπτωσης χρήσης Περιγράψατε τις περιπτώσεις χρήσης που καταγράψατε στην προηγούµενη δραστηριότητα σας. Σας συνιστούµε να ακολουθήσετε τις παρακάτω ενέργειες. Για κάθε µια από τις ενέργειες αυτές θα βρείτε στο τέλος της άσκησης την δική µας πρόταση. Χρησιµοποιήστε φυσική γλώσσα για να περιγράψετε τις περιπτώσεις χρήσης του συστήµατος σας. Για κάθε µια περίπτωση χρήσης εντοπίστε τα αντικείµενα του συστήµατος που πρέπει να συνεργαστούν ώστε το σύστηµα σας να παρέχει την απαιτούµενη συµπεριφορά. ηµιουργήστε ένα διάγραµµα αλληλεπίδρασης για κάθε περίπτωση χρήσης. Χρησιµοποιήστε την UML σηµειολογία για να δώσετε το διάγραµµα κλάσεων του συστήµατος σας. Στο τέλος της άσκησης θα βρείτε την δική µας πρόταση στα πλαίσια της δραστηριότητας. Θα πρέπει να την µελετήσετε επισταµένως καθώς περιέχει επιπλέον πληροφορία από µια απλή πρόταση λύσης.

5 Άσκηση 11.5Α Ενδεικτικές απαντήσεις των δραστηριοτήτων της άσκησης ραστηριότητα 1 Ενδεικτική απάντηση Μια πιο πλήρης λίστα µε περιπτώσεις χρήσης του συστήµατος της Αριθµοµηχανής δίνεται στη συνέχεια. Εσείς θα συµπληρώσετε την λίστα. Ο χρήστης εισάγει ένα ψηφίο κατά την διαδικασία διαµόρφωσης του τελεστέου που εισάγει. Ο χρήστης ζητά την διαγραφή του τελευταίου εισαχθέντος ψηφίου. Ο χρήστης γνωρίζει στο σύστηµα την ολοκλήρωση του τρέχοντος τελεστέου. Ο χρήστης ζητά την εκτέλεση της πράξης της πρόσθεσης. Ο χρήστης ζητά την εκτέλεση της πράξης της αφαίρεσης. ραστηριότητα 2 Ενδεικτική απάντηση Χρησιµοποιήστε φυσική γλώσσα για να περιγράψετε τις περιπτώσεις χρήσης του συστήµατος σας. Σας δίνουµε ενδεικτικά την περιγραφή των περιπτώσεων χρήσης: Ο χρήστης εισάγει ένα ψηφίο κατά την διαδικασία διαµόρφωσης του τελεστέου που εισάγει 2. Ο χρήστης ζητά την εκτέλεση της πράξης της πρόσθεσης Α) Περίπτωση χρήσης: «Ο χρήστης εισάγει ένα ψηφίο κατά την διαδικασία διαµόρφωσης του τελεστέου που εισάγει» Περίπτωση χρήσης: Ο χρήστης εισάγει ένα ψηφίο κατά την διαδικασία διαµόρφωσης του τελεστέου που εισάγει. Περιγραφή: Ο χρήστης ζητά την προσθήκη νέου ψηφίου στον υπό διαµόρφωση τελεστέο. Το σύστηµα προσθέτει το νέο ψηφίο στο τέλος του υπό διαµόρφωση τελεστέου και στη συνέχεια ενηµερώνει τον χρήστη για την νέα τιµή του υπό διαµόρφωση τελεστέου. Β) Περίπτωση χρήσης «Ο χρήστης ζητά την εκτέλεση της πράξης της πρόσθεσης». Περίπτωση χρήσης: Ο χρήστης ζητά την εκτέλεση της πράξης της πρόσθεσης. Περιγραφή: Ο χρήστης ζητά την εκτέλεση της πράξης της πρόσθεσης. Το σύστηµα παίρνει έναν τελεστέο από την στοίβα. Το σύστηµα παίρνει δεύτερο τελεστέο από την στοίβα. Το σύστηµα προσθέτει τους δύο τελεστέους και το άθροισµα τους το τοποθετεί στην στοίβα. 2 Κάνουµε την θεώρηση ότι ο χρήστης εισάγει ένα-ένα τα ψηφία του υπό διαµόρφωση τελεστέου όπως συµβαίνει µε τις Αριθµοµηχανές που χρησιµοποιούµε στην καθηµερινή ζωή.

6 Άσκηση 11.5Α 6 Ανάλογα θα εργασθείτε για τις υπόλοιπες περιπτώσεις χρήσης. Για κάθε µια περίπτωση χρήσης εντοπίστε τα αντικείµενα του συστήµατος που πρέπει να συνεργαστούν ώστε το σύστηµα σας να παρέχει την συµπεριφορά που του ζητείται. ηµιουργήστε ένα διάγραµµα αλληλεπίδρασης για κάθε περίπτωση χρήσης. Σας δίνουµε ενδεικτικά απάντηση για τις περιπτώσεις χρήσης: Ο χρήστης ζητά την εκτέλεση της πράξης της πρόσθεσης Ο χρήστης εισάγει ένα ψηφίο κατά την διαδικασία διαµόρφωσης του τελεστέου που εισάγει Α) Περίπτωση χρήσης: «Ο χρήστης εισάγει ένα ψηφίο κατά την διαδικασία διαµόρφωσης του τελεστέου που εισάγει» Από την περιγραφή της περίπτωσης χρήσης εντοπίζουµε το αντικείµενο τελεστέος που είναι τύπου Operand. Tο διάγραµµα αλληλεπίδρασης είναι πολύ απλό και δίνεται στη συνέχεια. User operand adddigit operandvalue H δηµιουργία του διαγράµµατος αλληλεπίδρασης µας βοηθά να ορίσουµε τις βασικές λειτουργίες που θα πρέπει να παρέχει κάθε αντικείµενο στα πλαίσια της συµµετοχής του στο σύστηµα. Οι λειτουργίες αυτές είναι γνωστές σαν αρµοδιότητες (responsibilities). Για µια πολύ καλή και αναλυτική περιγραφή της διαδικασίας αυτής µπορείτε να ανατρέξετε στην µεθοδολογία CRC (Class Responsibility Collaborations). Σε κάθε περίπτωση όµως οι µεθοδολογίες αυτές αποτελούν αντικείµενο του Software Engineering. Από το παραπάνω διάγραµµα αλληλεπίδρασης είναι εµφανές ότι αναθέτουµε σαν αρµοδιότητα στο αντικείµενο τύπου Operand την πρόσθεση (adddigit) ψηφίου στο τέλος της υπάρχουσας τιµής του. Στη συνέχεια θα δούµε πως στα πλαίσια άλλων διαγραµµάτων αλληλεπίδρασης το στιγµιότυπο τύπου Operand έχει και άλλες αρµοδιότητες. Οι αρµοδιότητες από όλα τα διαγράµµατα αλληλεπίδρασης που συµµετέχει στιγµιότυπο του συγκεκριµένου τύπου ορίζουν το σύνολο των αρµοδιοτήτων του εν λόγω αντικειµένου και θα µας οδηγήσει στον ορισµό της αντίστοιχης κλάσης. Β) Περίπτωση χρήσης «Ο χρήστης ζητά την εκτέλεση της πράξης της πρόσθεσης». Από την περιγραφή της περίπτωσης χρήσης εντοπίζουµε το αντικείµενο τελεστέος που είναι τύπου Operand και το αντικείµενο στοίβα που είναι τύπου Stack.

7 Άσκηση 11.5Α 7 Την λογική της εκτέλεσης των ενεργειών: Πάρε τελεστέο από την στοίβα Πάρε τελεστέο από την στοίβα Πρόσθεσε τους δύο τελεστέους Βαλε το άθροισµα στην στοίβα αποφασίζουµε να την αναθέσουµε σε ένα αντικείµενο που το ονοµάζουµε Adder. Στη συνέχεια δίνουµε το διάγραµµα αλληλεπίδρασης. User adder stack operate pop pop push Από το παραπάνω διάγραµµα αλληλεπίδρασης είναι εµφανές ότι αναθέτουµε σαν αρµοδιότητες στο αντικείµενο τύπου Stack την προσωρινή αποθήκευση τελεστέου (push) και την ανάκλιση (pop) τελεστέου. Στο στιγµιότυπο τύπου Adder αναθέτουµε µόνο µια αρµοδιότητα αυτή της εκτέλεσης της διεργασίας της πρόσθεσης. Θα εργασθείτε µε τον ίδιο τρόπο για τις υπόλοιπες περιπτώσεις χρήσης. Χρησιµοποιήστε την UML σηµειολογία για να δώσετε το διάγραµµα κλάσεων του συστήµατος σας. Από τα παραπάνω βήµατα έχουµε καταγράψει τα παρακάτω αντικείµενα από την περιοχή του προβλήµατος: Αριθµοµηχανή (Calculator) Τελεστής άθροισης (Adder) Τελεστής αφαίρεσης (Subtracter) Τελεστής πολλαπλασιασµού (Multiplier) Τελεστής διαίρεσης (Divider) Τελεστής εµφάνισης αποτελέσµατος (ResultPresenter) Στα παραπάνω αντικείµενα της φάσης της ανάλυσης θα συµπεριλάβουµε και τον σωρό (Stack), που αποτελεί αντικείµενο της φάσης σχεδιασµού. Αν επιλέγαµε αρχικά την διαµόρφωση της έκφρασης και στην συνέχεια τον υπολογισµό της τιµής της θα µπορούσε να περιληφθεί επιπλέον και η έκφραση (expression). εν θα ακολουθήσουµε όµως αυτή την προσέγγιση. Το σχήµα 5.1 δίνει ένα πρόχειρο διάγραµµα κλάσεων της εφαρµογής. Όπως µπορείτε να διακρίνετε έχει καταγραφεί η αφηρηµένη κλάση Operator της οποίας υποκλάσεις µπορούν να θεωρηθούν οι κλάσεις Adder, Subtracter, κλπ. Έχουν

8 Άσκηση 11.5Α 8 επίσης καταγραφεί οι σχέσεις κληρονοµικότητας µεταξύ των κλάσεων αυτών, καθώς και οι σχέσεις συνάθροισης µεταξύ της κλάσης Calculator και των υπολοίπων κλάσεων που απαρτίζουν την Αριθµοµηχανή. Χρησιµοποιήθηκε το σύµβολο από την πλευρά του όλου. Επιπλέον καταγράψαµε την κλάση Memory για να δώσουµε στην αριθµοµηχανή µας τη δυνατότητα υποστήριξης λειτουργιών µνήµης. Calculator Operator Operand Stack Memory Adder Subtracter Multiplier Divider Σχήµα ιάγραµµα κλάσεων πολωνικής Αριθµοµηχανής (πρώτη εκδοχή).

12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2004)

12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2004) exercise 6new_6 23/2/2005 12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2004) 12.6.1. Περιγραφή Θεωρήστε την γραφική διεπαφή της αριθµοµηχανής των MS Windows. Μια παρόµοια διεπαφή (δες

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

12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2006)

12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2006) exercise 6new_10 12/5/2008 12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2006) 12.6.1. Περιγραφή Θεωρήστε την γραφική διεπαφή της αριθµοµηχανής των MS Windows. Μια παρόµοια διεπαφή (δες

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

(Logic Gate Simulator)

(Logic Gate Simulator) Περιγραφή Άσκηση 21 Εξοµοιωτής Κυκλωµάτων Λογικών Πυλών () Στα πλαίσια της άσκησης LogicGateSimulator 1 θα αναπτύξετε ένα πρόγραµµα σύµφωνα µε το οποίο το σύστηµα θα σας επιτρέπει: 1. να ορίζετε ένα κύκλωµα

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

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού

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

ΠΛΗ111. Ανοιξη Μάθηµα 4 ο. Στοίβα. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης

ΠΛΗ111. Ανοιξη Μάθηµα 4 ο. Στοίβα. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης ΠΛΗ111 οµηµένος Προγραµµατισµός Ανοιξη 2005 Μάθηµα 4 ο Στοίβα Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης Ανασκόπηση Αφηρηµένος Τύπος εδοµένων Στοίβα Υλοποίηση µε Πίνακα Υλοποίηση

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

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Μια δομή δεδομένων στην πληροφορική, συχνά αναπαριστά οντότητες του φυσικού κόσμου στον υπολογιστή. Για την αναπαράσταση αυτή, δημιουργούμε πρώτα ένα αφηρημένο μοντέλο στο οποίο προσδιορίζονται

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

Δομές Δεδομένων. Ενότητα 2: Στοίβες Εισαγωγή-Υλοποίηση ΑΤΔ Στοίβα με Πίνακα-Εφαρμογή Στοίβας: Αντίστροφη Πολωνική Γραφή. Καθηγήτρια Μαρία Σατρατζέμη

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

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

Δοµές Δεδοµένων. 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης

Δοµές Δεδοµένων. 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης Δοµές Δεδοµένων 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων Ε. Μαρκάκης Περίληψη Χρήση αναδροµικών εξισώσεων στην ανάλυση αλγορίθµων Αφηρηµένοι τύποι δεδοµένων Συλλογές στοιχείων Στοίβα

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

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου,

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, Εφαρµογές στοιβών Στην ενότητα αυτή θα µελετηθεί η χρήση στοιβών στις εξής εφαρµογές: Αναδροµικές συναρτήσεις Ισοζυγισµός Παρενθέσεων Αντίστροφος Πολωνικός Συµβολισµός ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι

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

ΕΠΛ 231 Δομές Δεδομένων και Αλγόριθμοι 4-1

ΕΠΛ 231 Δομές Δεδομένων και Αλγόριθμοι 4-1 Εφαρμογές στοιβών Στην ενότητα αυτή θα μελετηθεί η χρήση στοιβών στις εξής εφαρμογές: Αναδρομικές συναρτήσεις Ισοζυγισμός Παρενθέσεων Αντίστροφος Πολωνικός Συμβολισμός ΕΠΛ 231 Δομές Δεδομένων και Αλγόριθμοι

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

Διαχείριση Πληροφοριακών Συστημάτων

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

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

Διορθώσεις Συμπληρώσεις επί της επανεκτύπωσης 2003 της 2 ης έκδοσης του βιβλίου «Διαδικαστικός Προγραμματισμός C»

Διορθώσεις Συμπληρώσεις επί της επανεκτύπωσης 2003 της 2 ης έκδοσης του βιβλίου «Διαδικαστικός Προγραμματισμός C» Διορθώσεις Συμπληρώσεις επί της επανεκτύπωσης 2003 της 2 ης έκδοσης του βιβλίου «Διαδικαστικός Προγραμματισμός C» Τα λάθη δίνονται με την σειρά που εμφανίζονται στο κείμενο. Καταγράφονται λάθη που εντοπίστηκαν

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

UML. Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις. Παραδείγματα

UML. Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις. Παραδείγματα ΕΙΣΑΓΩΓΗ ΣΤΗ UML UML Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις ιαγράµµατα Παραδείγματα Ορισμός του μοντέλου Αποτελεί µια αφηρηµένη περιγραφή ενός Φυσικού συστήµατος. Αποτελεί ένα σχέδιο για την

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

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

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

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου) ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου) 1. Εισαγωγή Χαρακτηριστικά της γλώσσας Τύποι δεδοµένων Γλώσσα προγραµµατισµού

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

ΡΗΤΟΙ ΑΡΙΘΜΟΙ - ΘΕΩΡΙΑ

ΡΗΤΟΙ ΑΡΙΘΜΟΙ - ΘΕΩΡΙΑ ΡΗΤΟΙ ΑΡΙΘΜΟΙ - ΘΕΩΡΙΑ Α. ΟΡΙΣΜΟΙ Θετικοί αριθµοί είναι οι αριθµοί που έχουν πρόσηµο το + (πολλές φορές το + παραλείπεται) π.χ. +3, +105, +, + 0,7, 326. Αρνητικοί αριθµοί είναι οι αριθµοί που έχουν πρόσηµο

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

Συλλογές, Στοίβες και Ουρές

Συλλογές, Στοίβες και Ουρές Συλλογές, Στοίβες και Ουρές Σε πολλές εφαρμογές μας αρκεί η αναπαράσταση ενός δυναμικού συνόλου με μια δομή δεδομένων η οποία δεν υποστηρίζει την αναζήτηση οποιουδήποτε στοιχείου. Συλλογή (bag) : Επιστρέφει

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

2.2.5 ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ

2.2.5 ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ 2.2.5 ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ Προκειμένου να επιτευχθεί η «ακριβής περιγραφή» ενός αλγορίθμου, χρησιμοποιείται κάποια γλώσσα που μπορεί να περιγράφει σειρές ενεργειών με τρόπο αυστηρό,

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

Εισαγωγή στην αντικειµενοστρεφή τεχνολογία

Εισαγωγή στην αντικειµενοστρεφή τεχνολογία 1 Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στην αντικειµενοστρεφή τεχνολογία ρ. Πάνος Φιτσιλής Περιεχόµενα Γιατί µοντελοποιούµε Εισαγωγή στη UML Ένα απλό παράδειγµα 2 Γιατί µοντελοποιούµε; Ησηµασία της µοντελοποίησης

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

Επαναληπτικό ιαγώνισµα Πληροφορικής Γ Γυµνασίου Γιώργος Λιακέας Σχολικός Σύµβουλος Πληροφορικής Ερωτήσεις

Επαναληπτικό ιαγώνισµα Πληροφορικής Γ Γυµνασίου Γιώργος Λιακέας Σχολικός Σύµβουλος Πληροφορικής Ερωτήσεις Επαναληπτικό ιαγώνισµα Πληροφορικής Γ Γυµνασίου (νέο βιβλίο Πληροφορικής Γυµνασίου Αράπογλου, Μαβόγλου, Οικονοµάκου, Φύτρου) Γιώργος Λιακέας Σχολικός Σύµβουλος Πληροφορικής Ερωτήσεις 1. Τι είναι ο Αλγόριθµος;

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

Oι βασικές πράξεις (λειτουργίες) που ορίζονται για τον τύπο στοίβα αναφέρονται παρακάτω:

Oι βασικές πράξεις (λειτουργίες) που ορίζονται για τον τύπο στοίβα αναφέρονται παρακάτω: 3 ΣTOIBEΣ KAI OYPEΣ 3.1 ΣΤΟΙΒΕΣ Στοίβα (stack) είναι µία λίστα στην οποία νέα στοιχεία µπορούν να προστεθούν και να αφαιρεθούν µόνο από τη µία άκρη της (κορυφή της στοίβας). Συχνά µία στοίβα αναφέρεται

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

Κεφάλαιο 2. Συστήματα Αρίθμησης και Αναπαράσταση Πληροφορίας. Περιεχόμενα. 2.1 Αριθμητικά Συστήματα. Εισαγωγή

Κεφάλαιο 2. Συστήματα Αρίθμησης και Αναπαράσταση Πληροφορίας. Περιεχόμενα. 2.1 Αριθμητικά Συστήματα. Εισαγωγή Κεφάλαιο. Συστήματα Αρίθμησης και Αναπαράσταση Πληροφορίας Περιεχόμενα. Αριθμητικά συστήματα. Μετατροπή αριθμών από ένα σύστημα σε άλλο.3 Πράξεις στο δυαδικό σύστημα.4 Πράξεις στο δεκαεξαδικό σύστημα.5

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 121 ΕΡΓΑΣΤΗΡΙΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΝΗΜΗ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΗ ΛΟΓΙΚΗ ΥΠΕΥΘΥΝΟΣ ΕΡΓΑΣΤΗΡΙΩΝ: ΧΡΥΣΟΣΤΟΜΟΣ ΧΡΥΣΟΣΤΟΜΟΥ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2001 ΕΠΛ 121 ΕΡΓΑΣΤΗΡΙΑ ΨΗΦΙΑΚΩΝ

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

Επανάληψη Θεωρίας. Καστούμης Γιώργος

Επανάληψη Θεωρίας. Καστούμης Γιώργος ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΨΗ ΘΕΩΡΙΑΣ ΚΕΦΑΛΑΙΟ 1 Ορισµοί: Με τον όρο πρόβληµα εννοείται µια κατάσταση η οποία χρήζει αντιµετώπισης, απαιτεί λύση, η δε λύση της δεν είναι γνωστή,

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

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

ΠΕΡΙ ΜΕΤΑΒΑΣΗΣ ΑΠΟ ΤΑ ΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΕ ΙΑΓΡΑΜΜΑΤΑ ΟΜΗΣ Ε ΟΜΕΝΩΝ ΠΕΡΙ ΜΕΤΑΒΑΣΗΣ ΑΠΟ ΤΑ ΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΕ ΙΑΓΡΑΜΜΑΤΑ ΟΜΗΣ Ε ΟΜΕΝΩΝ Μερικές παρατηρήσεις και σκέψεις του συγγραφέα του βιβλίου Σχετικά µε τη µετάβαση από Ρ σε ΠΠ υπάρχουν 2 σηµαντικά ερωτήµατα:

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

Προγραμματισμός I (Θ)

Προγραμματισμός I (Θ) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός I (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Οκτώβριος 2017 Δρ. Δημήτρης Βαρσάμης Οκτώβριος

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

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

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Εκφράσεις και Λίγες Εντολές Οι εκφράσεις της C Τελεστές Απλές και σύνθετες εντολές Εντολές ελέγχου (επιλογής) Εισαγωγή σε

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

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια Περιεχόμενα Πρόλογος... 11 Κεφάλαιο 1ο. Εισαγωγή στη γλώσσα UML 1.1 Προσθέτοντας μια νέα μέθοδο...13 1.2 Πως αναπτύχθηκε η UML...14 1.3 Κατανοώντας την UML...15 1.4 Αναγνωρίζοντας τα επί μέρους τμήματα

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

Γενικές Πληροφορίες Πρέπει να προγραµµατίσουµε τα είδη επιλέγοντας τον κωδικό είδους ανάλογο µε την ύπαρξη ζυγαριάς ετικέτας- scanner ή όχι.

Γενικές Πληροφορίες Πρέπει να προγραµµατίσουµε τα είδη επιλέγοντας τον κωδικό είδους ανάλογο µε την ύπαρξη ζυγαριάς ετικέτας- scanner ή όχι. ELEGANT NET SUPER Για τη λειτουργία των κρεοπωλείων απαιτείται Ενηµέρωση Firmware (Λογισµικού) ιδίως για την ταµειακή SUPER καθώς αυτή η δυνατότητα προστέθηκε πρόσφατα στην ταµειακή µηχανή. Γενικές Πληροφορίες

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

4 η Θεµατική Ενότητα : Συνδυαστική Λογική. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

4 η Θεµατική Ενότητα : Συνδυαστική Λογική. Επιµέλεια διαφανειών: Χρ. Καβουσιανός 4 η Θεµατική Ενότητα : Συνδυαστική Λογική Επιµέλεια διαφανειών: Χρ. Καβουσιανός Λογικά Κυκλώµατα Ø Τα λογικά κυκλώµατα διακρίνονται σε συνδυαστικά (combinational) και ακολουθιακά (sequential). Ø Τα συνδυαστικά

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

Διαγράμματα Κλάσεων στη Σχεδίαση

Διαγράμματα Κλάσεων στη Σχεδίαση Διαγράμματα Κλάσεων στη Σχεδίαση περιεχόμενα παρουσίασης Αφηρημένες κλάσεις Ιδιότητες Λειτουργίες Απλοί τύποι Συσχετίσεις Εξάρτηση Διεπαφές αφηρημένες κλάσεις Οι αφηρημένες κλάσεις δεν μπορούν να δημιουργήσουν

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

1 η Θεµατική Ενότητα : Δυαδικά Συστήµατα

1 η Θεµατική Ενότητα : Δυαδικά Συστήµατα 1 η Θεµατική Ενότητα : Δυαδικά Συστήµατα Δεκαδικοί Αριθµοί Βάση : 10 Ψηφία : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Αριθµοί: Συντελεστές Χ δυνάµεις του 10 7392.25 = 7x10 3 + 3x10 2 + 9x10 1 + 2x10 0 + 2x10-1 + 5x10-2

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

Εφαρµογή EXTRA. ιαδικασία εξαγωγής της Μηχανογραφικής. έκδοσης ισοζυγίου στην εφαρµογή Extra Λογιστική ιαχείριση.

Εφαρµογή EXTRA. ιαδικασία εξαγωγής της Μηχανογραφικής. έκδοσης ισοζυγίου στην εφαρµογή Extra Λογιστική ιαχείριση. Εφαρµογή EXTRA ιαδικασία εξαγωγής της µηχανογραφικής έκδοσης ισοζυγίου στην εφαρµογή Extra Λογιστική ιαχείριση. Σελ.1 Το συγκεκριµένο εγχειρίδιο δηµιουργήθηκε για να βοηθήσει την κατανόηση της διαδικασίας

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

ΕΡΩΤΗΣΕΙΣ ΔΙΑΦΟΡΩΝ ΤΥΠΩΝ ΣΤΟ ΚΕΦΑΛΑΙΟ 2.2

ΕΡΩΤΗΣΕΙΣ ΔΙΑΦΟΡΩΝ ΤΥΠΩΝ ΣΤΟ ΚΕΦΑΛΑΙΟ 2.2 1. 1-Σ, 2-Σ, 3-Λ, 4-Σ, 5-Σ 2. 1-α, 2-α, 3-β, 4-β, 5-α, 6-α, 7-α, 8-β, 9-β, 10-β 3. Τι ονομάζουμε αλγόριθμο; Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο

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

ΑΝ.ΕΦ. Γ ΛΥΚΕΙΟΥ Αν η συνθήκη ισχύει, τότε εκτελούνται οι εντολές που βρίσκονται µεταξύ των λέξεων ΤΟΤΕ και και η εκτέλεση του προγράµµατος συνεχίζετα

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

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

Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών

Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Υλοποίηση ΑΤΔ με Συνδεδεμένες Λίστες -

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

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός 06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Αφαίρεση Abstraction "Η εννοιολογική

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

Μοντελοποίηση Πεδίου

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

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

Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές

Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές Ελληνικό Ανοικτό Πανεπιστήμιο ΓΤΠ61 Πληροφορική Πολυμέσα Αγγελική Μαζαράκη Τι είναι η UML Είναι μια γραφική γλώσσα μοντελοποίησης συστημάτων.

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

Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον υποδειγματική διδασκαλία Κεφ. 3 Δομές Δεδομένων & αλγόριθμοι

Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον υποδειγματική διδασκαλία Κεφ. 3 Δομές Δεδομένων & αλγόριθμοι Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον υποδειγματική διδασκαλία Κεφ. 3 Δομές Δεδομένων & αλγόριθμοι Αραποστάθης Μάριος Καθηγητής Πληροφορικής Πειραματικού Λυκείου Βαρβακείου http://users.sch.gr/mariosarapostathis

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

υναµικές οµές εδοµένων

υναµικές οµές εδοµένων υναµικές οµές εδοµένων Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: υναµικές οµές εδοµένων Γενικά υναµική έσµευση Μνήµης οµή τύπου structure αυτοαναφορικές δοµές Η δήλωση typedef στη C Αναπαράσταση

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

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004) 1 ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004) ιάλεξη 1 1.1 ΕΙΣΑΓΩΓΗ ΣΤΗ FORTRAN 77 Ένα πρόγραµµα σε οποιαδήποτε γλώσσα προγραµµατισµού δεν τίποτα άλλο από µια σειρά εντολών που πρέπει

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

Ορισµός της Στοίβας Περίληψη H λειτουργία της Στοίβας (γενικά, αλλά και στο QtSpim pim) Η χρησιµότητα της Στοίβας στους Μικροεπεξεργαστές Κλήση συνάρτ

Ορισµός της Στοίβας Περίληψη H λειτουργία της Στοίβας (γενικά, αλλά και στο QtSpim pim) Η χρησιµότητα της Στοίβας στους Μικροεπεξεργαστές Κλήση συνάρτ ΗΜΥ 213 Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών Παρουσίαση Εργαστηρίου 5 ιδάσκων: ρ. Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy Ορισµός της Στοίβας Περίληψη H λειτουργία της Στοίβας

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

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

ΕΡΓΑΣΙΕΣ ΟΝΤΟΚΕΝΤΡΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΕΡΓΑΣΙΕΣ ΟΝΤΟΚΕΝΤΡΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ 2016-2017 ΕΡΓΑΣΙΑ 1 (JAVA) Παράδοση 26/4/2017 Στα πλαίσια της εργασίας θα υλοποιηθεί ένα απλοϊκό πρόγραμμα κρατήσεων Ξενοδοχείων. Για απλοποίηση θα περιοριστούμε

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

Βασικά στοιχεία της Java

Βασικά στοιχεία της Java Βασικά στοιχεία της Java προτάσεις, εκφράσεις, µεταβλητές, σταθερές, τελεστές Ορισµοί Πρόταση (statement) είναι µία απλή εντολή σε µία γλώσσα προγραµµατισµού. Γιαπαράδειγµα: int x=12; Έκφραση (expression)

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

3 Αλληλεπίδραση Αντικειμένων

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

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

Στοίβες με Δυναμική Δέσμευση Μνήμης

Στοίβες με Δυναμική Δέσμευση Μνήμης ΕΠΛ 231 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ 10/02/10 Παύλος Αντωνίου Στοίβες με Δυναμική Δέσμευση Μνήμης Στοίβα: Στοίβα είναι μια λίστα που έχει ένα επιπλέον περιορισμό. Ο περιορισμός είναι ότι οι εισαγωγές

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

Περιπτώσεις Χρήσης για το Π.Σ. ΜΟ.ΔΙ.Π. Κρήτης

Περιπτώσεις Χρήσης για το Π.Σ. ΜΟ.ΔΙ.Π. Κρήτης ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΜΟΝΑΔΑ ΔΙΑΣΦΑΛΙΣΗΣ ΠΟΙΟΤΗΤΑΣ Ε.Π.: «ΕΚΠΑΙΔΕΥΣΗ ΚΑΙ ΔΙΑ ΒΙΟΥ ΜΑΘΗΣΗ» ΠΡΑΞΗ: ΜΟΔΙΠ ΤΟΥ Τ.Ε.Ι. ΚΡΗΤΗΣ ΕΠΙΣΤΗΜΟΝΙΚΟΣ ΥΠΕΥΘΥΝΟΣ: ΚΩΝ/ΝΟΣ ΣΑΒΒΑΚΗΣ Περιπτώσεις Χρήσης για

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

Επιχειρηµατικές ιαδικασίες: Εισαγωγικές Έννοιες & Αρχικά στάδια µοντελοποίησης

Επιχειρηµατικές ιαδικασίες: Εισαγωγικές Έννοιες & Αρχικά στάδια µοντελοποίησης ΟΙΚΟΝΟΜΙΚΌ ΠΑΝΕΠΙΣΤΉΜΙΟ ΑΘΗΝΏΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ Επιχειρηµατικές ιαδικασίες: Εισαγωγικές Έννοιες & Αρχικά στάδια µοντελοποίησης 1o φροντιστήριο στο µάθηµα Ανάλυση και µοντελοποίηση

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

Δοµές Δεδοµένων. 7η Διάλεξη Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης

Δοµές Δεδοµένων. 7η Διάλεξη Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης Δοµές Δεδοµένων 7η Διάλεξη Αφηρηµένοι Τύποι Δεδοµένων Ε. Μαρκάκης Περίληψη Στοίβα ώθησης προς τα κάτω Παραδείγµατα πελατών για στοίβες Υλοποιήσεις στοίβας µε πίνακες και λίστες Γενικές υλοποιήσεις Ουρές

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

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ (Οι ερωτήσεις µε κίτρινη υπογράµµιση είναι εκτός ύλης για φέτος) ΕΙΣΑΓΩΓΗ Q1. Οι Πρωταρχικοί τύποι (primitive types) στη Java 1. Είναι όλοι οι ακέραιοι και όλοι οι πραγµατικοί

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

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια.

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια. Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων 21/11/2016 Τεχνολογία Λογισμικού & Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Ανάλυση Συστημάτων Object Diagrams Διαγράμματα Αντικειμένων

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

o AND o IF o SUMPRODUCT

o AND o IF o SUMPRODUCT Πληροφοριακά Εργαστήριο Management 1 Information Συστήματα Systems Διοίκησης ΤΕΙ Τμήμα Ελεγκτικής Ηπείρου Χρηματοοικονομικής (Παράρτημα Πρέβεζας) και Αντικείµενο: Μοντελοποίηση προβλήµατος Θέµατα που καλύπτονται:

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

ιορθώσεις επί της 2 ης έκδοσης εκτύπωσης 2002

ιορθώσεις επί της 2 ης έκδοσης εκτύπωσης 2002 ιορθώσεις επί της 2 ης έκδοσης εκτύπωσης 2002 Καταγράφονται παρακάτω λάθη που αναφέρονται στην δεύτερη έκδοση του βιβλίου εκτύπωσης 2002. Τα λάθη εντοπίστηκαν πριν από την 03/01/2003. Γενική διόρθωση Αφορά

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

Η εταιρεία είναι οργανωµένη σε τµήµατα Κάθε ΤΜΗΜΑένα όνοµα, κωδικό και έναν εργαζόµενο που διευθύνει το τµήµα. Αποθηκεύεται η ηµεροµηνία που ανέλαβε

Η εταιρεία είναι οργανωµένη σε τµήµατα Κάθε ΤΜΗΜΑένα όνοµα, κωδικό και έναν εργαζόµενο που διευθύνει το τµήµα. Αποθηκεύεται η ηµεροµηνία που ανέλαβε ιάγραµµα Οντοτήτων - Συσχετίσεων Παύλος Εφραιµίδης Βάσεις εδοµένων ιάγραµµα Ο-Σ 1 Σχεδιασµός µιας Βάσης εδοµένων Τα βασικά βήµατα για το σχεδιασµό και την ανάπτυξη µιας Βάσης εδοµένων είναι: Ανάλυση Απαιτήσεων

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

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5 Περιεχόµενα 1 Εισαγωγή στις οµές εδοµένων 3 2 Στοίβα (Stack) 5 i ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ ii Πληροφορίες Εργαστηρίου Σκοπός του εργαστηρίου Το εργαστήριο οµές εδοµένων αποσκοπεί στην εφαρµογή των τεχνολογιών

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

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης Κ.Π. Γιαλούρης Στόχοι του σημερινού μαθήματος Εξοικείωση με τα περιβάλλοντα της Python Κατανόηση βασικών εννοιών & τεχνικών Τύπος δεδομένων Μεταβλητή Εντολή ανάθεση τιμής / εντολή αντικατάστασης Εισαγωγή

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

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑΤΩΝ ΕΞΕΤΑΣΕΩΝ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεµατική Ενότητα ΠΛΗ 2: Ψηφιακά Συστήµατα Ακαδηµαϊκό Έτος 24 25 Ηµεροµηνία Εξέτασης 29.6.25 Χρόνος Εξέτασης

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

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

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

Επαναληπτικές δοµές. µτ α.τ. Όχι. ! απαγορεύεται µέσα σε µία ΓΙΑ να µεταβάλλουµε τον µετρητή! διότι δεν θα ξέρουµε µετά πόσες επαναλήψεις θα γίνουν

Επαναληπτικές δοµές. µτ α.τ. Όχι. ! απαγορεύεται µέσα σε µία ΓΙΑ να µεταβάλλουµε τον µετρητή! διότι δεν θα ξέρουµε µετά πόσες επαναλήψεις θα γίνουν Επαναληπτικές δοµές Η λογική των επαναληπτικών διαδικασιών εφαρµόζεται όπου µία ακολουθία εντολών εφαρµόζεται σε ένα σύνολο περιπτώσεων που έχουν κάτι κοινό. Όταν ψάχνουµε θέση για να παρκάρουµε κοντά

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

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι Εισαγωγή Στον Προγραµµατισµό «C» Πίνακες Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Πίνακες στη C Ένας πίνακας στη C είναι

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

5.1 Θεωρητική εισαγωγή

5.1 Θεωρητική εισαγωγή ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 5 ΚΩ ΙΚΟΠΟΙΗΣΗ BCD Σκοπός: Η κατανόηση της µετατροπής ενός τύπου δυαδικής πληροφορίας σε άλλον (κωδικοποίηση/αποκωδικοποίηση) µε τη µελέτη της κωδικοποίησης BCD

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

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 3. Στοίβες & Ουρές 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 19/10/2017 Ανακεφαλαίωση:

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

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 3. Στοίβες & Ουρές 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 4/11/2016 Ανακεφαλαίωση:

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

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 2.4 Βασικές συνιστώσες/εντολές ενός αλγορίθμου 2.4.1 Δομή ακολουθίας ΚΕΦΑΛΑΙΟ 7 7.1 7.9 Σταθερές (constants): Προκαθορισμένες τιμές που παραμένουν

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

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΣΤΗΝ ΟΙΚΟΝΟΜΙΑ 7 Ο ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΑΠΟΣΤΟΛΙΑ ΠΑΓΓΕ Περιεχόμενα 2 Δυαδικό Σύστημα Προσημασμένοι δυαδικοί αριθμοί Αφαίρεση

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

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός ΗΥ : Αντικειµενοστρεφής Προγραµµατισµός http://www.csd.uoc.gr/~hy Β. Χριστοφίδης christop@ics.forth.gr Τµήµα Επιστήµης Υπολογιστών, Πανεπιστήµιο Κρήτης Ηράκλειο Κρήτης Γενικές Πληροφορίες Ώρες ιδασκαλίας

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

Κεφάλαιο 10 ο Υποπρογράµµατα

Κεφάλαιο 10 ο Υποπρογράµµατα Κεφάλαιο 10 ο Υποπρογράµµατα Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Η αντιµετώπιση των σύνθετων προβληµάτων και η ανάπτυξη των αντίστοιχων προγραµµάτων µπορεί να γίνει µε την ιεραρχική σχεδίαση,

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

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων

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

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

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

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

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

ΚΕΦΑΛΑΙΟ 7 ο. Έτσι ο προγραµµατισµός µε τη ΓΛΩΣΣΑ εστιάζεται στην ανάπτυξη του αλγορίθµου και τη µετατροπή του σε σωστό πρόγραµµα.

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

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

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

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

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

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to Κεφάλαιο 2 Δοµές Δεδοµένων Ι Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 Δοµές Δεδοµένων Ι Στην ενότητα αυτή θα γνωρίσουµε ορισµένες Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε

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

Διαγράμματα UML στην Ανάλυση. Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων

Διαγράμματα UML στην Ανάλυση. Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων Διαγράμματα UML στην Ανάλυση Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων περιεχόμενα παρουσίασης Διαγράμματα κλάσεων Διαγράμματα αντικειμένων διαγράμματα κλάσεων Χρησιμοποιούνται στην ανάλυση

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

σύνθεση και απλοποίησή τους θεωρήµατα της άλγεβρας Boole, αξιώµατα του Huntington, κλπ.

σύνθεση και απλοποίησή τους θεωρήµατα της άλγεβρας Boole, αξιώµατα του Huntington, κλπ. Εισαγωγή Εργαστήριο 2 ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ Σκοπός του εργαστηρίου είναι να κατανοήσουµε τον τρόπο µε τον οποίο εκφράζεται η ψηφιακή λογική υλοποιώντας ασκήσεις απλά και σύνθετα λογικά κυκλώµατα (χρήση του

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

ΚΕΦΑΛΑΙΟ 2 Βασικές έννοιες αλγορίθµων

ΚΕΦΑΛΑΙΟ 2 Βασικές έννοιες αλγορίθµων ΚΕΦΑΛΑΙΟ 2 Βασικές έννοιες αλγορίθµων Αλγόριθµος : Είναι ένα σύνολο βηµάτων, αυστηρά καθορισµένων κι εκτελέσιµων σε πεπερασµένο χρόνο, που οδηγούν στην επίλυση ενός προβλήµατος. Χαρακτηριστικά ενός σωστού

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

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα. ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων. Όταν ένα τμήμα προγράμματος επιτελεί ένα αυτόνομο

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

Οικονόμου Βαγγέλησ Διάλεξη Νο 2. Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2

Οικονόμου Βαγγέλησ Διάλεξη Νο 2. Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2 Οικονόμου Βαγγέλησ Διάλεξη Νο 2 Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2 1 Η έννοια τησ μεταβλητήσ έδωςε λύςη ςτο πρόβλημα τησ αναφοράσ ςτην κύρια μνήμη του υπολογιςτή. Οι γλώςςεσ προγραμματιςμού υποςτηρίζουν

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

Μοντελοποίηση Συστημάτων

Μοντελοποίηση Συστημάτων Εργασία για το μάθημα Μοντελοποίηση Συστημάτων 5 Νοεμβρίου 2015 Α. Στόχος Στην εργασία αυτή θα εξοικειωθείτε με τα πρώτα στάδια σχεδιασμού λογισμικού. Συγκεκριμένα, μετά την εκπόνηση της εργασίας θα πρέπει

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

a = 10; a = k; int a,b,c; a = b = c = 10;

a = 10; a = k; int a,b,c; a = b = c = 10; C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 4 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

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

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός ΗΥ : Αντικειµενοστρεφής Προγραµµατισµός http://www.csd.uoc.gr/~hy Β. Χριστοφίδης christop@ics.forth.gr Τµήµα Επιστήµης Υπολογιστών, Πανεπιστήµιο Κρήτης Ηράκλειο Κρήτης Γενικές Πληροφορίες Ώρες ιδασκαλίας

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

Στοιχεία από Assembly Γιώργος Μανής

Στοιχεία από Assembly Γιώργος Μανής Στοιχεία από Assembly 8086 Γιώργος Μανής Καταχωρητές καταχωρητές γενικής φύσης καταχωρητές δείκτες καταχωρητές αναφοράς καταχωρητές τµηµάτων ειδικοί καταχωρητές Καταχωρητές γενικής φύσης 16 bit ax, bx,

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

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

ΑΣΚΗΣΗ 4 ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΩΝ ΛΟΓΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ ΑΣΚΗΣΗ 4 ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΩΝ ΛΟΓΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ Αντικείμενο της άσκησης: Λογική και μεθοδολογία σχεδίασης αριθμητικών λογικών κυκλωμάτων και λειτουργική εξομοίωση με το λογισμικό EWB.. Αθροιστές. Σχεδίαση

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

περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης

περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης Περιπτώσεις Χρήσης περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης περιπτώσεις χρήσης Τι θα κάνει το λογισμικό για κάποιον

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

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Κ. Δεμέστιχας Εργαστήριο Πληροφορικής Γεωπονικό Πανεπιστήμιο Αθηνών Επικοινωνία μέσω e-mail: cdemest@aua.gr, cdemest@cn.ntua.gr 1 2. ΑΡΙΘΜΗΤΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΜΕΡΟΣ Α 2 Τεχνολογία

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

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Εαρινό εξάμηνο 2018-2019 Τμήμα Μαθηματικών ΑΠΘ Διδάσκουσα: Αγγελική Παπάνα Μεταδιδακτορική Ερευνήτρια Πολυτεχνική σχολή, Α.Π.Θ. & Οικονομικό Τμήμα, Πανεπιστήμιο

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

2.1 Αντικειµενοστρεφής προγραµµατισµός

2.1 Αντικειµενοστρεφής προγραµµατισµός 2.1 Αντικειµενοστρεφής προγραµµατισµός Στον αντικειµενοστρεφή προγραµµατισµό (object oriented programming, OOP) ένα πρόγραµµα υπολογιστή είναι ένα σύνολο αλληλεπιδρώντων αντικειµένων. Μπορεί να ειπωθεί

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

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

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: Σελίδα 1 από 11 Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: την επικοινωνία, µε τα υπόλοιπα ολοκληρωµένα κυκλώµατα του υπολογιστικού συστήµατος. την παροχή τροφοδοσίας

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

αριθμούς Βασικές ασκήσεις Βασική θεωρία iii) φυσικοί; ii) ακέραιοι; iii) ρητοί;

αριθμούς Βασικές ασκήσεις Βασική θεωρία iii) φυσικοί; ii) ακέραιοι; iii) ρητοί; Πράξεις με πραγματικούς αριθμούς Βασικές ασκήσεις Βασική θεωρία Ρητοί και άρρητοι αριθμοί. α) Ποιοι αριθμοί ονομάζονται: iii) φυσικοί; ii) ακέραιοι; iii) ρητοί; iv) άρρητοι; v) πραγματικοί; β) Να βρείτε

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

Η ακρίβεια ορίζεται σαν το πηλίκο των ευρεθέντων συναφών εγγράφων προς τα ευρεθέντα έγγραφα. Άρα για τα τρία συστήµατα έχουµε τις εξής τιµές:

Η ακρίβεια ορίζεται σαν το πηλίκο των ευρεθέντων συναφών εγγράφων προς τα ευρεθέντα έγγραφα. Άρα για τα τρία συστήµατα έχουµε τις εξής τιµές: Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών HY463 - Συστήµατα Ανάκτησης Πληροφοριών 2005-2006 Εαρινό Εξάµηνο 1 η Σειρά Ασκήσεων (Αξιολόγηση Αποτελεσµατικότητας Ανάκτησης) Άσκηση 1 (4 βαθµοί) Θεωρείστε

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

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

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

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

1.1 A. ΟΙ ΠΡΑΓΜΑΤΙΚΟΙ ΑΡΙΘΜΟΙ ΚΑΙ ΟΙ

1.1 A. ΟΙ ΠΡΑΓΜΑΤΙΚΟΙ ΑΡΙΘΜΟΙ ΚΑΙ ΟΙ . A. ΟΙ ΠΡΑΓΜΑΤΙΚΟΙ ΑΡΙΘΜΟΙ ΚΑΙ ΟΙ ΠΡΑΞΕΙΣ ΤΟΥΣ ΘΕΩΡΙΑ. Τα σύνολα των αριθµών Το σύνολο των φυσικών αριθµών. Το σύνολο των ακεραίων αριθµών. N {0,,, 3 } Z { 3,,, 0,,, 3 } Το σύνολο των ρητών αριθµών. Q

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

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

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)

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

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 9: Συναρτήσεις Ορισμός συναρτήσεων () { /* δήλωση μεταβλητών */ /* εντολές ελέγχου/επεξεργασίας */ o Μια συνάρτηση ορίζεται δίνοντας

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

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού Πρόλογος...21 μέρος A Εισαγωγή στην Τεχνολογία Λογισμικού 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1.1 Το λογισμικό...25 1.1.1 Ο ρόλος και η σημασία του λογισμικού...26 1.1.2 Οικονομική σημασία του λογισμικού...28

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

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

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

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

Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής

Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής περιεχόμενα παρουσίασης Διαγράμματα πακέτων Διαγράμματα συστατικών Διαγράμματα παράταξης Το μοντέλο των 4+1 όψεων τεκμηρίωση αρχιτεκτονικής και UML

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

Περιεχόµενα. Ανασκόπηση - Ορισµοί. Ο κύκλος ανάπτυξης προγράµµατος. Γλώσσες Προγραµµατισµού Ασκήσεις

Περιεχόµενα. Ανασκόπηση - Ορισµοί. Ο κύκλος ανάπτυξης προγράµµατος. Γλώσσες Προγραµµατισµού Ασκήσεις Προγραµµατισµός Η/Υ Ανασκόπηση - Ορισµοί Περιεχόµενα Ο κύκλος ανάπτυξης προγράµµατος Περιγραφή προβλήµατος Ανάλυση προβλήµατος Λογικό ιάγραµµα Ψευδοκώδικας Κωδικοποίηση Συντήρηση Γλώσσες Προγραµµατισµού

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

Οργάνωση Η/Υ. Γλώσσα Assembly. Τμήμα Εφαρμσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Α. Χατζηγεωργίου-Η. Σακελλαρίου

Οργάνωση Η/Υ. Γλώσσα Assembly. Τμήμα Εφαρμσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Α. Χατζηγεωργίου-Η. Σακελλαρίου Οργάνωση Η/Υ Γλώσσα Assembly Τμήμα Εφαρμσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Α. Χατζηγεωργίου-Η. Σακελλαρίου Δομή του TRN KME Μνήμη Διάδρομος Δεδομένων Διάδρομος Διευθύνσεων Διάδρομος Ελέγχου Μονάδα

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

Βασικές οµές εδοµένων

Βασικές οµές εδοµένων Βασικές οµές εδοµένων Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Αφηρηµένοι Τύποι εδοµένων Οι ΑΤ Στοίβα και Ουρά Υλοποίηση των ΑΤ Στοίβα και Ουρά µε ιαδοχική και υναµική Χορήγηση Μνήµης

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