Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος «Εισαγωγή στον Προγραμματισμό»

Σχετικά έγγραφα
Φόρμα Σχεδιασμού Διάλεξης (ημ/α: 17/03/08, έκδοση: 1.0)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος «Λογικός Προγραμματισμός»

Φόρμα Σχεδιασμού Διάλεξης (ημ/α: 17/03/08, έκδοση: 1.0)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο

Συναρτήσεις. Σημερινό μάθημα

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ. Πρώτη Γραπτή Εργασία. Εισαγωγή στους υπολογιστές Μαθηματικά

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ

Αποδεικτικές Διαδικασίες και Μαθηματική Επαγωγή.

Ας υποθέσουμε ότι ο παίκτης Ι διαλέγει πρώτος την τυχαιοποιημένη στρατηγική (x 1, x 2 ), x 1, x2 0,

Αντικειμενοστραφής. Προγραμματισμού

Τρίτη, 05 Ιουνίου 2001 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Α. ΓΙΑ ΟΛΟΥΣ ΤΟΥΣ ΜΑΘΗΤΕΣ ΘΡΗΣΚΕΥΤΙΚΑ. ΙΣΤΟΡΙΑ (Γενικής Παιδείας) ΑΡΧΑΙΑ ΕΛΛΗΝΙΚΑ (Γενικής Παιδείας) ΛΟΓΟΤΕΧΝΙΑ (Γενικής Παιδείας)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο

Pointers. Σημερινό Μάθημα! Χρήση pointer Τελεστής * Τελεστής & Γενικοί δείκτες Ανάκληση Δέσμευση μνήμης new / delete Pointer σε αντικείμενο 2

Συναρτήσεις & Κλάσεις

Μεταγλωττιστές ΙΙ. Γέννηση ενδιάμεσης αναπαράστασης. 10 Νοεμβρίου Νικόλαος Καββαδίας Μεταγλωττιστές ΙΙ

Εισαγωγή στην Οικονομική Επιστήμη ΙΙ

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Ανασκόπηση ϑεμάτων παλαιών εξετάσεων του μαθήματος. Περιεχόμενο εξετάσεων

Σχέσεις και ιδιότητές τους

Αναγνώριση Προτύπων. Σημερινό Μάθημα

«ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ»

Αναγνώριση Προτύπων. Σημερινό Μάθημα

ΣΤΟ ΦΑΡΜΑΚΕΙΟ. Με την πιστοποίηση του έχει πρόσβαση στο περιβάλλον του φαρμακείου που παρέχει η εφαρμογή.

Εξαναγκασμένες ταλαντώσεις, Ιδιοτιμές με πολλαπλότητα, Εκθετικά πινάκων. 9 Απριλίου 2013, Βόλος

Εργαστηριακή Άσκηση Θερμομόρφωση (Thermoforming)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ. Τρίτη Γραπτή Εργασία στη Στατιστική

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Περισσότερα για τα αρθρώματα Αναθέσεις και τελεστές Συντρέχων κώδικας

Η Πληροφορική στο Δημοτικό Διδακτικές Προσεγγίσεις Αδάμ Κ. Αγγελής Παιδαγωγικό Ινστιτούτο

Προτεινόμενα θέματα. στο μάθημα. Αρχές οργάνωσης και διοίκησης επιχειρήσεων. ΟΜΑΔΑ Α: Ερωτήσεις Σωστού Λάθους.

Πηγές πληροφόρησης και εργαλεία

