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

Προγραμματισμός Ι

1. ΓΕΝΙΚΑ

ΣΧΟΛΗ Σχολή Μηχανικών
ΤΜΗΜΑ Τμήμα Μηχανικών Πληροφορικής, Υπολογιστών και Τηλεπικοινωνιών
ΕΠΙΠΕΔΟ ΣΠΟΥΔΩΝ Προπτυχιακό
ΚΩΔΙΚΟΣ ΜΑΘΗΜΑΤΟΣ %cf%80%ce%bb%cf%8501032 ΕΞΑΜΗΝΟ ΣΠΟΥΔΩΝ 1o
ΤΙΤΛΟΣ ΜΑΘΗΜΑΤΟΣ Προγραμματισμός Ι
ΑΥΤΟΤΕΛΕΙΣ ΔΙΔΑΚΤΙΚΕΣ ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ
σε περίπτωση που οι πιστωτικές μονάδες απονέμονται σε διακριτά μέρη του μαθήματος π.χ. Διαλέξεις, Εργαστηριακές Ασκήσεις κ.λπ. Αν οι πιστωτικές μονάδες απονέμονται ενιαία για το σύνολο του μαθήματος αναγράψτε τις εβδομαδιαίες ώρες διδασκαλίας και το σύνολο των πιστωτικών μονάδων.
ΕΒΔΟΜΑΔΙΑΙΕΣ ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ ΠΙΣΤΩΤΙΚΕΣ ΜΟΝΑΔΕΣ
Διαλέξεις 1 5
Ασκήσεις Πράξης 1
Εργαστηριακές Ασκήσεις 2
Προσθέστε σειρές αν χρειαστεί. Η οργάνωση διδασκαλίας και οι διδακτικές μέθοδοι που χρησιμοποιούνται περιγράφονται αναλυτικά στο 4.    
ΤΥΠΟΣ ΜΑΘΗΜΑΤΟΣ
Γενικής Υποδομής (ΓΥ),Ειδικής Υποδομής (ΕΥ), Γενικών Γνώσεων (ΓΓΔ) και Επιστημονικής Περιοχής (ΔΔΤΝ, ΕΔ, ΕΥΣ, ΗΛ, ΠΑ) .
 Γενικού υποβάθρου
ΠΡΟΑΠΑΙΤΟΥΜΕΝΑ ΜΑΘΗΜΑΤΑ:  
ΓΛΩΣΣΑ ΔΙΔΑΣΚΑΛΙΑΣ και ΕΞΕΤΑΣΕΩΝ:  Ελληνικά
ΤΟ ΜΑΘΗΜΑ ΠΡΟΣΦΕΡΕΤΑΙ ΣΕ ΦΟΙΤΗΤΕΣ ERASMUS Ναι
ΗΛΕΚΤΡΟΝΙΚΗ ΣΕΛΙΔΑ ΜΑΘΗΜΑΤΟΣ (URL) http://teachers.teicm.gr/dvarsam/index.php/programmatismos-i-theory/

2. ΜΑΘΗΣΙΑΚΑ ΑΠΟΤΕΛΕΣΜΑΤΑ

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

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

Μετά την παρακολούθηση του μαθήματος οι φοιτητές θα πρέπει να:

  • Γνωρίζουν και να κατανοούν τα βασικά ζητήματα δημιουργίας προγράμματος στη γλώσσα προγραμματισμού C.
  • Αναλύουν προγραμματιστικά προβλήματα που απαιτούν τη χρήση μεταβλητών, σταθερών, τελεστών, προτάσεων επανάληψης και διακλάδωσης.
  • Επιτελούν λειτουργίες εισόδου-εξόδου δεδομένων.
  • Να δημιουργούν και να διαχειρίζονται πολυδιάστατους πίνακες, αλφαριθμητικά και πίνακες αλφαριθμητικών.
  • Δημιουργούν τους δικούς τους τύπους δεδομένων.
  • Αξιοποιούν τις δυνατότητες συγγραφής κώδικα, μεταγλώττισης, σύνδεσης και εκτέλεσης προγράμματος που παρέχει ένα ολοκληρωμένο περιβάλλον ανάπτυξης (IDE, ελεύθερο λογισμικό).
  • Κατανοούν και υλοποιούν απλούς αλγορίθμους διαχείρισης δεδομένων.
