Information
Code | CEN116 |
Name | Algorithms and Programming II |
Term | 2023-2024 Academic Year |
Semester | 2. Semester |
Duration (T+A) | 3-0 (T-A) (17 Week) |
ECTS | 4 ECTS |
National Credit | 3 National Credit |
Teaching Language | İngilizce |
Level | Lisans Dersi |
Type | Normal |
Label | C Compulsory |
Mode of study | Yüz Yüze Öğretim |
Catalog Information Coordinator | Dr. Öğr. Üyesi Barış ATA |
Course Instructor |
Dr. Öğr. Üyesi Barış ATA
(A Group)
(Ins. in Charge)
|
Course Goal / Objective
The aim of this course; design, implementation and execution of C programming language with advanced topics like pointers, macros, file operations and dynamic memory management
Course Content
Structural programming concept. C Programming Language, Fundamentals, Data types, Statements, String functions. Array manipulations. Procedures and Functions. Recursion. Sorting and Searching algorithms. Basic file applications. Dynamic variables and elementary data structures, Pointer, Stack, Queue, Linked list
Course Precondition
Yok
Resources
Hanly, Jeri R., and Elliot B. Koffman. Problem solving and program design in C. Pearson, 2007.
Notes
Deitel and Deitel, C: How to program. Pearson.
Course Learning Outcomes
Order | Course Learning Outcomes |
---|---|
LO01 | Develop complex programs using pointers |
LO02 | Design advanced data structures using unions and structures |
LO03 | Create records using file operations |
LO04 | Understand the dynamic memory management concept |
LO05 | Develop a complex program as a teamwork |
Relation with Program Learning Outcome
Order | Type | Program Learning Outcomes | Level |
---|---|---|---|
PLO01 | Bilgi - Kuramsal, Olgusal | Has capability in the fields of mathematics, science and computer that form the foundations of engineering | 4 |
PLO02 | Bilgi - Kuramsal, Olgusal | Identifies, formulates, and solves engineering problems, selects and applies appropriate analytical methods and modeling techniques, | 5 |
PLO03 | Bilgi - Kuramsal, Olgusal | Analyzes a system, its component, or process and designs under realistic constraints to meet the desired requirements,gains the ability to apply the methods of modern design accordingly. | 3 |
PLO04 | Bilgi - Kuramsal, Olgusal | Ability to use modern techniques and tools necessary for engineering practice and information technologies effectively. | 2 |
PLO05 | Bilgi - Kuramsal, Olgusal | Ability to design and to conduct experiments, to collect data, to analyze and to interpret results | 2 |
PLO06 | Bilgi - Kuramsal, Olgusal | Has ability to work effectively as an individual and in multi-disciplinary teams, take sresponsibility and builds self-confidence | 3 |
PLO07 | Beceriler - Bilişsel, Uygulamalı | Can access information,gains the ability to do resource research and uses information resources | 3 |
PLO08 | Beceriler - Bilişsel, Uygulamalı | Awareness of the requirement of lifelong learning, to follow developments in science and technology and continuous self-renewal ability | 4 |
PLO09 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Ability to communicate effectively orally and in writing, and to read and understand technical publications in at least one foreign language | 4 |
PLO10 | Yetkinlikler - Öğrenme Yetkinliği | Professional and ethical responsibility, | 1 |
PLO11 | Yetkinlikler - Öğrenme Yetkinliği | Awareness about project management, workplace practices, employee health, environmental and occupational safety, and the legal implications of engineering applications, | |
PLO12 | Yetkinlikler - Öğrenme Yetkinliği | Becomes aware of universal and social effects of engineering solutions and applications, entrepreneurship and innovation, and knowledge of contemporary issues |
Week Plan
Week | Topic | Preparation | Methods |
---|---|---|---|
1 | Overview of Functions | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
2 | Overview of Arrays | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
3 | Pointers I | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
4 | Pointers II | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
5 | Strings | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
6 | Structures and Unions I | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
7 | Structures and Unions II | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
8 | Mid-Term Exam | Reading the lecture notes | Ölçme Yöntemleri: Yazılı Sınav |
9 | File Operations I | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
10 | File Operations II | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
11 | Dynamic Memory Management, Macros | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
12 | Bitwise Operations | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
13 | Linked List | Reading the lecture notes | Öğretim Yöntemleri: Tartışma, Alıştırma ve Uygulama |
14 | Project Presentations and Examination I | Examination | Ölçme Yöntemleri: Proje / Tasarım |
15 | Project Presentations and Examination II | Examination | Ölçme Yöntemleri: Proje / Tasarım |
16 | Problem Solving | Reading the lecture notes | Öğretim Yöntemleri: Gösterip Yaptırma |
17 | Term Exams | Examination | Ölçme Yöntemleri: Yazılı Sınav |
Student Workload - ECTS
Works | Number | Time (Hour) | Workload (Hour) |
---|---|---|---|
Course Related Works | |||
Class Time (Exam weeks are excluded) | 14 | 3 | 42 |
Out of Class Study (Preliminary Work, Practice) | 14 | 3 | 42 |
Assesment Related Works | |||
Homeworks, Projects, Others | 0 | 0 | 0 |
Mid-term Exams (Written, Oral, etc.) | 1 | 7 | 7 |
Final Exam | 1 | 18 | 18 |
Total Workload (Hour) | 109 | ||
Total Workload / 25 (h) | 4,36 | ||
ECTS | 4 ECTS |