{ i f i == 0 and p > 0

Αρχάνες, 10/12/2012 Αρ. Πρωτ: 561

ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ Σχεδίαση Λογικών Κυκλωμάτων


ΤΑΞΙΝΟΜΗΣΗ ΟΡΓΑΝΙΣΜΩΝ

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

Αναγνώριση Προτύπων. Σήμερα! Λόγος Πιθανοφάνειας Πιθανότητα Λάθους Κόστος Ρίσκο Bayes Ελάχιστη πιθανότητα λάθους για πολλές κλάσεις

Κανονισμός Μεταπτυχιακών Σπουδών του Τμήματος Στατιστικής και Αναλογιστικών Χρηματοοικονομικών Μαθηματικών του Πανεπιστημίου Αιγαίου

Ολοκληρωμένη Χωρική Ανάπτυξη. Ειδική Υπηρεσία Στρατηγικής, Σχεδιασμού Και Αξιολόγησης (ΕΥΣΣΑ) Μονάδα Α Στρατηγικής και Παρακολούθησης Πολιτικών

Συναρτήσεις ΙΙ. Σημερινό μάθημα

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

ΣΥΝΟΛΑ (προσέξτε τα κοινά χαρακτηριστικά των παρακάτω προτάσεων) Οι άνθρωποι που σπουδάζουν ΤΠ&ΕΣ και βρίσκονται στην αίθουσα

Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95

Εφαρμογές στην κίνηση Brown

Αλγόριθμοι & Βελτιστοποίηση

Ταξινόμηση των μοντέλων διασποράς ατμοσφαιρικών ρύπων βασισμένη σε μαθηματικά κριτήρια.

Δ Ι Α Κ Ρ Ι Τ Α Μ Α Θ Η Μ Α Τ Ι Κ Α. 1η σειρά ασκήσεων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Μούλου Ευγενία

Κληρονομικότητα. Σήμερα! Κλάση Βάσης Παράγωγη κλάση Απλή κληρονομικότητα Protected δεδομένα Constructors & Destructors overloading

Γλώσσες Περιγραφής Υλικού Ι

Μεταγλωττιστές ΙΙ. Καταμερισμός καταχωρητών. Νικόλαος Καββαδίας Μεταγλωττιστές ΙΙ

Ψηφιακή Εικόνα. Σημερινό μάθημα!

Μεταγλωττιστές ΙΙ. Επιλογή κώδικα. 24 Νοεμβρίου Νικόλαος Καββαδίας Μεταγλωττιστές ΙΙ

«Εξατομικεύοντας την επιλογή των πόρων των ψηφιακών βιβλιοθηκών για την υποστήριξη της σκόπιμης μάθησης» Άννα Μαρία Ολένογλου

Ηλεκτρονικοί Υπολογιστές Ι: Εισαγωγή στη γλώσσα

Συμπεριφοριακή Επιχειρηματικότητα

Επίλυση δικτύων διανομής

ΣΤΟ ΙΑΤΡΕΙΟ. Με την πιστοποίηση του αποκτά πρόσβαση στο περιβάλλον του ιατρού που παρέχει η εφαρμογή.

Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Διάλεξθ 2

Γλώσσες Περιγραφής Υλικού Ι

HY 280. θεμελιακές έννοιες της επιστήμης του υπολογισμού ΑΣΚΗΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ. Γεώργιος Φρ.

CSE.UOI : Μεταπτυχιακό Μάθημα

Προτεινόμενα θέματα. στο μάθημα. Αρχές οργάνωσης και διοίκησης επιχειρήσεων. ΟΜΑΔΑ Α: Ερωτήσεις Σωστού Λάθους.

21/11/2005 Διακριτά Μαθηματικά. Γραφήματα ΒΑΣΙΚΗ ΟΡΟΛΟΓΙΑ : ΜΟΝΟΠΑΤΙΑ ΚΑΙ ΚΥΚΛΟΙ Δ Ι. Γεώργιος Βούρος Πανεπιστήμιο Αιγαίου

Ευρωπαϊκά παράγωγα Ευρωπαϊκά δικαιώματα

Σκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Μηχανές Πεπερασμένων Καταστάσεων: Εισαγωγή και.

H εφαρμογή των Συστημάτων Γεωγραφικών Πληροφοριών στα Μοντέλα Συγκοινωνιακού Σχεδιασμού

Χαρακτηριστικά & «Καλές» Πρακτικές Τμήματος Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου LOGO

Νικόλαος Καββαδίας Μεταγλωττιστές ΙΙ

ΕΚΘΕΣΕΙΣ ΑΠΟΛΟΓΙΣΜΟΥ

Υπολογιστική Νοημοσύνη

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

Έννοια. Η αποδοχή της κληρονομίας αποτελεί δικαίωμα του κληρονόμου, άρα δεν

Ημέρα 3 η. (α) Aπό την εργασιακή διαδικασία στη διαδικασία παραγωγής (β) Αξία του προϊόντος και αξία της εργασιακής δύναμης

Μία χρονοσειρά (time serie) είναι μια ακολουθία

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

Γλώσσες Περιγραφής Υλικού Ι

ΓΥΜΝΑΣΙΟ ΑΓΙΟΥ ΣΤΥΛΙΑΝΟΥ Μ 6 ΣΧΟΛΙΚΗ ΧΡΟΝΙΑ: ΤΡΟΠΟΙ ΜΕΛΕΤΗΣ

Εισαγωγικά. 1.1 Η σ-αλγεβρα ως πληροφορία

Εστω X σύνολο και A μια σ-άλγεβρα στο X. Ονομάζουμε το ζεύγος (X, A) μετρήσιμο χώρο.

Αναγνώριση Προτύπων. Σημερινό Μάθημα

Προηγμένα Θέματα Θεωρητικής Πληροφορικής

Α) Ανάλογα με τη φύση των κονδυλίων που περιλαμβάνουν οι προϋπολογισμοί διακρίνονται σε:

