ENS213 Programming for Engineers
ENS213 Programming for Engineers
Syllabus | International University of Sarajevo - Last Update on Mar 03, 2026
Faculty of Engineering and Natural Sciences
Özge Büyükdağlı
Course Lecturer
Course Objectives
Designed for students with little or no prior experience in programming. The course introduces the basic concepts of procedural programming. The main goal is for students to develop confidence in programming and the ability to apply programming skills to problems arising in a variety of fields. Topics include: high-programming languages, language syntax, control statements, loops, functions, arrays, simple searching and sorting. (This course is equivalent to CS103, so if you took CS103, you cannot take this course)
Learning Outcomes
After successful completion of the course, the student will be able to:
Course Materials
Required Textbook
Absolute C++, Walter Savitch, 6th ed. Pearson, 2016
Additional Literature
R2: C++ Programming: From Problem Analysis to Program Design, D. S. Malik, 8th ed. Cengage, 2018. R3: C++ How to Program, Paul Deitel, Harvey Deitel, 8th ed. Pearson, 2014.Teaching Methods
Class discussions with examples
Active lab sessions for engaged learning and continuous feedback on progress
Lab exercises and practical assignments
Weekly Topics
| Week | Topic | Readings / References |
|---|---|---|
| 1 | Overview of Computers and Programming | |
| 2 | Introduction to C++: variables, expressions, assignment statements, console I/O | Chapters 1.2, 1.3 |
| 3 | Introduction to C++: programming style, libraries, Boolean expressions, branching | Chapters 1.4, 1.5, 2.1, 2.2 |
| 4 | Flow of control: loops, file inputs | Chapters 2.3, 2.4 |
| 5 | Functions: pre-defined functions, user-defined functions, scopes | Chapters 3.1, 3.2 |
| 6 | Parameters and overloading | Chapters 4.1, 4.2 |
| 7 | Testing, debugging, arrays | Chapters 4.3, 5.1, 5.2 |
| 8 | Midterm | |
| 9 | More on arrays, structures | Chapters 5.3, 5.4, 6.1 |
| 10 | Classes | Chapters 6.2 |
| 11 | Strings | Chapters 9.1, 9.2, 9.3 |
| 12 | Pointers, dynamic arrays | Chapters 10.1, 10.2 |
| 13 | Classes, pointers and dynamic arrays, Streams and File I/O | Chapters 10.3, 12.1 |
| 14 | Recursion | Chapters 13.1, 13.2, 13.3 |
| 15 | Revision for final exam |
Course Schedule (All Sections)
Office Hours & Room
| Day | Time | Office | Notes |
|---|---|---|---|
| Monday | 15:00 - 17:00 | A F1.8 | |
| Tuesday | 12:00 - 17:00 | A F1.8 | |
| Wednesday | 15:00 - 17:00 | A F1.8 |
Assessment Methods and Criteria
Assessment Components
Final Exam
AI: Not AllowedAlignment with Learning Outcomes : 1 2 3 4 5
Midterm Exam
AI: Not AllowedAlignment with Learning Outcomes : 1 2 3
Tests
AI: Not AllowedAlignment with Learning Outcomes : 1 2 3 4 5
Labs(Assignments)
AI: Not AllowedAlignment with Learning Outcomes : 1 2 3 4 5
Project
AI: Not AllowedAlignment with Learning Outcomes : 1 2 3 4 5
IUS Grading System
| Grading Scale | IUS Grading System | IUS Coeff. | Letter (B&H) | Numerical (B&H) |
|---|---|---|---|---|
| 0 - 44 | F | 0 | F | 5 |
| 45 - 54 | E | 1 | ||
| 55 - 64 | C | 2 | E | 6 |
| 65 - 69 | C+ | 2.3 | D | 7 |
| 70 -74 | B- | 2.7 | ||
| 75 - 79 | B | 3 | C | 8 |
| 80 - 84 | B+ | 3.3 | ||
| 85 - 94 | A- | 3.7 | B | 9 |
| 95 - 100 | A | 4 | A | 10 |
Late Work Policy
Information about late submission policies will be shared during class and posted in this section. Please check back for official guidelines.
ECTS Credit Calculation
📚 Student Workload
This 6 ECTS credit course corresponds to 150 hours of total student workload, distributed as follows:
Lecture hours
42 hours ⏳ (14 week × 3 h)
Assignments
24 hours ⏳ (12 week × 2 h)
Active tutorials
24 hours ⏳ (12 week × 2 h)
Tests study
6 hours ⏳ (3 week × 2 h)
Midterm Exam Study
10 hours ⏳ (1 week × 10 h)
Final Exam Study
14 hours ⏳ (1 week × 14 h)
Home Study
30 hours ⏳ (15 week × 2 h)
150 Total Workload Hours
6 ECTS Credits
Course Policies
Academic Integrity
All work submitted must be your own. Plagiarism, cheating, or any form of academic dishonesty will result in disciplinary action according to university policies. When in doubt about citation practices, consult the instructor.
Attendance Policy
Students are expected to adhere to the attendance requirements as outlined in the International University of Sarajevo Study Rules and Regulations. Excessive absences, whether excused or unexcused, may impact academic performance and eligibility for assessment. Mandatory sessions (e.g., labs, workshops) require attendance unless formally exempted. For detailed policies on absences, documentation, and penalties, please refer to the official university regulations.
Technology & AI Policy
Laptops/tablets may be used for note-taking only during lectures. Phones should be silenced and put away during all class sessions. Audio/video recording requires prior permission from the instructor.
Artificial Intelligence (AI) Usage: The use of AI tools (e.g., ChatGPT, Copilot, Gemini) varies by assessment component. Please refer to the AI usage indicator next to each assessment item in the Assessment Methods and Criteria section above. Submitting AI-generated content as your own work, where AI is not explicitly allowed, constitutes an academic integrity violation.
Communication Policy
All course-related communication should occur through official university channels (institutional email or SIS). Emails should include [ENS213] in the subject line.
Academic Quality Assurance Policy
Course Academic Quality Assurance is achieved through Semester Student Survey. At the end of each academic year, the institution of higher education is obliged to evaluate work of the academic staff, or the success of realization of the curricula.
Learning Tips
Be prepared to contribute thoughtfully during class discussions, labs, or collaborative work. Active participation deepens understanding and encourages critical thinking.
Complete assigned readings or prep materials before class. Take notes, highlight key ideas, and jot down questions. Aim to grasp core concepts and their applications—not just facts.
Use course frameworks or methodologies to analyze problems, case studies, or projects. Begin early to allow time for reflection and refinement. Seek feedback to improve your work.
Don’t hesitate to reach out when something is unclear. Use office hours, discussion boards, or peer networks to clarify concepts and stay on track.
Syllabus Last Updated on Mar 03, 2026 | International University of Sarajevo
Print Syllabus
Referencing Curricula Print this page
| Course Code | Course Title | Weekly Hours* | ECTS | Weekly Class Schedule | ||||||
| T | P | |||||||||
| ENS213 | Programming for Engineers | 3 | 2 | 6 | ||||||
| Prerequisite | None | It is a prerequisite to | EE221 | |||||||
| Lecturer | Özge Büyükdağlı | Office Hours / Room / Phone | Monday: 15:00-17:00 Tuesday: 12:00-17:00 Wednesday: 15:00-17:00 |
|||||||
| obuyukdagli@ius.edu.ba | ||||||||||
| Assistant | Nuh Tulic, Nesibe Husejnovic | Assistant E-mail | ||||||||
| Course Objectives | Designed for students with little or no prior experience in programming. The course introduces the basic concepts of procedural programming. The main goal is for students to develop confidence in programming and the ability to apply programming skills to problems arising in a variety of fields. Topics include: high-programming languages, language syntax, control statements, loops, functions, arrays, simple searching and sorting. (This course is equivalent to CS103, so if you took CS103, you cannot take this course) |
|||||||||
| Textbook | Absolute C++, Walter Savitch, 6th ed. Pearson, 2016 | |||||||||
| Additional Literature |
|
|||||||||
| Learning Outcomes | After successful completion of the course, the student will be able to: | |||||||||
|
||||||||||
| Teaching Methods | Class discussions with examples. Active lab sessions for engaged learning and continuous feedback on progress. Lab exercises and practical assignments. | |||||||||
| Teaching Method Delivery | Face-to-face | Teaching Method Delivery Notes | ||||||||
| WEEK | TOPIC | REFERENCE | ||||||||
| Week 1 | Overview of Computers and Programming | |||||||||
| Week 2 | Introduction to C++: variables, expressions, assignment statements, console I/O | Chapters 1.2, 1.3 | ||||||||
| Week 3 | Introduction to C++: programming style, libraries, Boolean expressions, branching | Chapters 1.4, 1.5, 2.1, 2.2 | ||||||||
| Week 4 | Flow of control: loops, file inputs | Chapters 2.3, 2.4 | ||||||||
| Week 5 | Functions: pre-defined functions, user-defined functions, scopes | Chapters 3.1, 3.2 | ||||||||
| Week 6 | Parameters and overloading | Chapters 4.1, 4.2 | ||||||||
| Week 7 | Testing, debugging, arrays | Chapters 4.3, 5.1, 5.2 | ||||||||
| Week 8 | Midterm | |||||||||
| Week 9 | More on arrays, structures | Chapters 5.3, 5.4, 6.1 | ||||||||
| Week 10 | Classes | Chapters 6.2 | ||||||||
| Week 11 | Strings | Chapters 9.1, 9.2, 9.3 | ||||||||
| Week 12 | Pointers, dynamic arrays | Chapters 10.1, 10.2 | ||||||||
| Week 13 | Classes, pointers and dynamic arrays, Streams and File I/O | Chapters 10.3, 12.1 | ||||||||
| Week 14 | Recursion | Chapters 13.1, 13.2, 13.3 | ||||||||
| Week 15 | Revision for final exam | |||||||||
| Assessment Methods and Criteria | Evaluation Tool | Quantity | Weight | Alignment with LOs | AI Usage |
| Final Exam | 1 | 26 | 1,2,3,4,5 | Not Allowed | |
| Semester Evaluation Components | |||||
| Midterm Exam | 1 | 20 | 1,2,3 | Not Allowed | |
| Tests | 2 | 10 | 1,2,3,4,5 | Not Allowed | |
| Labs(Assignments) | 12 | 24 | 1,2,3,4,5 | Not Allowed | |
| Project | 1 | 20 | 1,2,3,4,5 | Not Allowed | |
| *** ECTS Credit Calculation *** | |||||
| Activity | Hours | Weeks | Student Workload Hours | Activity | Hours | Weeks | Student Workload Hours | |||
| Lecture hours | 3 | 14 | 42 | Assignments | 2 | 12 | 24 | |||
| Active tutorials | 2 | 12 | 24 | Tests study | 2 | 3 | 6 | |||
| Midterm Exam Study | 10 | 1 | 10 | Final Exam Study | 14 | 1 | 14 | |||
| Home Study | 2 | 15 | 30 | |||||||
| Total Workload Hours = | 150 | |||||||||
| *T= Teaching, P= Practice | ECTS Credit = | 6 | ||||||||
| Course Academic Quality Assurance: Semester Student Survey | Last Update Date: 27/03/2026 | |||||||||