Γενικές Ικανότητες
Λαμβάνοντας υπόψη τις γενικές ικανότητες που πρέπει να έχει αποκτήσει ο πτυχιούχος (όπως αυτές αναγράφονται στο Παράρτημα Διπλώματος και παρατίθενται ακολούθως) σε ποια / ποιες από αυτές αποσκοπεί το μάθημα;.
Αναζήτηση, ανάλυση και σύνθεση δεδομένων και πληροφοριών με τη χρήση και των απαραίτητων τεχνολογιών - Προσαρμογή σε νέες καταστάσεις - Λήψη αποφάσεων - Αυτόνομη εργασία - Ομαδική εργασία - Εργασία σε διεθνές περιβάλλον - Εργασία σε διεπιστημονικό περιβάλλον - Παράγωγή νέων ερευνητικών ιδεών Σχεδιασμός και διαχείριση έργων - Σεβασμός στη διαφορετικότητα και στην πολυπολιτισμικότητα - Σεβασμός στο φυσικό περιβάλλον - Επίδειξη κοινωνικής, επαγγελματικής και ηθικής υπευθυνότητας και ευαισθησίας σε θέματα φύλου - Άσκηση κριτικής και αυτοκριτικής - Προαγωγή της ελεύθερης, δημιουργικής και επαγωγικής σκέψης
  • Aυτόνομη εργασία
  • Ανάλυση και σχεδίαση αλγοριθμικών διαδικασιών
  • Προαγωγή της ελεύθερης, δημιουργικής και επαγωγικής σκέψης

3. ΠΕΡΙΕΧΟΜΕΝΟ ΜΑΘΗΜΑΤΟΣ

  • Γενικά περί προγραμματισμού Η/Υ, εργαλεία ανάλυσης (φυσική γλώσσα, διάγραμμα ροής, ψευδοκώδικας), μεταγλωττιστής, συνδέτης, διαδικασία αποσφαλμάτωσης και εκτέλεσης προγραμμάτων.
  • Δομή προγράμματος, αρχεία κεφαλίδας, κύρια συνάρτηση, λέξεις κλειδιά, δεσμευμένες λέξεις, αναγνωριστές, κανόνες δημιουργίας ευανάγνωστου προγράμματος.
  • Μεταβλητές: δήλωση, ονοματοδοσία, τύποι και χρήση μεταβλητών.
  • Μορφοποιούμενες εντολές ανάγνωσης και εγγραφής.
  • Ι/Ο κονσόλας, συναρτήσεις getchar, getch, getche, putchar.
  • Πίνακες: δήλωση, απόδοση αρχικών τιμών, εγγραφή κι ανάγνωση πινάκων, αποθήκευση στη μνήμη, πολυδιάστατοι πίνακες.
  • Συμβολοσειρές: δήλωση, απόδοση αρχικών τιμών, εγγραφή κι ανάγνωση συμβολοσειρών, αποθήκευση στη μνήμη.
  • Συναρτήσεις συμβολοσειρών, αλφαριθμητικές σταθερές.
  • Τελεστές – εκφράσεις: ορισμός, σύμβολα, σημειολογίες τελεστών, ένθετες εκφράσεις, προτεραιότητα – προσεταιριστικότητα τελεστών.
  • Τελεστές αύξησης – μείωσης, τελεστές ανάθεσης, συσχετιστικοί – αριθμητικοί τελεστές, λογικοί τελεστές.τελεστής μετατροπής, τελεστής sizeof, υποθετικός τελεστής.
  • Προτάσεις ελέγχου ροής, υπό συνθήκη διακλάδωση με if-else και switch.
  • Προτάσεις επανάληψης, βρόχοι με συνθήκες εισόδου – εξόδου, οδηγούμενοι από γεγονός – μετρητή, βρόχοι for, βρόχοι while, do while.
  • Μετατροπή βρόχων, διακοπτόμενοι βρόχοι – break, ένθετοι βρόχοι, ρητή διακλάδωση – goto, ο τελεστής κόμμα, κανόνες χρήσης προτάσεων ροής ελέγχου.
  • Ένθετες δομές, πίνακες δομών, απαριθμητοί τύποι δεδομένων (enumerated).
  • Εφαρμογή σε πραγματικά προβλήματα.