Επίλυση ειδικών μορφών ΣΔΕ

8 Βελτιστοποιήσεις για την ανάδειξη της παραλληλίας

ΘΕΜΑΤΑ ΓΙΑ ΘΕΟΛΟΓΟΥΣ

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

Γενικό Λύκειο Μαραθοκάμπου Σάμου. Άλγεβρα Β λυκείου. 13 Οκτώβρη 2016

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

ΘΡΗΣΚΕΥΤΙΚΑ ΣΤ ΔΗΜΟΤΙΚΟΥ

Το υπόδειγμα IS-LM: Εισαγωγικά

ΤΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΣΥΣΤΗΜΑ

Η Πληροφορική στο Ολοήμερο Σχολείο. Διδακτικές Προσεγγίσεις. Αδάμ Κ. Αγγελής. Παιδαγωγικό Ινστιτούτο

Οι γέφυρες του ποταμού... Pregel (Konigsberg)

Σκιαγράφηση της διάλεξης. Μηχανές Πεπερασμένων Καταστάσεων: Εισαγωγή και.

Αναγνώριση Προτύπων. Σημερινό Μάθημα

συμπεριφοράς που θα παρατηρηθεί


Προηγμένα Θέματα Θεωρητικής Πληροφορικής

Transcript:

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος 2007 2008 ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος «Εισαγωγή στον Προγραμματισμό» Διδάσκοντες: Θεόδωρος Ανδρόνικος & Δημήτριος Θεοτόκης

Περιεχόμενα 1 Περιγραφή του μαθήματος.... 1 2 Υλοποίηση του μαθήματος.... 2 2.1 Διδασκαλία του μαθήματος.... 2 2.2 Εργαστήρια συμπληρωματική διδασκαλία.... 7 2.3 Εκπαιδευτικό υλικό.... 8

