Παρουσίαση/Προβολή

Εικόνα επιλογής

Διαδικαστικός Προγραμματισμός

(AIC103) -  ΘΕΟΔΩΡΟΣ ΚΑΣΚΑΛΗΣ, ΣΤΥΛΙΑΝΟΣ ΞΥΝΟΓΑΛΟΣ, ΗΛΙΑΣ ΣΑΚΕΛΛΑΡΙΟΥ, ΕΥΤΎΧΙΟΣ ΠΡΩΤΟΠΑΠΑΔΑΚΗΣ, ΣΠΥΡΙΔΩΝ ΧΑΛΚΙΔΗΣ

Περιγραφή Μαθήματος

*** ΠΡΟΣΟΧΗ! ***

Οι Α' ετείς κατά την εγγραφή τους στην πλατφόρμα openeclass να δηλώνουν το ιδρυματικό εμαιλ. Αν δηλώσουν άλλο εμαιλ θα δημιουργηθούν προβλήματα με τις εργασίες και τη βαθμολογία.

Οσοι δεν έχουν δηλώσει το ιδρυματικό εμαιλ να το διορθώσουν μέσα από το προφίλ τους.

Εισαγωγή στις γλώσσες προγραμματισμού. Περιβάλλοντα ανάπτυξης γλωσσών προγραμματισμού. Βασικές έννοιες της γλώσσας C: Η έννοια της μεταβλητής, τύποι μεταβλητών, απόδοση τιμής, τελεστές και παραστάσεις. Ροή Ελέγχου: Εντολές Διακλάδωσης υπό συνθήκη, Εντολές επανάληψης. Διαδικαστικός Προγραμματισμός: Συναρτήσεις, Δείκτες. Δομές Δεδομένων: Πίνακες, Εγγραφές & πίνακες Εγγραφών. Είσοδος και Έξοδος: Αρχεία, Χαρακτήρες, Αλφαριθμητικά.

Χρήση του προγραμματιστικού περιβάλλοντος Code:Blocks, Ανάπτυξη, δοκιμή και αποσφαλμάτωση προγραμμάτων (εργαστηριακό μέρος μαθήματος).

 

Ημερομηνία δημιουργίας

