Structured Programming
General
- Course Code: 1102
- Semester: 1st
- Course Type: Special Background (SB)
- Course Category: Compulsory (CO)
- Scientific Field: Programming and Algorithms (PA)
- Lectures: 4 hours/week
- Lab teaching: 2 hours/week
- ECTS units: 6
- Course webpage: https://aetos.it.teithe.gr/~gouliana/dom_progr.html
- Teching and exams language: Greek, English
- Coordinator: Goulianas Konstantinos
- Instructors: Goulianas Konstantinos, Asdre Katerina, Ioannidis Lazaros, Karamitopoulos Leonidas
Educational goals
The course is an introduction to the basic principles of Algorithmic and Programming. Subject objectives of the course are (a) the development of algorithmic skills and competences and (b) the learning of the basic principles of structured programming without any prior programming experience. The course uses the programming capabilities provided by C language to implement simple algorithms and to gradually learn the basics of structured programming through small programs and tasks. In more detail this introductory course: ● Provides students with the basics of the principles of algorithmic and structured programming. ● Helps to understand C.'s environment and characteristics. ● Provides programming experience capable of implementing simple algorithms and simple practical applications. ● Helps to implement simple programs. ● Provides the background for further deepening in Object Oriented Programming in the 2nd semester, as well as learning other programming languages. Upon successful completion of the course the student will be able to :
- Understand the structures of algorithms and programming problems
- Recognize and interpret the data of a problem
- Learn and apply programming algorithms and problem solving commands
- To evaluate and draw the appropriate conclusions from the solutions to the problems
- Practicing in the laboratory
- Correct his-her mistakes by commenting on the lectures and the laboratory of common mistakes in course exercises
- Practice in critical and inductive thinking
Course Contents
The topics covered in the course (theoretical and laboratory part) are:
● Introduction to Algorithmic, Structured Programming and C
● Basic Data Types – Operators – Constant – Variables
● Input – Output Data
● If switch commands
● Repeat Commands: while, do… while, for
● Functions – parameters
● Arrays – One-dimensional – Two-dimensional
● Serial – Binary Search, Classification Algorithms
● Recursion
● Indicators
● Structures
● Files
Teaching Methods - Evaluation
Teaching Method
- Face to face theoretical teaching (delivery, discussion, problem solving), laboratory practice with solved and unsolved exercises.
Use of ICT means
- Using the moodle platform.
- Further support of the learning process
- through the course website.
- Using specialized software (DevC ++)
Teaching Organization
Activity | Semester workload |
Lectures | 52 |
Writing and presenting compulsory work | 26 |
Individual study and analysis of literature | 102 |
Total | 180 |
Students evaluation
Laboratory Practice (30%), which includes:
- Exercises in the laboratory and solved for practice
- Final Exam in the Laboratory Part of the Course with C Code Writing Exercises
Written final exam in Theoretical Part of the course (70%) which includes exercises related to simple algorithms and problems.
Optional Progress Test.
30% of the final grade in the Laboratory Part of the course is added to 70% of the final grade in the Theoretical Part of the course, only if the student (s) has the necessary attendance in the Laboratory and a grade of at least 5.0.
Recommended Bibliography
Recommended Bibliography through "Eudoxus"
- C για Επιστήμονες και Μηχανικούς, Cheng H. Κωδικός Βιβλίου στον Εύδοξο:18548936
- C Προγραμματισμός, 7η Έκδοση, Abbey Deitel,Harvey, Deitel, Κωδικός Βιβλίου στον Εύδοξο: 41960258
- C: Από τη Θεωρία στην Εφαρμογή, Γ. Σ. Τσελίκης - Ν. Δ. Τσελίκας, Κωδικός Βιβλίου στον Εύδοξο: 68383623
- Εισαγωγή στον Προγραμματισμό β έκδοση, Αντωνοπούλου Η. Βογιατζής Ι., Κωδικός Βιβλίου στον Εύδοξο:77120162
Complementary international bibliography
- Greg Perry, C Programming Absolute Beginner's Guide, Que Publishing; 3 edition (7 Aug. 2013), 978-0789751980