1 Περιγραφή του μαθήματος. Η «Εισαγωγή στον Προγραμματισμό» αποτελεί μάθημα κορμού για του φοιτητές Α εξαμήνου του Τμήματος Πληροφορικής. Κατά τη διδασκαλία του μαθήματος γίνεται μια σύντομη εισαγωγή στην πληροφορική και στους υπολογιστές. Παρουσιάζεται η έννοια του αλγόριθμου ως πεπερασμένη ακολουθία βημάτων για τη λύση προβλημάτων και οι γλώσσες προγραμματισμού ως αυστηρά (μαθηματικά) εργαλεία για την περιγραφή αλγορίθμων. Γίνεται ενδελεχής ανάπτυξη της γλώσσας C, των κύριων χαρακτηριστικών της και της διαδικασίας μεταγλώττισης και εκτέλεσης προγραμμάτων. Ορίζονται οι βασικοί τύποι δεδομένων, οι μεταβλητές, οι τελεστές και οι εκφράσεις. Εξηγείται η δομή του προγράμματος στη γλώσσα C, οι βασικές προγραμματιστικές εντολές και οι εντολές ελέγχου ροής του προγράμματος. Παρουσιάζονται οι πίνακες (μονοδιάστατοι και πολυδιάστατοι) και οι στοιχειώσεις δομές δεδομένων. Στη συνέχεια γίνεται εισαγωγή στην έννοια του αφηρημένου τύπου και επεξήγηση των συγκεκριμένων τύπων δεδομένων. Ορίζεται η αναζήτηση και η ταξινόμηση πινάκων. Δίνονται οι ορισμοί των γενικών τύπων δεδομένων, των απαριθμήσεων, των δομών (structures) και των ενώσεων (unions). Παρουσιάζονται οι δείκτες (pointers), η σχέση μεταξύ δεικτών και πινάκων, μεταξύ συμβολοσειρών και δεικτών και οι μετατροπές τύπων. Γίνεται εισαγωγή στη δυναμική παραχώρηση μνήμης, στις γραμμικές λίστες, στις απλά συνδεδεμένες λίστες, στις ουρές, στις στοίβες, στις διπλά συνδεδεμένες λίστες. Τέλος, ορίζονται τα δέντρα και οι γράφοι, καθώς και τα δυαδικά δέντρα αναζήτησης. ΔΙΔΑΚΤΕΑ ΥΛΗ 1.1 Σύντομη εισαγωγή στην πληροφορική και στους υπολογιστές. 1.2 Η έννοια του αλγόριθμου ως πεπερασμένη ακολουθία βημάτων για τη λύση προβλημάτων και των γλωσσών προγραμματισμού ως αυστηρών μέσων έκφρασης αλγορίθμων. 1.3 Η γλώσσα C, τα κύρια χαρακτηριστικά της και η διαδικασία μεταγλώττισης και εκτέλεσης προγραμμάτων. 2.1 Η δομή του προγράμματος στη γλώσσα C, οι βασικές προγραμματιστικές εντολές και οι εντολές ελέγχου ροής του προγράμματος. 1

2.2 Απλοί τύποι δεδομένων, ορισμός μεταβλητών, τελεστές και εκφράσεις. 3.1 Πίνακες (μονοδιάστατοι και πολυδιάστατοι) και στοιχειώσεις δομές δεδομένων. 3.2 Εισαγωγή στην έννοια του αφηρημένου τύπου και επεξήγηση των συγκεκριμένων τύπων δεδομένων. 3.3 Αναζήτηση και ταξινόμηση πινάκων. 4.1 Ορισμοί γενικών τύπων δεδομένων, απαριθμήσεις, δομές (structures), ενώσεις (unions). 4.2 Δείκτες (pointers), σχέση μεταξύ δεικτών και πινάκων, συμβολοσειρών και δεικτών, μετατροπές τύπων. 4.3 Δείκτες σε εγγραφές και δείκτες αντί περάσματος μεταβλητών κατά αναφορά. 5.1 Εισαγωγή στη δυναμική παραχώρηση μνήμης. 5.2 Γραμμικές λίστες, απλά συνδεδεμένες λίστες ουρές, στοίβες, διπλά συνδεδεμένες λίστες. Δέντρα και γράφοι, δυαδικά δέντρα αναζήτησης. 5.3 Συναρτήσεις εισόδου και εξόδου, συναρτήσεις διαχείρισης αρχείων, συναρτήσεις βιβλιοθήκης και δείκτες σε συναρτήσεις. 2 Υλοποίηση του μαθήματος. Στις επόμενες παραγράφους περιγράφονται τα στάδια υλοποίησης της διδασκαλίας του μαθήματος «Εισαγωγή στον Προγραμματισμό» κατά το ακαδημαϊκό έτος 2007 2008. 2.1 Διδασκαλία του μαθήματος. Η διδασκαλία του μαθήματος «Εισαγωγή στον Προγραμματισμό» υποβοηθήθηκε με την προβολή διαφανειών σε μορφή PowerPoint. Κατά το 1 ο εξάμηνο του ακαδημαϊκού έτους 2007 2008 πραγματοποιήθηκαν 13 διαλέξεις. Σε κάθε διάλεξη υπήρξε επισκόπηση της θεωρίας και παρουσίαση των κυρίων σημείων. Παράλληλα έγινε εκτενής μελέτη των μεθόδων επίλυσης προβλημάτων ανά ενότητα. Βασικός στόχος ήταν η σύνδεση της δομής της ύλης ανά ενότητες και για το λόγο αυτό, σε αρκετές διαλέξεις αφιερώθηκε χρόνος για επανάληψη της έως τότε διδαχθείσας ύλης. Οι διαλέξεις ακολούθησαν την παρακάτω δομή: (1) Επισκόπηση διδαχθείσας θεωρίας. (2) Παρουσίαση και ανάλυση νέας ύλης. (3) Παραδείγματα για εμπέδωση της θεωρίας. 2

