Mechanical Engineering | |||||
Bachelor | TR-NQF-HE: Level 6 | QF-EHEA: First Cycle | EQF-LLL: Level 6 |
Course Code: | ENM102 | ||||
Course Name: | Introduction to Algorithm and Programming | ||||
Course Semester: | Spring | ||||
Course Credits: |
|
||||
Language of instruction: | TR | ||||
Course Requirement: | |||||
Does the Course Require Work Experience?: | No | ||||
Type of course: | Necessary | ||||
Course Level: |
|
||||
Mode of Delivery: | Face to face | ||||
Course Coordinator : | Ar.Gör. HÜSEYİN TANSU YILDIRIM | ||||
Course Lecturer(s): | Dr. Öğr. Üyesi Mehmet Güçlü | ||||
Course Assistants: |
Course Objectives: | The purpose of this course is to help the student learn the general principles of object-oriented programming, including how to design, implement, document, test, and debug computer programs. The course is based on the JAVA programming language. |
Course Content: | An introduction to the process of program design and analysis for students who have no prior programming experience. Topics to be covered include basic data types and their operators, expressions and assignment statements, I/O, control structures (selection, loops), classes (including methods and fields), arrays, functions and procedures, files. |
The students who have succeeded in this course;
1) Assess how Java programs are created, compiled, and run. Distinguish and debug syntax errors, runtime errors, and logic errors. 2) Use selection, control and repetition structures. 3) Design and implement methods. 4) Know the structure of arrays and how to process, search and sort the contents of arrays. 5) Design programs using the object-oriented paradigm. Use UML graphical notations to describe classes and objects. |
Week | Subject | Related Preparation |
1) | Introduction to Computer Systems | |
2) | Introduction to Programs and Java | |
3) | Elementary Programming 1 | |
4) | Elementary Programming 2 | |
5) | Selection | |
6) | Mathematical Function, Characters and String | |
7) | Loops | |
8) | Midterm | |
9) | Methods | |
10) | Single-dimensional arrays | |
11) | Multi-dimensional arrays | |
12) | Objects and classes | |
13) | Object oriented thinking | |
14) | Inheritance and Polymorphism | |
15) | Final Exam |
Course Notes / Textbooks: | Ders notları ve kullanılan kaynaklar. 1) Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to algorithms/ author : Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. The MIT Press. 2) Algoritma Geliştirme ve Programlamaya Giriş, Prof. Dr. Fahri Vatansever, Seçkin Yayıncılık, 2015, ISBN: 9789750225642. 3) Yeni Başlayanlar İçin Python, Ahmet Aksoy, Abaküs Kitap, 2021, ISBN: 9786059129503 4) Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, The MIT Press, 2009, ISBN: 978026203384. 5) Panos Louridas. (2020). Algorithms. The MIT Press. 6) Flejoles, R. P. (2019). Introduction To Algorithms. Arcler Press. |
References: | 1) Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to algorithms/ author : Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. The MIT Press. 2) Algoritma Geliştirme ve Programlamaya Giriş, Prof. Dr. Fahri Vatansever, Seçkin Yayıncılık, 2015, ISBN: 9789750225642. 3) Yeni Başlayanlar İçin Python, Ahmet Aksoy, Abaküs Kitap, 2021, ISBN: 9786059129503 4) Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, The MIT Press, 2009, ISBN: 978026203384. 5) Panos Louridas. (2020). Algorithms. The MIT Press. 6) Flejoles, R. P. (2019). Introduction To Algorithms. Arcler Press. |
No Effect | 1 Lowest | 2 Medium | 3 Highest |
Program Outcomes | Level of Contribution | |
1) | Ability to utilize advanced theoretical and applied knowledge in the field. | 1 |
2) | Using the advanced knowledge and skills acquired in the field, being able to interpret and evaluate data, identify problems, analyze them, and develop solution proposals based on research and evidence. | |
3) | Being able to organize and implement projects and activities for the social environment in which one lives with a sense of social responsibility. | |
4) | Being able to follow information in one foreign language at least at the European Language Portfolio B1 General Level and communicate with colleagues in the field. | |
5) | Ability to use information and communication technologies together with at least European Computer Driving License Advanced Level computer software, as required by the field. | 1 |
6) | Being able to evaluate advanced knowledge and skills in the field critically. | |
7) | Identifying learning needs and being able to direct learning. | |
8) | Developing a positive attitude towards lifelong learning. | |
9) | Acting in accordance with social, scientific, cultural, and ethical values in the stages of collecting, interpreting, applying, and announcing the results related to the field. | 1 |
10) | Having sufficient awareness about the universality of social rights, social justice, quality culture, preservation of cultural values, as well as environmental protection, occupational health, and safety. | |
11) | Being able to conduct an advanced study independently in the field. | |
12) | To take responsibility individually and as a team member to solve complex problems encountered in the field of application, which are unforeseen. | |
13) | Being able to plan and manage activities for the development of those under their responsibility within the framework of a project. | |
14) | Possess advanced level theoretical and practical knowledge supported by textbooks with updated information, practice equipments and other resources. | |
15) | Being able to inform relevant individuals and institutions about the field; expressing their thoughts and solution proposals for problems both in written and verbal form. | |
16) | Being able to share your thoughts and solutions regarding subjects related to the field with both experts and non-experts, supported by quantitative and qualitative data. | 1 |
Bireysel çalışma ve ödevi | |
Course | |
Homework | |
Problem Çözme | |
Uygulama (Modelleme, Tasarım, Maket, Simülasyon, Deney vs.) |
Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama) | |
Homework | |
Bireysel Proje | |
Grup Projesi |
Semester Requirements | Number of Activities | Level of Contribution |
Attendance | 14 | % 0 |
Homework Assignments | 1 | % 30 |
Midterms | 1 | % 30 |
Final | 1 | % 40 |
total | % 100 | |
PERCENTAGE OF SEMESTER WORK | % 60 | |
PERCENTAGE OF FINAL WORK | % 40 | |
total | % 100 |
Activities | Number of Activities | Aktiviteye Hazırlık | Aktivitede Harçanan Süre | Aktivite Gereksinimi İçin Süre | Workload | ||
Course Hours | 14 | 3 | 42 | ||||
Study Hours Out of Class | 14 | 3 | 42 | ||||
Homework Assignments | 3 | 10 | 30 | ||||
Midterms | 1 | 20 | 20 | ||||
Final | 1 | 20 | 20 | ||||
Total Workload | 154 |