ΗΥ I: Εισαγωγή στον Προγραμματισμό (ΕΤΥ-114) (ΠΑΛΙΑ ΥΛΗ - FORTRAN) (ETY114)
Σταμάτης Σταματιάδης
Το μάθημα παρουσιάζει μια εισαγωγή στον προγραμματισμό Ηλεκτρονικών Υπολογιστών με χρήση της γλώσσας Fortran 95. Στα εργαστήρια αναπτύσσονται και υλοποιούνται απλοί αλγόριθμοι μέσω των οποίων διδάσκονται τα βασικά χαρακτηριστικά των γλωσσών δομημένου προγραμματισμού. Ο φοιτητής μπορεί να αποκτήσει την απαραίτητη γνώση, εμπειρία και βάσεις για να αντιμετωπίζει ικανοποιητικά τα υπολογιστικά προβλήματα που θα συναντήσει στη διάρκεια των σπουδών του ή της μετέπειτα πορείας του.
Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής/τρια θα γνωρίζει τις βασικές έννοιες δομημένου προγραμματισμού και θα είναι σε θέση να αναπτύσσει και να υλοποιεί στη γλώσσα Fortran απλούς αλγόριθμους.
Δείτε περισσότερα στο "Περίγραμμα".
ΛιγότεραΤο μάθημα παρουσιάζει μια εισαγωγή στον προγραμματισμό Ηλεκτρονικών Υπολογιστών με χρήση της γλώσσας Fortran 95. Στα εργαστήρια αναπτύσσονται και υλοποιούνται απλοί αλγόριθμοι μέσω των οποίων διδάσκονται τα βασικά χαρακτηριστικά των γλωσσών δομημένου προγραμματισμού. Ο φοιτητής μπορεί να αποκτήσει την απαραίτητη γνώση, εμπειρία και βάσεις για να αντιμετωπίζει ικανοποιητικά τα υπολογιστικά προβλήματα που θα συναντήσει στη διάρκεια των σπουδών του ή της μετέπειτα πορείας του.
Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής/τρια θα γνωρίζει τις βασικές έννοιες δομημένου προγραμματισμού και θα είναι σε θέση να αναπτύσσει και να υλοποιεί στη γλώσσα Fortran απλούς αλγόριθμους.
Δείτε περισσότερα στο "Περίγραμμα".
Το μάθημα παρουσιάζει μια εισαγωγή στον προγραμματισμό Ηλεκτρονικών Υπολογιστών με χρήση της γλώσσας Fortran 95. Στα εργαστήρια αναπτύσσονται και υλοποιούνται απλοί αλγόριθμοι μέσω των οποίων διδάσκονται τα βασικά χαρακτηριστικά των γλωσσών δομημένου προγραμματισμού. Ο φοιτητής μπορεί να αποκτήσει την απαραίτητη γνώση, εμπειρία και βάσεις για να αντιμετωπίζει ικανοποιητικά τα υπολογιστικά προβλήματα που θα συναντήσει στη διάρκεια των σπουδών του ή της μετέπειτα πορείας του.
Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής/τρια θα γνωρίζει τις βασικές έννοιες δομημένου προγραμματισμού και θα είναι σε θέση να αναπτύσσει και να υλοποιεί στη γλώσσα Fortran απλούς αλγόριθμους.
Δείτε περισσότερα στο "Περίγραμμα".
Περίγραμμα
Διδάσκοντες
- Σταμάτης Σταματιάδης
-
- email
- stamatis@materials.uoc.gr
- τηλέφωνο
- 2810394284
- γραφείο
- Γραφείο Β-201, κτίριο Επιστήμης Υπολογιστών.
- ώρες γραφείου
- Μετά από συνεννόηση με email.
- Δημήτρης Στεφανάκης
-
- email
- dimstef@materials.uoc.gr
- τηλέφωνο
- 2810394009
- γραφείο
- Ε-108 Κτήριο Μαθηματικών
- ώρες γραφείου
- -
- Κωστής Παπαδόπουλος
-
- email
- costis.papa@materials.uoc.gr
- τηλέφωνο
- 2810394288
- γραφείο
- Ε-116 Κτήριο Μαθηματικών
- ώρες γραφείου
- -
Μεταπτυχιακοί Βοηθοί
Ώρες διεξαγωγής
- Θεωρία
- Παρασκευή 09:00-11:00, στην αίθουσα Α1 του κτηρίου Επιστήμης Υπολογιστών.
- Ασκήσεις
- Τρίτη 11:00-14:00 ή Τετάρτη 09:00-12:00, στην αίθουσα Ε109 του Μαθηματικού.
Περιεχόμενο μαθήματος
Η διδακτέα ύλη του μαθήματος περιλαμβάνει
- Ενσωματωμένοι τύποι της Fortran 95 (INTEGER, REAL/DOUBLE PRECISION, LOGICAL, CHARACTER). Αριθμητικοί τελεστές - Προτεραιότητες. Μεταβλητές - Σταθερές ποσότητες. Εντολή εκχώρησης τιμής. Κανόνες σύνταξης κώδικα.
- Ενσωματωμένες αριθμητικές συναρτήσεις.
- Τελεστές σύγκρισης. Λογικοί τελεστές. Λογική έκφραση. Εντολές ελέγχου (IF, SELECT CASE).
- Εντολή επανάληψης (DO). Εντολές αλλαγής ροής (CYCLE, EXIT). Εφαρμογές: μετρητής, υπολογισμός αθροίσματος-γινομένου. Υπονοούμενο DO.
- Διανύσματα στατικά και δυναμικά. Εντολές δέσμευσης-αποδέσμευσης μνήμης (ALLOCATE, DEALLOCATE). Ενσωματωμένες συναρτήσεις με όρισμα διανύσματα. Πράξεις διανυσμάτων. Τμήμα διανύσματος. Πίνακες.
- Χειρισμός αρχείων. Διαμόρφωση εκτύπωσης.
- Συναρτήσεις – Υπορουτίνες.
- Παραγόμενοι τύποι – MODULE.
- Λοιπά θέματα (ενδεικτικά: αλγόριθμοι αναζήτησης και ταξινόμησης).
Προτεινόμενα συγγράμματα
Κεντρικό ρόλο στην ανάπτυξη του μαθήματος παίζει η ιστοσελίδα του με σχετικές ανακοινώσεις, εργαστηριακές ασκήσεις και άλλο υλικό. Η διδασκαλία του μαθήματος βασίζεται στις διαλέξεις και στις εργαστηριακές ασκήσεις.
Συνοπτική αλλά πλήρης ανάπτυξη της ύλης γίνεται στις σημειώσεις της γλώσσας Fortran 95. Οι σημειώσεις αυτές ακολουθώνται στις διαλέξεις.
Μπορείτε να επιλέξετε ως βοηθήματα ένα από τα παρακάτω βιβλία:
- Fortran 77/90/95 και Fortran 2003, Α. Καράκος, Εκδόσεις Κλειδάριθμος, 2008.
- Εισαγωγή στη Fortran 90/95/2003, Ν. Καραμπετάκης, Εκδόσεις Ζήτη, 2011.
Μέθοδοι αξιολόγησης
Για τους φοιτητές που εγγράφονται πρώτη φορά στο μάθημα το ακ. έτος 2018-2019 και μετά, ισχύουν τα ακόλουθα:
- Η παρακολούθηση των ασκήσεων και η εξέταση κάθε εργαστηρίου είναι ΥΠΟΧΡΕΩΤΙΚΗ.
- Επιτρέπονται δύο (2) απουσίες στα εργαστήρια. Επιπλέον απουσία θα πρέπει να γίνεται για σοβαρούς λόγους που θα εξετάζονται από την επιτροπή σπουδών. Η παρουσία θα λαμβάνεται αυτόματα κατά τη διάρκεια του εργαστηρίου. Για να υπολογιστεί η παρουσία, ο φοιτητής πρέπει να συμμετάσχει και στην εξέταση του εργαστηρίου.
- Στο τελευταίο ημίωρο του εργαστηρίου θα γίνεται εξέταση στην ύλη του εργαστηρίου. Σε περίπτωση απουσίας ο βαθμός στην εξέταση είναι 0. Ο υπολογισμός της συνολικής βαθμολογίας των εργαστηρίων προκύπτει από το μέσο όρο των βαθμών. Οι δύο χειρότεροι βαθμοί αγνοούνται. Η παρακολούθηση των εργαστηρίων θεωρείται επιτυχής αν ο φοιτητής συγκεντρώσει μέσο όρο τουλάχιστον 4.0 στις εξετάσεις των εργαστηρίων.
- Σε περίπτωση αποτυχίας στο εργαστηριακό μέρος (από απουσίες ή χαμηλότερο βαθμό από 4) ο φοιτητής δεν έχει δικαίωμα να εξεταστεί τον Ιανουάριο ή το Σεπτέμβριο. Έχει υποχρέωση να παρακολουθήσει ξανά το εργαστηριακό μέρος.
- Ο τελικός βαθμός προκύπτει με συνυπολογισμό των εξετάσεων εργαστηρίου κατά 40% και της τελικής εξέτασης κατά 60%.
- Σε περίπτωση επιτυχίας στο εργαστηριακό μέρος και αποτυχίας στην τελική εξέταση, ο βαθμός των εργαστηρίων διατηρείται. Δεν υπάρχει η δυνατότητα επανάληψης του εργαστηρίου.
Για τους φοιτητές που έχουν εγγραφεί πρώτη φορά στο μάθημα μέχρι και το ακ. έτος 2017-2018, ισχύουν τα ακόλουθα:
- Η παρακολούθηση των εργαστηρίων είναι ΠΡΟΑΙΡΕΤΙΚΗ, αν υπάρχουν κενές θέσεις.
- Η βαθμολογία προκύπτει κατά 100% από την τελική εξέταση (Ιανουαρίου ή Σεπτεμβρίου).
Τελική Εξέταση
Η εξέταση γίνεται στην αίθουσα υπολογιστών και περιλαμβάνει μόνο ασκήσεις. Οι σημειώσεις του μαθήματος και οι λύσεις των ασκήσεων των εργαστηρίων θα είναι διαθέσιμες ηλεκτρονικά κατά τη διάρκεια της εξέτασης. Επιπλέον, κάθε φοιτητής μπορεί να φέρει ένα από τα συγγράμματα του μαθήματος. ΑΠΑΓΟΡΕΥΕΤΑΙ Η ΧΡΗΣΗ ΚΙΝΗΤΩΝ ΤΗΛΕΦΩΝΩΝ.
Βιβλιογραφία
- Σημειώσεις διδάσκοντος.
- Σημειώσεις στα Ελληνικά για τη Fortran 90/95 μπορείτε να βρείτε στη σχετική σελίδα του Μαθηματικού Α.Π.Θ., γραμμένες από τον Αν. Καθηγητή Ν. Καραμπετάκη.
- Fortran 77/90/95 και Fortran 2003, Α. Καράκος, Εκδόσεις Κλειδάριθμος, 2008.
- Εισαγωγή στη Fortran 90/95/2003, Ν. Καραμπετάκης, Εκδόσεις Ζήτη, 2011.
Περισσότερα
Δωρεάν Compilers της Fortran
- SilverFROST FTN95 έκδοση για Windows. Οδηγίες εγκατάστασης σε Windows 10.
- Online fortran compiler
- gfortran installer for Mac OS X
IDE
- Σταμάτης Σταματιάδης
-
- stamatis@materials.uoc.gr
- τηλέφωνο
- 2810394284
- γραφείο
- Γραφείο Β-201, κτίριο Επιστήμης Υπολογιστών.
- ώρες γραφείου
- Μετά από συνεννόηση με email.
- Δημήτρης Στεφανάκης
-
- dimstef@materials.uoc.gr
- τηλέφωνο
- 2810394009
- γραφείο
- Ε-108 Κτήριο Μαθηματικών
- ώρες γραφείου
- -
- Κωστής Παπαδόπουλος
-
- costis.papa@materials.uoc.gr
- τηλέφωνο
- 2810394288
- γραφείο
- Ε-116 Κτήριο Μαθηματικών
- ώρες γραφείου
- -
Μεταπτυχιακοί Βοηθοί
- Θεωρία
- Παρασκευή 09:00-11:00, στην αίθουσα Α1 του κτηρίου Επιστήμης Υπολογιστών.
- Ασκήσεις
- Τρίτη 11:00-14:00 ή Τετάρτη 09:00-12:00, στην αίθουσα Ε109 του Μαθηματικού.
Η διδακτέα ύλη του μαθήματος περιλαμβάνει
- Ενσωματωμένοι τύποι της Fortran 95 (INTEGER, REAL/DOUBLE PRECISION, LOGICAL, CHARACTER). Αριθμητικοί τελεστές - Προτεραιότητες. Μεταβλητές - Σταθερές ποσότητες. Εντολή εκχώρησης τιμής. Κανόνες σύνταξης κώδικα.
- Ενσωματωμένες αριθμητικές συναρτήσεις.
- Τελεστές σύγκρισης. Λογικοί τελεστές. Λογική έκφραση. Εντολές ελέγχου (IF, SELECT CASE).
- Εντολή επανάληψης (DO). Εντολές αλλαγής ροής (CYCLE, EXIT). Εφαρμογές: μετρητής, υπολογισμός αθροίσματος-γινομένου. Υπονοούμενο DO.
- Διανύσματα στατικά και δυναμικά. Εντολές δέσμευσης-αποδέσμευσης μνήμης (ALLOCATE, DEALLOCATE). Ενσωματωμένες συναρτήσεις με όρισμα διανύσματα. Πράξεις διανυσμάτων. Τμήμα διανύσματος. Πίνακες.
- Χειρισμός αρχείων. Διαμόρφωση εκτύπωσης.
- Συναρτήσεις – Υπορουτίνες.
- Παραγόμενοι τύποι – MODULE.
- Λοιπά θέματα (ενδεικτικά: αλγόριθμοι αναζήτησης και ταξινόμησης).
Κεντρικό ρόλο στην ανάπτυξη του μαθήματος παίζει η ιστοσελίδα του με σχετικές ανακοινώσεις, εργαστηριακές ασκήσεις και άλλο υλικό. Η διδασκαλία του μαθήματος βασίζεται στις διαλέξεις και στις εργαστηριακές ασκήσεις.
Συνοπτική αλλά πλήρης ανάπτυξη της ύλης γίνεται στις σημειώσεις της γλώσσας Fortran 95. Οι σημειώσεις αυτές ακολουθώνται στις διαλέξεις.
Μπορείτε να επιλέξετε ως βοηθήματα ένα από τα παρακάτω βιβλία:
- Fortran 77/90/95 και Fortran 2003, Α. Καράκος, Εκδόσεις Κλειδάριθμος, 2008.
- Εισαγωγή στη Fortran 90/95/2003, Ν. Καραμπετάκης, Εκδόσεις Ζήτη, 2011.
Για τους φοιτητές που εγγράφονται πρώτη φορά στο μάθημα το ακ. έτος 2018-2019 και μετά, ισχύουν τα ακόλουθα:
- Η παρακολούθηση των ασκήσεων και η εξέταση κάθε εργαστηρίου είναι ΥΠΟΧΡΕΩΤΙΚΗ.
- Επιτρέπονται δύο (2) απουσίες στα εργαστήρια. Επιπλέον απουσία θα πρέπει να γίνεται για σοβαρούς λόγους που θα εξετάζονται από την επιτροπή σπουδών. Η παρουσία θα λαμβάνεται αυτόματα κατά τη διάρκεια του εργαστηρίου. Για να υπολογιστεί η παρουσία, ο φοιτητής πρέπει να συμμετάσχει και στην εξέταση του εργαστηρίου.
- Στο τελευταίο ημίωρο του εργαστηρίου θα γίνεται εξέταση στην ύλη του εργαστηρίου. Σε περίπτωση απουσίας ο βαθμός στην εξέταση είναι 0. Ο υπολογισμός της συνολικής βαθμολογίας των εργαστηρίων προκύπτει από το μέσο όρο των βαθμών. Οι δύο χειρότεροι βαθμοί αγνοούνται. Η παρακολούθηση των εργαστηρίων θεωρείται επιτυχής αν ο φοιτητής συγκεντρώσει μέσο όρο τουλάχιστον 4.0 στις εξετάσεις των εργαστηρίων.
- Σε περίπτωση αποτυχίας στο εργαστηριακό μέρος (από απουσίες ή χαμηλότερο βαθμό από 4) ο φοιτητής δεν έχει δικαίωμα να εξεταστεί τον Ιανουάριο ή το Σεπτέμβριο. Έχει υποχρέωση να παρακολουθήσει ξανά το εργαστηριακό μέρος.
- Ο τελικός βαθμός προκύπτει με συνυπολογισμό των εξετάσεων εργαστηρίου κατά 40% και της τελικής εξέτασης κατά 60%.
- Σε περίπτωση επιτυχίας στο εργαστηριακό μέρος και αποτυχίας στην τελική εξέταση, ο βαθμός των εργαστηρίων διατηρείται. Δεν υπάρχει η δυνατότητα επανάληψης του εργαστηρίου.
Για τους φοιτητές που έχουν εγγραφεί πρώτη φορά στο μάθημα μέχρι και το ακ. έτος 2017-2018, ισχύουν τα ακόλουθα:
- Η παρακολούθηση των εργαστηρίων είναι ΠΡΟΑΙΡΕΤΙΚΗ, αν υπάρχουν κενές θέσεις.
- Η βαθμολογία προκύπτει κατά 100% από την τελική εξέταση (Ιανουαρίου ή Σεπτεμβρίου).
Τελική Εξέταση
Η εξέταση γίνεται στην αίθουσα υπολογιστών και περιλαμβάνει μόνο ασκήσεις. Οι σημειώσεις του μαθήματος και οι λύσεις των ασκήσεων των εργαστηρίων θα είναι διαθέσιμες ηλεκτρονικά κατά τη διάρκεια της εξέτασης. Επιπλέον, κάθε φοιτητής μπορεί να φέρει ένα από τα συγγράμματα του μαθήματος. ΑΠΑΓΟΡΕΥΕΤΑΙ Η ΧΡΗΣΗ ΚΙΝΗΤΩΝ ΤΗΛΕΦΩΝΩΝ.
- Σημειώσεις διδάσκοντος.
- Σημειώσεις στα Ελληνικά για τη Fortran 90/95 μπορείτε να βρείτε στη σχετική σελίδα του Μαθηματικού Α.Π.Θ., γραμμένες από τον Αν. Καθηγητή Ν. Καραμπετάκη.
- Fortran 77/90/95 και Fortran 2003, Α. Καράκος, Εκδόσεις Κλειδάριθμος, 2008.
- Εισαγωγή στη Fortran 90/95/2003, Ν. Καραμπετάκης, Εκδόσεις Ζήτη, 2011.
Δωρεάν Compilers της Fortran
- SilverFROST FTN95 έκδοση για Windows. Οδηγίες εγκατάστασης σε Windows 10.
- Online fortran compiler
- gfortran installer for Mac OS X
IDE
- Εισαγωγή.
- Παράδειγμα προγράμματος και ανάλυσή του.
- Εντολές εισόδου (READ) και εξόδου (PRINT) δεδομένων.
- Ακέραιος τύπος (INTEGER), δήλωση, μορφή ακέραιων τιμών. Αριθμητικοί τελεστές για ακέραιους (+,-,*,/,**), συνάρτηση MOD.
- Πραγματικοί αριθμοί απλής και διπλής ακρίβειας, δήλωση, μορφή. Αριθμητικοί τελεστές για πραγματικούς (+,-,*,/,**).
- Έννοια Μεταβλητής. Εντολή εκχώρησης.
Σχετικές παράγραφοι από τις σημειώσεις: Κεφ. 1, 2.1, 2.2, 2.3, 2.5
Καταγραφή διάλεξης ακ. έτους 2020-2021
Επανάληψη: Πραγματικοί τύποι απλής και διπλής ακρίβειας, τιμές, αριθμητικοί τελεστές.
Είσοδος/έξοδος δεδομένων.
Δήλωση σταθεράς (PARAMETER). Ρητή μετατροπή τιμών.
Ενσωματωμένες Αριθμητικές Συναρτήσεις.
Λογικός τύπος, τύπος χαρακτήρα.
Απλές και σύνθετες λογικές εκφράσεις, τελεστές σύγκρισης (>,<,>=,<=,==,/=), λογικοί τελεστές (.and., .or., .not.).
Εντολές ελέγχου ροής (IF, SELECT CASE).
Σχετικές παράγραφοι από τις σημειώσεις: 2.4, 2.6 (όχι 2.6.3), 2.8, 2.9 (όχι 2.9.1), 2.10, Κεφ. 3
Εντολή επανάληψης για συγκεκριμένο πλήθος επαναλήψεων.
Εφαρμογές: μετρητής, άθροισμα, γινόμενο.
Σχετικές παράγραφοι από τις σημειώσεις: 4.1, 4.2 (όχι 4.2.3)
Εντολή επανάληψης για απροσδιόριστο πλήθος επαναλήψεων.
Εντολές EXIT, CYCLE.
Όνομα βρόχου. Υπονοούμενο DO.
Σχετικές παράγραφοι από τις σημειώσεις: 4.2.3, 4.3, 4.4
Διάνυσμα γνωστού πλήθους στοιχείων: Δήλωση, πρόσβαση στοιχείων, εκχώρηση τιμών.
Διάνυσμα άγνωστου πλήθους στοιχείων: δήλωση, δημιουργία, χρήση, καταστροφή.
Ενσωματωμένες συναρτήσεις για διανύσματα (SIZE, SUM, PRODUCT, MAXVAL/MINVAL, COUNT, κ.α.).
Πράξεις διανυσμάτων κατά στοιχείο.
Σχετικές παράγραφοι από τις σημειώσεις: Κεφ. 5 εκτός από 5.2, 5.7, 5.8
Τμήμα διανύσματος.
Πίνακες.
Αρχεία: εντολές OPEN, READ/WRITE, CLOSE.
Σχετικές παράγραφοι από τις σημειώσεις: 5.2, 5.7, 7.3 εκτός από 7.3.2
Καταγραφή διάλεξης ακ. έτους 2020-2021 (για αρχεία. Οι Πίνακες είναι καινούργιο κομμάτι της ύλης).
Διαμορφώσεις (format) για ακέραιους, πραγματικούς, σειρές χαρακτήρων.
Format ελέγχου (κενά, αλλαγή γραμμής).
Εντολή WRITE για μη αλλαγή γραμμής.
Σχετικές παράγραφοι από τις σημειώσεις: Κεφ. 7 εκτός από 7.3
Υποπρογράμματα (συναρτήσεις-υπορουτίνες): Έννοια, ορισμός, δήλωση, κλήση.
Προσδιορισμός INTENT.
Απλές μεταβλητές ως ορίσματα.
Σχετικές παράγραφοι από τις σημειώσεις: 8.1, 8.2, 8.3, 8.4, 8.5, 8.6
Διανύσματα ως ορίσματα υποπρογραμμάτων.
Αναδρομικά (RECURSIVE) υποπρογράμματα.
Υποπρογράμματα ELEMENTAL.
Γεννήτρια τυχαίων αριθμών.
Σχετικές παράγραφοι από τις σημειώσεις: 8.7, 8.9, 8.10, 2.9.1