Οι λεπτομέρειες των διαλέξεων παρουσιάζονται στον ακόλουθο πίνακα: Αντικείμενο διάλεξης Μαθησιακοί στόχοι Θέματα που καλύπτονται 1. Εισαγωγή στους υπολογιστές. 2. Εισαγωγή στη γλώσσα C. 3. Δομημένος προγραμματισμός στη C. 4. Χρήση των δομών ελέγχου της C για τη δημιουργία δομημένων προγραμμάτων. Συνοπτική παρουσίαση της εξέλιξης των γλωσσών προγραμματισμού και των αρχών του δομημένου προγραμματισμού. Δημιουργία των πρώτων απλών προγραμμάτων στη γλώσσα C. Εμπέδωση των αρχών του δομημένου προγραμματισμού για ανάπτυξη προγραμμάτων στη γλώσσα C. Εμπέδωση των αρχών του δομημένου προγραμματισμού για ανάπτυξη προγραμμάτων στη γλώσσα C. Τι είναι ο ηλεκτρονικός υπολογιστής. Στοιχεία της οργάνωσης του ηλεκτρονικού υπολογιστή. Εξέλιξη των λειτουργικών συστημάτων. Γλώσσα μηχανής, συμβολική γλώσσα και γλώσσες υψηλού επιπέδου. Εισαγωγή στην έννοια του δομημένου προγραμματισμού. Η ιστορία και η εξέλιξη της γλώσσας C. Ολοκληρωμένο περιβάλλον δημιουργίας προγραμμάτων C. Το πρώτο πρόγραμμα σε C: εμφάνιση μηνύματος στην οθόνη. Δημιουργία απλών προγραμμάτων, όπως πρόσθεση δύο ακεραίων αριθμών και εμφάνιση του αθροίσματος. Η μνήμη και η έννοια των μεταβλητών στη C. Βασικές αριθμητικές πράξεις. Ο τελεστής της ανάθεσης και οι βασικοί σχεσιακοί τελεστές. Εισαγωγή στην έννοια του αλγορίθμου. Χρήση ψευδοκώδικα για αφηρημένη σχεδίαση προγραμμάτων. Δομές ελέγχου. Η εντολή επιλογής if. Η γενικότερη μορφή της εντολής if else. Η επαναληπτική δομή while. Σχεδίαση και προγραμματισμός αλγορίθμων. Μελέτη περίπτωσης: επανάληψη ελεγχόμενη από μετρητή. Σχεδίαση και ανάπτυξη αλγορίθμων με τη μεθοδολογία της από πάνω προς τα κάτω σταδιακής εκλέπτυνσης. Μελέτη περίπτωσης: επανάληψη ελεγχόμενη από στοιχείοφρουρό. Φωλιασμένοι βρόχοι. 3