4. ΔΙΔΑΚΤΙΚΕΣ και ΜΑΘΗΣΙΑΚΕΣ ΜΕΘΟΔΟΙ - ΑΞΙΟΛΟΓΗΣΗ

ΤΡΟΠΟΣ ΠΑΡΑΔΟΣΗΣ
Πρόσωπο με πρόσωπο, Εξ αποστάσεως εκπαίδευση κ.λπ.
  •  Θεωρητική από έδρας διδασκαλία με συζήτηση και ενεργή συμμετοχή των φοιτητών. Κατά την διάρκεια του μαθήματος γίνονται παρουσιάσεις σε powerpoint και εκτελούνται ενδεικτικά παραδείγματα-προγράμματα με χρήση ελεύθερου λογισμικού.
  • Εργαστηριακές ασκήσεις και ατομικές εργασίες δημιουργίας προγραμμάτων
ΧΡΗΣΗ ΤΕΧΝΟΛΟΓΙΩΝ ΠΛΗΡΟΦΟΡΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ
Χρήση Τ.Π.Ε. στη Διδασκαλία, στην Εργαστηριακή Εκπαίδευση, στην Επικοινωνία με τους φοιτητές
  • Χρήση εξειδικευμένου λογισμικού.
  • Υποστήριξη της μαθησιακής διαδικασίας μέσω της ηλεκτρονικής πλατφόρμας ECLASS
  • Ηλεκτρονικές Ασκήσεις Αυτοαξιολόγησης.
  • Επικοινωνία με φοιτητές μέσω e-mail και της ιστοσελίδας του μαθήματος.
ΟΡΓΑΝΩΣΗ ΔΙΔΑΣΚΑΛΙΑΣ
Περιγράφονται αναλυτικά ο τρόπος και μέθοδοι διδασκαλίας. Διαλέξεις, Σεμινάρια, Εργαστηριακή Άσκηση, Άσκηση Πεδίου, Μελέτη & ανάλυση βιβλιογραφίας, Φροντιστήριο, Πρακτική (Τοποθέτηση), Κλινική Άσκηση, Καλλιτεχνικό Εργαστήριο, Διαδραστική διδασκαλία, Εκπαιδευτικές επισκέψεις, Εκπόνηση μελέτης (project), Συγγραφή εργασίας / εργασιών, Καλλιτεχνική δημιουργία, κ.λπ. Αναγράφονται οι ώρες μελέτης του φοιτητή για κάθε μαθησιακή δραστηριότητα καθώς και οι ώρες μη καθοδηγούμενης μελέτης ώστε ο συνολικός φόρτος εργασίας σε επίπεδο εξαμήνου να αντιστοιχεί στα standards του ECTS

Οργάνωση Διδασκαλίας

ΔραστηριότηταΦόρτος εργασίας εξαμήνου
Διαλέξεις13
Ασκήσεις Πράξης13
Εργαστηριακές Ασκήσεις26
Συγγραφή εργαστηριακών αναφορών20
Αυτοτελής Μελέτη53
Σύνολο125
ΑΞΙΟΛΟΓΗΣΗ ΦΟΙΤΗΤΩΝ
Περιγραφή της διαδικασίας αξιολόγησης Γλώσσα Αξιολόγησης, Μέθοδοι αξιολόγησης, Διαμορφωτική ή Συμπερασματική, Δοκιμασία Πολλαπλής Επιλογής, Ερωτήσεις Σύντομης Απάντησης, Ερωτήσεις Ανάπτυξης Δοκιμίων, Επίλυση Προβλημάτων, Γραπτή Εργασία, Έκθεση / Αναφορά, Προφορική Εξέταση, Δημόσια Παρουσίαση, Εργαστηριακή Εργασία, Κλινική Εξέταση Ασθενούς, Καλλιτεχνική Ερμηνεία, Άλλη / Άλλες. Αναφέρονται ρητά προσδιορισμένα κριτήρια αξιολόγησης και εάν και που είναι προσβάσιμα από τους φοιτητές.