Δευτέρα 4 Μαΐου 2020

  • Μαθησιακοί στόχοι

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

    • να εφαρμόζουν τις βασικές αρχές ανάπτυξης λογισμικού σε μια διαδικαστική γλώσσα προγραμματισμού,
    • να  συγγράφουν κώδικα σύμφωνα με το συντακτικό της γλώσσας C, κλασσικού αντιπρόσωπου της διαδικαστικής σχολής προγραμματισμού,
    • να διακρίνουν και να χρησιμοποιούν τους διαφορετικούς τύπους δεδομένων και των συναφών λειτουργιών (operations), και να συνθέτουν πολύπλοκους νέους τύπους βασιζόμενοι σε πρωταρχικούς, στοχεύοντας στην ορθή αναπαράσταση των δεδομένων του προς επίλυση προβλήματος,
    • να  αναγνωρίζουν και να εφαρμόζουν σε προγράμματα την έννοια της συνάρτησης, του τύπου της, των παραμέτρων και της εμβέλειας των μεταβλητών και της κλήσης, και να μπορούν να ορίζουν/δημιουργήσουν ορθά νέες συναρτήσεις σε μια γλώσσα προγραμματισμού,
    • να σχεδιάζουν και να αναπτύσσουν μικρού μεγέθους προγράμματα, αξιολογώντας και επιλέγοντας κατάλληλες προγραμματιστικές δομές (εντολές ελέγχου ροής, εντολές επανάληψης) και τους αντίστοιχους  βασικούς/σύνθετους τύπους δεδομένων,
    • να συνθέτουν λύσεις σε περισσότερο πολύπλοκα προβλήματα, χρησιμοποιώντας τις έννοιες της αφαίρεσης (abstraction) και αποδόμησης (decomposition) βασισμένη σε διαδικασίες.

     

    Με βάση την ταξινομία του Bloom τα ΜΑ καλύπτουν και τις 6 κατηγορίες:  γνώση, κατανόηση, εφαρμογή, ανάλυση, σύνθεση και αξιολόγηση

    Περιεχόμενο μαθήματος

    1. Εισαγωγή στις γλώσσες προγραμματισμού. Περιβάλλοντα ανάπτυξης γλωσσών προγραμματισμού.
    2. Βασικές έννοιες της γλώσσας C: Η έννοια της μεταβλητής, τύποι μεταβλητών, απόδοση τιμής, τελεστές και παραστάσεις., βασικοί τύποι δεδομένων.
    3. Ροή Ελέγχου: Εντολές Διακλάδωσης υπό συνθήκη, Εντολές επανάληψης. Διαδικαστικός Προγραμματισμός: Συναρτήσεις.
    4. Δείκτες.
    5. Δομημένοι τύποι δεδομένων: Πίνακες, Αλφαριθμητικά, Εγγραφές/δομές & πίνακες Εγγραφών/δομών,
    6. Δείκτες και συναρτήσεις, Δείκτες και πίνακες. Δείκτες και αλφαριθμητικά. Αριθμητική διευθύνσεων. Δυναμική διαχείριση μνήμης
    7. Είσοδος και Έξοδος: Αρχεία κειμένου
    8. Χρήση του προγραμματιστικού περιβάλλοντος Code:Blocks, Ανάπτυξη, δοκιμή και αποσφαλμάτωση προγραμμάτων (εργαστηριακό μέρος μαθήματος).
    9. Ανάπτυξη προγραμμάτων μικρού και μεσαίου μεγέθους στο εργαστήριο και κατ’ οίκον εργασία.

    Μέθοδοι αξιολόγησης

    • 15% από τις ασκήσεις (εργαστηριακές και εβδομαδιαίες)
    • 85% από την τελική γραπτή εξέταση, η οποία γίνεται σε ΗΥ στα διάφορα εργαστήρια.

    Ο τρόπος βαθμολόγησης ισχύει για όλες τις εξεταστικές περιόδους

    Φοιτητές παλαιοτέρων εξαμήνων χρωστούν το μάθημα μπορούν:

    • Αν θέλουν να κρατήσουν τις βαθμολογίες που σημείωσαν στις ασκήσεις. Δεν χρειάζεται να το δηλώσουν εκ των προτέρων, οι βαθμολογίες παλαιοτέρων ετών  στις ασκήσεις φυλάσσονται.
    • Αν δεν θέλουν να κρατήσουν τη βαθμολογία που σημείωσαν στις ασκήσεις τότε θα πρέπει να  στείλουν τις απαντήσεις των ασκήσεων του τρέχοντος ακαδημαϊκού έτους (μέσω της πλατφόρμας openeclass.uom.gr).
    • Αν καταθέσουν ασκήσεις περισσότερες από μια φορά τότε υπολογίζεται ο τελικός βαθμός με βάση την υψηλότερη επίδοση σε ασκήσεις.
    • Η τελική βαθμολογία των εργασιών με βάση το ακαδημαικό έτος υποβολής είναι διαθέσιμη εδώ.

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


    Βαθμολόγηση εργασιών Υποβολή εργασιών

    Κάθε εβδομάδα πραγματοποιείται ανάθεση και υποβολή εργασιών (Εργαστηριακές και Εβδομαδιαίες) οι οποίες βαθμολογούνται και ο συνολικός βαθμός αυτών προσμετράται στο 15% της συνολικής βαθμολογίας.

    Η υποβολή των εργασιών γίνεται μέσω της πλατφόρμας openeclass. Για όσους δεν έχει ολοκληρωθεί η εγγραφή τους η υποβολή γίνεται μέσω του Google drive (δείτε σχετικό έγγραφο για του Υπομετεγγραφή). Και στις 2 περιπτώσεις η προθεσμία υποβολής είναι η ίδια.

    Εκπρόθεσμες εργασίες μέσω email δε γίνονται δεκτές και δε βαθμολογούνται.

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

    Οι εργασίες βαθμολογούνται ως ακολούθως:

    Η εργασία μεταγλωττίζεται ορθά και εκτελείται ορθά σε όλες τις περιπτώσεις: 10
    Η εργασία δεν μεταγλωττίζεται ορθά:0
    Η εργασία μεταγλωττίζεται ορθά, αλλά δεν εκτελείται: 0
    Η εργασία μεταγλωττίζεται και εκτελείται αλλά με σφάλματα ή προειδοποιήσεις που αφορούν χρήση δεικτών: 0
    Η εργασία μεταγλωττίζεται και εκτελείται με άλλες προειδοποιήσεις: αναλογικά [1,10)
    Η εργασία μεταγλωττίζεται και εκτελείται αλλά όχι για όλες τις περιπτώσεις ελέγχου: αναλογικά [1,10)
     

    Προσοχή. Το λογισμικό που χρησιμοποιείται πραγματοποιεί και έλεγχο αντιγραφής. Σε τέτοια περίπτωση μηδενίζονται όλοι οι εμπλεκόμενοι στην αντιγραφή

    Για απορίες/ερωτήσεις που αφορούν στα λάθη που εντοπίστηκαν στις εργασίες σας μπορείτε να επισκεφτείτε στις ώρες γραφείου τον/την διδάσκοντα/σκουσα του εργαστηρίου που παρακολουθείτε και να τις λύσετε .

    Διαλέξεις θεωρίας

    Για τις διαλέξεις θεωρίας οι φοιτήτριες χωρίζονται σε 3 τμήματα

    Τμήμα A: Τετάρτη 9.00-11.00, αμφ. 13

    Διδάσκων: Ξυνόγαλος Στέλιος

    Οι φοιτητές με επώνυμο (Α-ΚΑΤΣΩ & Ab-Zu)

    Τμήμα B: Τετάρτη 11.00-13.00, αμφ. 12

    Διδάσκων: Σακελαρίου Ηλίας

    Οι φοιτητές με επώνυμο (ΚΕ-ΠΑΥ)

    Τμήμα Γ: Τετάρτη 9.00-11.00, αμφ. 12

    Διδάσκων: Κασκάλης Θεόδωρος

    Οι φοιτητές με επώνυμο (ΠΕ-Ω)

    ∆εν επιτρέπεται φοιτητής / φοιτήτρια να αλλάξει τµήµα θεωρίας.

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

     

    Εργαστήρια

    Τα µαθήµατα αρχίζουν τη Δευτέρα 29/09/2025.

    Το εργαστηριακό µάθηµα θα γίνεται ανάλογα µε το τµήµα.

    Για τα εργαστηριακά μαθήματα οι φοιτητές / φοιτήτριες θα χωριστούν σε 7 τμήματα:

    Εργ. Ε1: ∆ΕΥΤΕΡΑ 9:00 - 11:00

    Διδάσκων: Ε. Πρωτοπαπαδάκης

    ΚΥΔ

    οι φοιτητές µε επώνυμο

    Α-ΓΚΑ & Ab-Zu  

    Εργ. Ε2: ∆ΕΥΤΕΡΑ 9:00 - 11:00

    Διδάσκων: Σ. Χαλκιδης

    234

    οι φοιτητές µε επώνυμο

      ΓΚΕ-ΙΩΑΝ  

    Εργ. Ε3: ∆ΕΥΤΕΡΑ 9:00 - 11:00

    Διδάσκων: Η. Σακελλαρίου

    334

     

    οι φοιτητές µε επώνυμο 

    ΚΑ-ΛΑΣ  

    Εργ. Ε4: ∆ΕΥΤΕΡΑ 11:00 - 13:00

    Διδάσκων: Σ. Χαλκίδης

    234

    οι φοιτητές µε επώνυμο

    ΛΑΧ-ΜΠΟΥΦ  

    Εργ. E5: ∆ΕΥΤΕΡΑ 13:00 - 15:00

    Διδάσκων: Η. Σακελλαρίου

    234

    οι φοιτητές µε επώνυμο 

      ΜΥΛ-ΣΑΠ  

    Εργ. Ε6: ∆ΕΥΤΕΡΑ 11:00 - 13:00

    Διδάσκων: Η. Σακελλαρίου

    334

    οι φοιτητές µε επώνυμο 

    ΣΑΡ-ΤΣΑΓΚ

    Εργ. Ε7: ∆ΕΥΤΕΡΑ 11:00 - 13:00

    Διδάσκων:Ε. Πρωτοπαπαδάκης

    ΚΥΔ

     

    οι φοιτητές µε επώνυμο

    ΤΣΑΚ-Ω

     

    1. ∆εν επιτρέπεται φοιτητής / φοιτήτρια να αλλάξει τµήµα. Αν για κάποιο σοβαρό λόγο χρειαστεί να γίνει τότε θα πρέπει ο φοιτητής / φοιτήτρια να κάνει αμοιβαία αλλαγή με συμφοιτητή /τρια και να το δηλώσει στους διδάσκοντες κ. Μ. Σατρατζέµη ή Η. Σακελλαρίου ή Ε. Πρωτοπαπαδάκη ή Σ. Χαλκίδη.
    1. Για τους φοιτητές του Α' εξαμήνου (κανονική φοίτηση) επιτρέπονται μέχρι και 2 απουσίες στα εργαστηριακά µαθήµατα. Σε περίπτωση που πραγµατοποιηθούν πάνω από 2 απουσίες τότε ο φοιτητής / φοιτήτρια δεν μπορεί να δώσει εξετάσεις την 1η εξεταστική (του Ιανουαρίου). Μπορεί να εξεταστεί στην εξεταστική του Σεπτεμβρίου καθώς θα έχει όλο το χρόνο να αναπληρώσει με προσωπική μελέτη τα εργαστήρια που έχασε.
    2. Φοιτητές μεγαλύτερων εξαμήνων που χρωστούν το μάθημα και δεν παρακολούθησαν ως φοιτητές του Α' εξαμήνου είτε μερικώς είτε εξ ολοκλήρου τα εργαστήρια δεν υποχρεούνται να τα παρακολουθήοσουν για να συμμετάσχουν σε εξετάσεις. Αυτοί θα καλύψουν το κενό της μη παρακολούθησης των εργαστηρίων με προσωπική μελέτη.

    Φροντιστήρια

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

    Το πρόγραμμα των φροντιστηριακών μαθημάτων είναι το παρακάτω:

    Φροντιστήριο 1 (Τμήμα Α): Πέμπτη 10.00-11.00, Εργαστήριο 334

    Διδάσκων: Σπύρος Χαλκίδης

    Οι φοιτητές με επώνυμο (Α-ΚΑΤΣΩ & Ab-Zu)

    Φροντιστήριο 2 (Τμήμα Β): Πέμπτη 11.00-12.00, Εργαστήριο 334

    Διδάσκων: Σπύρος Χαλκίδης

    Οι φοιτητές με επώνυμο (ΚΕ-ΠΑΥ)

    Φροντιστήριο 3 (Τμήμα Γ): Πέμπτη 12.00-13.00, Εργαστήριο 334

    Διδάσκων: Σπύρος Χαλκίδης

    Οι φοιτητές με επώνυμο (ΠΕ-Ω)

     

     

    Πλάνο διαλέξεων και εργαστηριακών μαθημάτων

    Πλάνο διαλέξεων και εργαστηριακών μαθημάτων

    Διδάσκοντες

    Θ. Κασκάλης, ( kaskalis@uom.edu.gr), Καθηγητής.

    Σ. Ξυνόγαλος, (stelios@uom.edu.gr), Καθηγητής.

    Η. Σακελλαρίου, (iliass@uom.edu.gr), Επίκουρος Καθηγητής.

    Ε. Πρωτοπαπαδάκης, (eftprot@uom.edu.gr), Επίκουρος Καθηγητής.

    Σ. Χαλκίδης, (halkidis@uom.edu.gr),  ΕΔΙΠ.

    Βιβλιογραφία

    Η ΓΛΩΣΣΑ C ΣΕ ΒΑΘΟΣ, ΝΙΚΟΣ Μ. ΧΑΤΖΗΓΙΑΝΝΑΚΗΣ
    Κωδικός Βιβλίου στον Εύδοξο: 68384925
    Έκδοση: 5η/2017

    Αρχές και τεχνικές προγραμματισμού με τη γλώσσα C, Hanly Jeri R., Koffman Elliot B.
    Κωδικός Βιβλίου στον Εύδοξο: 102071593
    Έκδοση: 1η έκδ./2021

    Η ΤΕΧΝΗ ΚΑΙ ΕΠΙΣΤΗΜΗ ΤΗΣ C: ΜΙΑ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ, ERIC S. ROBERTS
    Κωδικός Βιβλίου στον Εύδοξο: 13767
    Έκδοση: 1η/2004

    C: Από τη Θεωρία στην Εφαρμογή, 4η Εκδοση, Γ. Σ. Τσελίκης - Ν. Δ. Τσελίκας
    Κωδικός Βιβλίου στον Εύδοξο: 122079784
    Έκδοση: 4/2023

     
    Οδηγός Προγραμματισμού με τη γλώσσα C, Β' Έκδοση, Αλέξανδρος Καράκος
    Κωδικός Βιβλίου στον Εύδοξο: 102070745
    Έκδοση: 2/2021