5. Δομές ελέγχου και λογικοί τελεστές στη C. 6. Συναρτήσεις στη γλώσσα C. 7. Προχωρημένα θέματα συναρτήσεων στη γλώσσα C. Ολοκλήρωση της ανάλυσης των δομών ελέγχου της C και αναλυτική παρουσίαση όλων των σχεσιακών τελεστών. Εισαγωγή στην έννοια των συναρτήσεων της C. Ορισμός και κλήση συναρτήσεων. Μετάδοση παραμέτρων κατά αξία και κατά αναφορά. Παρουσίαση προχωρημένων θεμάτων όπως τοπικές και καθολικές μεταβλητές, εμβέλεια μεταβλητών, η αναδρομή και πως λειτουργεί. Τελεστές μοναδιαίας αύξησης και μοναδιαίας μείωσης ακεραίων μεταβλητών. Η επαναληπτική δομή for: σύνταξη και παραδείγματα χρήσης. Η δομή πολλαπλής επιλογής switch. Η επαναληπτική δομή do while. Η λειτουργία των εντολών break και continue. Παρουσίαση όλων των λογικών τελεστών της C, καθώς και του τρόπου χρήσης τους μέσω παραδειγμάτων. Επεξήγηση της διαφοράς του τελεστή ανάθεση και του λογικού τελεστή ελέγχου ισότητας. Επανάληψη όλων των δομών ελέγχου της C. Οι συναρτήσεις ως δομικά στοιχεία του προγράμματος στη C. Τρόπος ορισμού μιας συνάρτησης. Τι είναι και πως συντάσσεται το πρότυπο της συνάρτησης. Χαρακτηριστικά παραδείγματα συναρτήσεων της μαθηματικής βιβλιοθήκης της C. Αρχεία επικεφαλίδες. Κλήση συναρτήσεων από άλλες συναρτήσεις. Τυπικές παράμετροι και πραγματικές παράμετροι. Τι είναι η μετάδοση παραμέτρων κατά αξία και ποια η διαφορά με τη μετάδοση παραμέτρων κατά αναφορά. Ένα χρήσιμο παράδειγμα συνάρτησης: δημιουργία ψευδοτυχαίων αριθμών. Πως μπορεί να χρησιμοποιηθεί μια τέτοια συνάρτηση για την προσομοίωση παιχνιδιών τύχης. Οι κανόνες εμβέλειας που διέπουν τις καθολικές και τις τοπικές μεταβλητές. Τι είναι η αναδρομή και που ενδείκνυται η χρήση της. 4

8. Πίνακες στη γλώσσα C. Πως ορίζονται και πως χρησιμοποιούνται οι πίνακες στη C. 9. Οι δείκτες στη γλώσσα C. 10. Χαρακτήρες και συμβολοσειρές στη C. Τι είναι οι δείκτες, πως ορίζονται και πως πρέπει να χρησιμοποιούνται στη C. Οι συμβολοσειρές της C ως πίνακες χαρακτήρων. Βασικές συναρτήσεις χειρισμού και επεξεργασίας συμβολοσειρών. Μελέτη περίπτωσης: υπολογισμός της ακολουθίας Fibonacci με αναδρομή. Κατανόηση της διαφοράς ανάμεσα σε αναδρομή και επανάληψη. Εισαγωγή στην έννοια των πινάκων στις γλώσσες προγραμματισμού. Πως ορίζονται οι πίνακες στη γλώσσα C. Παραδείγματα ορισμού και χρήσης μονοδιάστατων και πολυδιάστατων πινάκων. Πέρασμα πινάκα ως παράμετρο σε συνάρτηση. Ταξινόμηση πίνακα και αναζήτηση στοιχείου σε ταξινομημένο πίνακα. Μελέτη περίπτωσης: υπολογισμός ελαχίστου, μεγίστου και μέσου όρου με χρήση πίνακα. Τι είναι οι δείκτες σε μεταβλητές, πως ορίζονται και πως αρχικοποιούνται. Ποιοι τελεστές μπορούν να εφαρμοστούν στους δείκτες. Ποια η χρήση των δεικτών στην κλήση συναρτήσεων κατά αναφορά. Υλοποίηση του αλγόριθμου ταξινόμησης της φυσαλίδας (bubble sort) με χρήση δεικτών και κλήση κατά αναφορά. Ο τελεστής sizeof και πως χρησιμοποιείται. Εκφράσεις με δείκτες και αριθμητική δεικτών. Η σχέση των δεικτών και των πινάκων. Δείκτες σε συναρτήσεις. Δημιουργία και αρχικοποίηση συμβολοσειρών μέσω πινάκων χαρακτήρων. Οι κυριότερες συναρτήσεις χειρισμού χαρακτήρων που παρέχει η C. Συναρτήσεις μετατροπής πινάκων χαρακτήρων σε συμβολοσειρές. Οι κυριότερες συναρτήσεις χειρισμού 5

