Γενικά στοιχεία
Το μάθημα αποτελεί λογική συνέχεια του μαθήματος του 1ου εξαμήνου "Εισαγωγή στην Πληροφορική" και επεκτείνεται σε θέματα δομών δεδομένων, αλγορίθμων, κλάσεων και αντικειμενοστρεφούς προγραμματισμού.
Θεωρείται δεδομένη η ευχέρεια στη χρήση των διαδικασιών: χρήση συναρτήσεων, εισοδος/έξοδος με αρχεία κειμένου, πίνακες από/προς αρχεία, εφαρμογή διαχείρισης γεωμετρικών οντοτήτων (με πίνακες και αρχεία).
Θεματολογία μαθήματος:
- Αναδρομικές συναρτήσεις.
- Αλγόριθμος ταξινόμησης quicksort και εφαρμογές σε πίνακες.
- Ενσωμάτωση και χρήση έτοιμων βιβλιοθηκών λογισμικού, τεχνικές ελέγχου και αποσφαλμάτωσης λογισμικού.
- Δείκτες, δυναμική παραχώρηση μνήμης, δυναμικός ορισμός πινάκων, εφαρμογές.
- Δομές δεδομένων: structures, τύποι οριζόμενοι από το χρήστη, επίλυση αναφορών σε πίνακες με structures.
- Εφαρμογή διαχείρισης γεωμετρικών οντοτήτων (με πίνακες από structures και αρχεία).
- Κλάσεις: ορατότητα πεδίων και μεθόδων, namespaces, χαρακτηριστικές μέθοδοι, ροή ελέγχου προγράμματος. Στοιχεία αντικειμενοστρεφούς προγραμματισμού.
- Εφαρμογή διαχείρισης γεωμετρικών οντοτήτων (με κλάσεις).
- Εισαγωγή και απλές εφαρμογές στο υπολογιστικό περιβάλλον MATLAB.
Για την εμπέδωση των εννοιών και την απόκτηση ευχέρειας στην λύση προβλημάτων με χρήση του υπολογιστικού περιβάλλοντος της γλώσσας C++ είναι απαραίτητη η πρακτική εξάσκηση στο Εργαστήριο (ΔΕΠΥ). Η συνολική παρουσία και οι επιδόσεις στις ασκήσεις στο εργαστήριο θα αξιολογηθούν και θα συμμετέχουν στην τελική βαθμολογία του μαθήματος με ποσοστό περίπου 40%.
Βασίλειος Βεσκούκης, Αναπληρωτής Καθηγητής, τηλ 210 772 1688, email: v.vescoukis@cs.ntua.gr
Ρωμύλος Κορακίτης, Καθηγητής, τηλ 210 772 2723, email: romylos@survey.ntua.gr
Νικόλαος Δουλάμης, Επίκουρος Καθηγητής, τηλ 210 772 2678, email: ndoulam@cs.ntua.gr
Αναστάσιος Δουλάμης, Επίκουρος Καθηγητής, τηλ 210 772 2678, email: adoulam@cs.ntua.gr