Εισαγωγή στον Προγραμματισμό Υπολογιστών (3125)
Αντώνης Δημάκης
Το μάθημα Εισαγωγή στον Προγραμματισμό Υπολογιστών διδάσκεται στο 1ο εξάμηνο του προπτυχιακού προγράμματος σπουδών του Τμήματος Πληροφορικής. Είναι υποχρεωτικό μάθημα του πυρήνα πληροφορικής του προγράμματος σπουδών.
Είναι εισαγωγικό μάθημα στον προγραμματισμό και έχει ως σκοπό να γνωρίσει ο πρωτοετής φοιτητής θεμελιώδεις έννοιες δόμησης προγραμμάτων όπως συναρτήσεις, δεδομένα, ελέγχο ροής εκτέλεσης, επαναληπτικούς και αναδρομικούς υπολογισμούς, προγραμματισμό με αντικείμενα, και βασικό χειρισμό αρχείων.
Καθώς η γλώσσα προγραμματισμού που χρησιμοποιείται στα πλαίσια του μαθήματος είναι η Python, οι φοιτητές θα εξοικειωθούν με τα βασικά στοιχεία της.
- Περιγραφή υπολογισμών
- συναρτήσεις
- επαναληπτικοί υπολογισμοί
- συναρτήσεις υψηλότερου επιπέδου
- αναδρομικοί υπολογισμοί
- Περιγραφή πληροφορίας
- αφηρημένα δεδομένα
- ακολουθίες
- μεταλλασσόμενα δεδομένα (mutable data)
- Στοιχεία αντικειμενοστραφούς προγραμματισμού
- αντικείμενα & τάξεις
- κληρονομικότητα, πολυμορφισμός
- Χειρισμός ειδικών καταστάσεων με εξαιρέσεις (exceptions)
- Χειρισμός αρχείων, συσκευών εισόδου/εξόδου
- Ροές (streams)
- Διερμηνεία προγραμμάτων (*αν υπάρξει χρόνος)
Το μάθημα Εισαγωγή στον Προγραμματισμό Υπολογιστών διδάσκεται στο 1ο εξάμηνο του προπτυχιακού προγράμματος σπουδών του Τμήματος Πληροφορικής. Είναι υποχρεωτικό μάθημα του πυρήνα πληροφορικής του προγράμματος σπουδών.
Είναι εισαγωγικό μάθημα στον προγραμματισμό και έχει ως σκοπό να γνωρίσει ο πρωτοετής φοιτητής θεμελιώδεις έννοιες δόμησης προγραμμάτων όπως συναρτήσεις, δεδομένα, ελέγχο ροής εκτέλεσης, επαναληπτικούς και αναδρομικούς υπολογισμούς, προγραμματισμό με αντικείμενα, και βασικό χειρισμό αρχείων.
Καθώς η γλώσσα προγραμματισμού που χρησιμοποιείται στα πλαίσια του μαθήματος είναι η Python, οι φοιτητές θα εξοικειωθούν με τα βασικά στοιχεία της.
- Περιγραφή υπολογισμών
- συναρτήσεις
- επαναληπτικοί υπολογισμοί
- συναρτήσεις υψηλότερου επιπέδου
- αναδρομικοί υπολογισμοί
- Περιγραφή πληροφορίας
- αφηρημένα δεδομένα
- ακολουθίες
- μεταλλασσόμενα δεδομένα (mutable data)
- Στοιχεία αντικειμενοστραφούς προγραμματισμού
- αντικείμενα & τάξεις
- κληρονομικότητα, πολυμορφισμός
- Χ
Το μάθημα Εισαγωγή στον Προγραμματισμό Υπολογιστών διδάσκεται στο 1ο εξάμηνο του προπτυχιακού προγράμματος σπουδών του Τμήματος Πληροφορικής. Είναι υποχρεωτικό μάθημα του πυρήνα πληροφορικής του προγράμματος σπουδών.
Είναι εισαγωγικό μάθημα στον προγραμματισμό και έχει ως σκοπό να γνωρίσει ο πρωτοετής φοιτητής θεμελιώδεις έννοιες δόμησης προγραμμάτων όπως συναρτήσεις, δεδομένα, ελέγχο ροής εκτέλεσης, επαναληπτικούς και αναδρομικούς υπολογισμούς, προγραμματισμό με αντικείμενα, και βασικό χειρισμό αρχείων.
Καθώς η γλώσσα προγραμματισμού που χρησιμοποιείται στα πλαίσια του μαθήματος είναι η Python, οι φοιτητές θα εξοικειωθούν με τα βασικά στοιχεία της.
- Περιγραφή υπολογισμών
- συναρτήσεις
- επαναληπτικοί υπολογισμοί
- συναρτήσεις υψηλότερου επιπέδου
- αναδρομικοί υπολογισμοί
- Περιγραφή πληροφορίας
- αφηρημένα δεδομένα
- ακολουθίες
- μεταλλασσόμενα δεδομένα (mutable data)
- Στοιχεία αντικειμενοστραφούς προγραμματισμού
- αντικείμενα & τάξεις
- κληρονομικότητα, πολυμορφισμός
- Χ
Περίγραμμα
Περιεχόμενο μαθήματος
- Περιγραφή υπολογισμών
- συναρτήσεις
- επαναληπτικοί υπολογισμοί
- συναρτήσεις υψηλότερου επιπέδου
- αναδρομικοί υπολογισμοί
- Περιγραφή πληροφορίας
- αφηρημένα δεδομένα
- ακολουθίες
- μεταλλασσόμενα δεδομένα (mutable data)
- Στοιχεία αντικειμενοστραφούς προγραμματισμού
- αντικείμενα & τάξεις
- κληρονομικότητα, πολυμορφισμός
- Χειρισμός ειδικών καταστάσεων με εξαιρέσεις (exceptions)
- Χειρισμός αρχείων, συσκευών εισόδου/εξόδου
- Ροές (streams)
- Διερμηνεία προγραμμάτων (*αν υπάρξει χρόνος)
Εκπαιδευτικές Δραστηριότητες
Διαλέξεις: 9-11 Τρίτη & Παρασκευή στο αμφιθέατρο Β
Εργαστήρια: πρόγραμμα τμημάτων (χειμερινό 2024)
Ασκήσεις: 4 ή 5 σειρές ασκήσεων διάρκειας περίπου 2 εβδομάδων η καθεμία
Εργαστηριακή εξέταση: προγραμματιστική εξέταση στο χώρο των εργαστηρίων, Η εργαστηριακή εξέταση όλων των φοιτητών θα γίνει την τελευταία εβδομάδα μαθημάτων.
Τελική εξέταση: γραπτή εξέταση που περιλαμβάνει συγγραφή προγράμματος (στο χαρτί - όχι σε Η/Υ) κατά τη διάρκεια της εξεταστικής περιόδου Οι ημ/νίες των εξετάσεων ανακοινώνονται στην κεντρική σελίδα του ΟΠΑ.
Συγγράμματα
Διανομή από Σύστημα Εύδοξος:
Ελεύθερη διανομή από διαδίκτυο:
1.Εισαγωγή στον προγραμματισμό με την Python, Ν. Α. Αγγελιδάκης, 2015
2.Εισαγωγή στον Προγραμματισμό με αρωγό τη γλώσσα Python, Γ. Μανής, 2015
Η δομή και παρουσίαση της ύλης βασίζεται στα δύο πρώτα κεφάλαια του ηλεκτρονικού σύγγραμματος (στα αγγλικά):
Composing Programs, John DeNero, 2015: βασισμένο με τη σειρά του στο Structure and Interpretation of Computer Programs, Abelson, Sussman & Sussman, 1979 [online έκδοση]Ανθρώπινο Δυναμικό
Διδάσκων:
Αντώνης Δημάκης dimakis@aueb.gr
γραφείο: Τροίας 2, 506, 5ος όροφος
Ώρες γραφείου: Τρίτη 1-3, Παρασκευή 1-3 (και online μέσω MS Teams)
Διδάσκοντες εργαστηρίων:
Χρήστος Καλέργης xsk@aueb.gr
Μαρία Τογαντζή mst@aueb.gr
Μελίνα Ραπτάκη mraptaki@aueb.gr
Χριστόδουλος Σαντοριναίος santgchr@gmail.com
Λεωνίδας Κοντογιάννης leo.kontogiannis@aueb.gr
Βασίλειος-Έκτωρ Κώτσης-Πανακάκης vas.kotsispanakakis@aueb.gr
Διορθωση ασκήσεων
η διδακτική ομάδα
Τρόποι αξιολόγησης / εξέτασης
Ο τελικός βαθμός στα μάθημα προκύπτει κατά 60% από τον βαθμό στην εξεταστική περίοδο Ιανουαρίου, κατά 30% από τον βαθμό των ασκήσεων και κατά 10% από τον βαθμό στην εργαστηριακή εξέταση (η οποία πραγματοποιείται κατά την τελευταία εβδομάδα μαθημάτων).
Μέθοδοι διδασκαλίας
Δια ζώσης διαλέξεις και εργαστήρια.
- Περιγραφή υπολογισμών
- συναρτήσεις
- επαναληπτικοί υπολογισμοί
- συναρτήσεις υψηλότερου επιπέδου
- αναδρομικοί υπολογισμοί
- Περιγραφή πληροφορίας
- αφηρημένα δεδομένα
- ακολουθίες
- μεταλλασσόμενα δεδομένα (mutable data)
- Στοιχεία αντικειμενοστραφούς προγραμματισμού
- αντικείμενα & τάξεις
- κληρονομικότητα, πολυμορφισμός
- Χειρισμός ειδικών καταστάσεων με εξαιρέσεις (exceptions)
- Χειρισμός αρχείων, συσκευών εισόδου/εξόδου
- Ροές (streams)
- Διερμηνεία προγραμμάτων (*αν υπάρξει χρόνος)
Διαλέξεις: 9-11 Τρίτη & Παρασκευή στο αμφιθέατρο Β
Εργαστήρια: πρόγραμμα τμημάτων (χειμερινό 2024)
Ασκήσεις: 4 ή 5 σειρές ασκήσεων διάρκειας περίπου 2 εβδομάδων η καθεμία
Εργαστηριακή εξέταση: προγραμματιστική εξέταση στο χώρο των εργαστηρίων, Η εργαστηριακή εξέταση όλων των φοιτητών θα γίνει την τελευταία εβδομάδα μαθημάτων.
Τελική εξέταση: γραπτή εξέταση που περιλαμβάνει συγγραφή προγράμματος (στο χαρτί - όχι σε Η/Υ) κατά τη διάρκεια της εξεταστικής περιόδου Οι ημ/νίες των εξετάσεων ανακοινώνονται στην κεντρική σελίδα του ΟΠΑ.
Ελεύθερη διανομή από διαδίκτυο:
Διδάσκων: |
Αντώνης Δημάκης dimakis@aueb.gr γραφείο: Τροίας 2, 506, 5ος όροφος Ώρες γραφείου: Τρίτη 1-3, Παρασκευή 1-3 (και online μέσω MS Teams) |
Διδάσκοντες εργαστηρίων: |
Χρήστος Καλέργης xsk@aueb.gr |
Μαρία Τογαντζή mst@aueb.gr |
|
Μελίνα Ραπτάκη mraptaki@aueb.gr |
|
Χριστόδουλος Σαντοριναίος santgchr@gmail.com | |
Λεωνίδας Κοντογιάννης leo.kontogiannis@aueb.gr
|
|
Βασίλειος-Έκτωρ Κώτσης-Πανακάκης vas.kotsispanakakis@aueb.gr | |
Διορθωση ασκήσεων |
η διδακτική ομάδα |
Ο τελικός βαθμός στα μάθημα προκύπτει κατά 60% από τον βαθμό στην εξεταστική περίοδο Ιανουαρίου, κατά 30% από τον βαθμό των ασκήσεων και κατά 10% από τον βαθμό στην εργαστηριακή εξέταση (η οποία πραγματοποιείται κατά την τελευταία εβδομάδα μαθημάτων).
Δια ζώσης διαλέξεις και εργαστήρια.
Γενικές οδηγίες για όλες τις σειρές ασκήσεων
- (15/10) Διάλεξη 0: Πληροφορίες για το μάθημα, Εισαγωγή
- (18/10) Διάλεξη 1: Τιμές, εκφράσεις
- (22/10) Διάλεξη 2: Τελεστές
- (25/10) Διάλεξη 3: Κλήσεις, ονόματα, αποτίμηση κλήσεων, μη γνήσιες συναρτήσεις
- (29/10) Διάλεξη 4: Ορισμός συναρτήσεων, περιβάλλον αποτίμησης ονομάτων, αποτίμηση συναρτήσεων
- (1/11) Διάλεξη 5: Ορισμός συναρτήσεων (συν.). Εντολές εκτέλεσης υπό συνθήκη
- (5/11) Διάλεξη 6: Εντολές εκτέλεσης υπό συνθήκη (συν.)
- (8/11) Διάλεξη 7: Συναρτήσεις υψηλότερου επιπέδου: συναρτήσεις συναρτήσεων
- (12/11) Διάλεξη 8: Συναρτήσεις υψηλότερου επιπέδου: συναρτήσεις που επιστρέφουν συναρτήσεις
- (19/11) Διάλεξη 9: Αναδρομικές συναρτήσεις
- (22/11) Διάλεξη 10: Αναδρομικές συναρτήσεις (συν.)
- (26/11) Διάλεξη 11: Αφαιρέσεις δεδομένων
-
(29/11) Διάλεξη 12: Ακολουθίες, επεξεργασία ακολουθιών
- Εργαστήριο 0: Περιβάλλον προγραμματισμού της Python
- Εργαστήριο 1: Τελεστές, εκφράσεις κλήσης [λύσεις]
- Εργαστήριο 2: Είσοδος/έξοδος με input/print, ορισμός συναρτήσεων [λύσεις]
- Εργαστήριο 3: Επαναληπτικοί υπολογισμοί [λύσεις]
- Εργαστήριο 4: Συναρτήσεις υψηλότερου επιπέδου [λύσεις]
- Εργαστήριο 5: Αναδρομικοί υπολογισμοί [λύσεις]
-
Εργαστήριο 6: Αφαιρέσεις δεδομένων, ακολουθίες
Οδηγίες
Το εργαστήρια αρχίζουν από την Τετάρτη 16 Οκτωβρίου. Για να παρακολουθήσετε δεν απαιτείται να το δηλώσετε κάπου, απλά πηγαίνετε στο τμήμα εργαστηρίου που ανήκετε:
- Εάν έχετε ολοκληρώσει την εγγραφή σας στο ΟΠΑ και έχετε ιδρυματικό λογαριασμό, τότε θα βρείτε το τμήμα σας στον παρακάτω πίνακα χρησμοποιώντας τα 3 τελευταία ψηφία του αριθμού μητρώου (ΑΜ). (Το ίδιο ισχύει για τους φοιτητές από άλλα τμήματα.)
- Εάν δεν έχει ολοκληρωθεί η εγγραφή σας στο ΟΠΑ είτε δεν έχετε ιδρυματικό λογαριασμό, τότε ανήκετε στο τμήμα 8 στον πίνακα που ακολουθεί.
Τμήμα |
Ημέρα & ώρα |
Διδάσκων |
Αίθουσα |
3 τελευταία ψηφία AM |
1 |
Δευτέρα 13:00-15:00 |
Αίθουσα 1 Κ. Υ. |
000 - 035 |
|
2 |
Δευτέρα 15:00-17:00 |
CSLAB 2 |
036 - 071 |
|
3 |
Τετάρτη 17:00-19:00 |
Αίθουσα 1 Κ. Υ. |
072 - 107 |
|
4 |
Πέμπτη 9:00-11:00 |
Αίθουσα 2 Κ. Υ. |
108 - 143 |
|
5 |
Πέμπτη 13:00-15:00 |
CSLAB 2 |
144 - 179 |
|
6 |
Πέμπτη 19:00-21:00 |
CSLAB 2 |
180 - 215 |
|
7 |
Παρασκευή 13:00-15:00 |
CSLAB 2 |
216 - 251 |
|
8 |
Παρασκευή 15:00-17:00 |
CSLAB 1 |
252 - ή χωρίς ΑΜ Μόνο με δικό σας υπολογιστή αν δεν έχετε ΑΜ |
Σημειώσεις:
- Είναι σημαντικό να πηγαίνετε στο τμήμα που ανήκετε ειδικά στην αρχή του εξαμήνου όπου δεν θα υπάρχουν κενές θέσεις στα άλλα τμήματα.
- Όλα τα εργαστήρια (Αίθουσες 1 & 2 Κέντρου Υπολογιστών (Κ. Υ.), CSLAB 1, CSLAB 2) βρίσκονται στην πτέρυγα Δεριγνύ. Το CSLAB 1 βρίσκεται στο 2ο όροφο, τα υπόλοιπα στον 3ο.
-
Φοιτητές από άλλα τμήματα (εκτός πληροφορικής) μπορούν να αποκτήσουν πρόσβαση στους υπολογιστές των εργαστηρίων CSLAB 1 και 2 δηλώνοντάς το στην φόρμα εδώ.