11. Ορισμός νέων τύπων δεδομένων στη C. 12. Προχωρημένα θέματα δημιουργίας τύπων δεδομένων στη C. Πως ορίζουμε και πως χρησιμοποιούμε νέους τύπους δεδομένων στη C. Δημιουργία και χρήση των βασικών δυναμικών δομών δεδομένων: γραμμικές λίστες, στοίβες, ουρές και δένδρα. 13. Γενική επανάληψη. Η γενική επισκόπηση αποσκοπεί στην πλήρη κατανόηση και επεξήγηση των προχωρημένων θεμάτων, καθώς και την προετοιμασία για τις εξετάσεις. συμβολοσειρών της C. Συναρτήσεις σύγκρισης συμβολοσειρών και συναρτήσεις αναζήτησης υπο συμβολοσειρών. Ορισμός νέων τύπων δεδομένων μέσω της struct. Πως και πότε πρέπει να χρησιμοποιείται η typedef. Ορισμός μεταβλητών που ανήκουν σε νέους τύπους δεδομένων. Αρχικοποίηση τέτοιων μεταβλητών. Πρόσβαση και ανάθεση τιμών στα στοιχεία μέλη αυτών των δομών. Ταυτόχρονη χρήση συναρτήσεων και σύνθετων τύπων δεδομένων. Ενώσεις (unions), ψηφιακοί τελεστές (bitwise operators) και απαρίθμηση (enumeration). Πως δημιουργούμε δομές αυτό αναφορικές χρησιμοποιώντας δείκτες. Πως επιτυγχάνεται η δυναμική δέσμευση μνήμης. Ορισμός και παραδείγματα γραμμικών λιστών. Τι είναι η στοίβα, πως υλοποιείται και που χρησιμοποιείται. Τι είναι η ουρά, πως υλοποιείται και που χρησιμοποιείται. Ανάλυση των διαφορών που έχουν μεταξύ τους η λίστα, η στοίβα και η ουρά. Σε ποιες περιπτώσεις ενδείκνυται η χρήση της καθεμίας από αυτές. Τι είναι τα δένδρα, πως υλοποιούνται και που χρησιμοποιούνται. Δημιουργία προγραμμάτων που να συνδυάζουν πολλαπλά θέματα και να αποδεικνύουν όχι μόνο την σε βάθος κατανόηση της γλώσσας C, αλλά και την ικανότητα των φοιτητών να σχεδιάζουν και να υλοποιούν αυτόνομα. 6