Ο τελικός βαθμός του μαθήματος διαμορφώνεται κατά 20% από τον βαθμό του θεωρητικού μέρους και κατά 80% από τον βαθμό του εργαστηριακού.
Ο βαθμός διαμορφώνεται κατά 70% από γραπτή – εργαστηριακή τελική εξέταση και κατά 30% από προαιρετική ενδιάμεση γραπτή – εργαστηριακή εξέταση. Σε περίπτωση μη συμμετοχής ενός φοιτητή στην ενδιάμεση εξέταση ή αποτυχίας του, ο βαθμός διαμορφώνεται αποκλειστικά από την τελική γραπτή εξέταση.

  1. 1. Η προαιρετική ενδιάμεση γραπτή – εργαστηριακή εξέταση του θεωρητικού μέρους περιλαμβάνει:
    • Ανάλυση κώδικα.
    • Ανάπτυξη κώδικα.
  2. Η τελική γραπτή – εργαστηριακή εξέταση του θεωρητικού μέρους περιλαμβάνει:
    • Ερωτήσεις πολλαπλής επιλογής.
    • Ανάλυση κώδικα.
    • Ανάπτυξη κώδικα.
  3. Η αξιολόγηση του εργαστηριακού μέρους του μαθήματος περιλαμβάνει:
    • Την αξιολόγηση των προγραμματιστικών δεξιοτήτων που αποκτήθηκαν μέσω εξέτασης εβδομαδιαίων εργασιών.

5. ΣΥΝΙΣΤΩΜΕΝΗ ΒΙΒΛΙΟΓΡΑΦΙΑ

Συγγράμματα

Συγγράμματα μέσω του συστήματος ΕΥΔΟΞΟΣ:

  1. Γ. Τσελίκης, Ν. Τσελίκας, C από τη Θεωρία στην Εφαρμογή, 2η έκδοση, 2012.
  2. Ν. Χατζηγιαννάκης, Η Γλώσσα C σε Βάθος, 4η Έκδοση, Εκδόσεις Κλειδάριθμος, 2012.

Συγγράμματα που διανέμονται μέσω του Ιδρύματος ή της ηλεκτρονικής σελίδας του μαθήματος:

  1. Π. Μαστοροκώστας, Διαδικαστικός Προγραμματισμός, 2006.
  2. Π. Μαστοροκώστας, Προγραμματισμός Ι, Διαφάνειες θεωρίας, 2012.
  3. Π. Μαστοροκώστας, Προγραμματισμός Ι: εργαστηριακά φυλλάδια, 2013.

Συμπληρωματική προτεινόμενη βιβλιογραφία:

  1. H. Deitel, P. Deitel, C Προγραμματισμός, 7η έκδοση, Εκδόσεις Γκιούρδα, 2014.
  2. Αλ. Καράκος, Αλγοριθμική Επίλυση Ασκήσεων με τη Γλώσσα Προγραμματισμού C, 2010.
  3. Κ.Ν. King, C Programming: A Modern Approach, W.W. Norton & Company, 1996.
  4. Κλ. Θραμπουλίδης, Διαδικαστικός Προγραμματισμός – C (Τόμος Α), 2η έκδοση, Εκδόσεις Τζιόλα, 2002.
  5. E. Roberts, H Τέχνη και Επιστήμη της C, Εκδόσεις Κλειδάριθμος, 2004.
  6. H. Deitel, P. Deitel, Ασκήσεις – Προγράμματα σε C, Εκδόσεις Γκιούρδα, 2005.
  7. B.W. Kernighan, D.M. Ritchie, Η γλώσσα προγραμματισμού C, Εκδόσεις Κλειδάριθμος, 1990.
  8. M. Waite, S. Prata, D. Martin, Πλήρης Οδηγός Χρήσης της C, 6η έκδοση, Εκδόσεις Γκιούρδα, 2000.