2.2 Εργαστήρια συμπληρωματική διδασκαλία. Στα πλαίσια της συμπληρωματικής διδασκαλίας του μαθήματος «Εισαγωγή στον Προγραμματισμό», σχεδιάστηκαν και πραγματοποιήθηκαν 11 εργαστηριακές ασκήσεις. Οι ασκήσεις αυτές είχαν ως σκοπό την εξάσκηση των φοιτητών σε πρακτικές εφαρμογές της αντίστοιχης θεωρίας και χρησίμευσαν ως βάση για την ατομική εργασία εξαμήνου που ανατέθηκε σους φοιτητές του μαθήματος. Εκτός από τις διαλέξεις και τις εργαστηριακές ασκήσεις, το μάθημα υποστηρίχθηκε από ένα συμπληρωματικό εργαστήριο ανακεφαλαίωσης της διδαχθείσας ύλης και επίλυσης παραδειγμάτων. Το αντικείμενο κάθε εργαστηριακής άσκησης έχει ως εξής: 1. Εργαστηριακή Άσκηση #1: Η πρώτη εργαστηριακή άσκηση έχει αντικείμενο την εξοικείωση με το περιβάλλον εργασίας στο εργαστήριο, καθώς και με τη διαδικασία συγγραφής και εκτέλεσης προγραμμάτων στη γλώσσα C. 2. Εργαστηριακή Άσκηση #2: Εργαστηριακή άσκηση με αντικείμενο τη συγγραφή διαλογικού προγράμματος που να καθοδηγεί το χρήστη με κατάλληλα μηνύματα στην οθόνη. 3. Εργαστηριακή Άσκηση #3: Εργαστηριακή άσκηση με αντικείμενο τη συγγραφή διαλογικού προγράμματος που να χρησιμοποιεί δομές ελέγχου και επανάληψης της γλώσσας C. 4. Εργαστηριακή Άσκηση #4: Εργαστηριακή άσκηση με αντικείμενο τη συγγραφή προγράμματος αριθμητικών υπολογισμών που να χρησιμοποιεί δομές ελέγχου, επανάληψης και τεχνικές μορφοποίησης των αποτελεσμάτων. 5. Εργαστηριακή Άσκηση #5: Εργαστηριακή άσκηση με αντικείμενο τον πολλαπλασιασμό διανυσμάτων και πινάκων ακεραίων και πραγματικών αριθμών. 6. Εργαστηριακή Άσκηση #6: Εργαστηριακή άσκηση με αντικείμενο τη χρήση πινάκων από το πρόγραμμα καθώς και το πέρασμα πινάκων σε συναρτήσεις. 7. Εργαστηριακή Άσκηση #7: Εργαστηριακή άσκηση με αντικείμενο τη χρήση δεικτών για επεξεργασία πινάκων & για πέρασμα δεικτών ως παραμέτρους σε συναρτήσεις. 8. Εργαστηριακή Άσκηση #8: Εργαστηριακή άσκηση με αντικείμενο τη δημιουργία, χρήση και διαχείριση λίστας αποτελούμενη από κόμβους σύνθετων δομών. 7

9. Εργαστηριακή Άσκηση #9: Εργαστηριακή άσκηση με θέμα πράξεις πάνω σε λίστες. Διάσχιση και ταξινόμηση λίστας. Αναζήτηση σε λίστες με πολλαπλά κριτήρια. Για την άρτια διεξαγωγή των εργαστηριακών ασκήσεων σχεδιάστηκε υποστηρικτική ιστοσελίδα, μέσω της οποίας οι φοιτητές είχαν πρόσβαση κατά τη διάρκεια των ασκήσεων: Στην εκφώνηση της κάθε εργαστηριακής άσκησης. Στο πρόσθετο προετοιμασμένο υλικό, το οποίο ήταν απαραίτητο για κάθε άσκηση. 2.3 Εκπαιδευτικό υλικό. Κατά τη διδασκαλία του μαθήματος «Εισαγωγή στον Προγραμματισμό» οι φοιτητές είχαν στη διάθεσή τους το εξής εκπαιδευτικό υλικό: Βιβλίο του μαθήματος. Στους φοιτητές του Α έτους διανεμήθηκε βιβλίο του εμπορίου με τα εξής στοιχεία: Τίτλος: C Προγραμματισμός Συγγραφέας: Deitel & Deitel Εκδόσεις: Μ. Γκιούρδας 2003 Το βιβλίο αυτό καλύπτει πλήρως το γνωστικό αντικείμενο του μαθήματος. Οι θεματικές ενότητες των διαλέξεων ακολούθησαν την οργάνωση των κεφαλαίων του βιβλίου. Υποστηρικτική ιστοσελίδα του μαθήματος. Οι φοιτητές είχαν επίσης στη διάθεσή τους ιστοσελίδα με συνδέσμους στο εξής πρόσθετο υλικό: 1. Διαφάνειες των διαλέξεων του μαθήματος. 2. Εκφωνήσεις και λοιπό υλικό για τη διεξαγωγή των εργαστηριακών ασκήσεων του μαθήματος. 3. Ατομική προγραμματιστική εργασία. Η ιστοσελίδα, οι διαφάνειες και το λοιπό υποστηρικτικό υλικό των εργαστηρίων επισυνάπτεται στο παραδοτέο υλοποίησης του μαθήματος. 8