MECHATRONICS ENGINEERING
Bachelor TR-NQF-HE: Level 6 QF-EHEA: First Cycle EQF-LLL: Level 6

Course Introduction and Application Information

Course Code Course Name Semester Theoretical Practical Credit ECTS
CMP1401 Introduction to Programming (C) Fall 2 2 3 6

Basic information

Language of instruction: English
Type of course: Must Course
Course Level: Bachelor’s Degree (First Cycle)
Mode of Delivery: Face to face
Course Coordinator : Assist. Prof. HASSAN IMANI
Course Lecturer(s): Assist. Prof. TARKAN AYDIN
Assist. Prof. ERKUT ARICAN
Assoc. Prof. CEMAL OKAN ŞAKAR
Recommended Optional Program Components: None
Course Objectives: The course aims to teach the syntax and use of major constructs of the C language. Fundamental programming concepts will be discussed and students will gain hands-on experience to develop their programming and algorithmic thinking skills.

Learning Outcomes

The students who have succeeded in this course;
I. An ability to design elementary computer algorithms.
II. An ability to develop code following the principles of C programming language.
III. An ability to use various types of selection contructs in a C program
IV. An ability to use repetition constructs in a C program.
V. An ability to use simple data structures like arrays in a C program.
VI. An ability to define and correctly call functions in a C program

Course Content

Introduction, printf, scanf, variables, operators, constants, data types, assignment, type conversions, type casting, post/pre-increment/decrement, if, nested if, logical operators, switch, while, for, do-while loops, nested loops, break, continue, functions, scope, macro-substitution, pointers, variable parameters, arrays, passing arrays to functions, sorting and binary search, File I/O, strings, multi-dimensional arrays, structures.

Weekly Detailed Course Contents

Week Subject Related Preparation
1) Introduction, printf, scanf, variables, operators, constants
2) Data types, assignment, type conversions, type casting, post/pre-increment/decrement
3) If, nested if, logical operators, switch
4) While, for, do-while loops
5) Nested loops, break, continue
6) Functions, scope, macro-substitution
7) Functions (cont’d)
8) Arrays, passing arrays to functions
9) Multidimensional arrays
10) File I/O
11) Pointers and Passing pointers to a function
12) Searching in arrays
13) Strings, string operations
14) Review

Sources

Course Notes / Textbooks: C How to Program, 6/E, Paul Deitel Harvey M. Deitel, Prentice Hall, 2009


References: The C Programming Language, Brian W. Kernighan, Dennis M. Ritchie, Prentice Hall

Evaluation System

Semester Requirements Number of Activities Level of Contribution
Laboratory 3 % 25
Midterms 1 % 35
Final 1 % 40
Total % 100
PERCENTAGE OF SEMESTER WORK % 60
PERCENTAGE OF FINAL WORK % 40
Total % 100

ECTS / Workload Table

Activities Number of Activities Workload
Course Hours 14 28
Laboratory 14 28
Study Hours Out of Class 15 79
Midterms 1 2
Final 1 2
Total Workload 139

Contribution of Learning Outcomes to Programme Outcomes

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution
1) Build up a sufficient body of knowledge in mathematics and science.
2) Build up a sufficient body of knowledge in subjects specific to Mechatronics Engineering.
3) Use theoretical and applied knowledge in Mechatronics Engineering subjects to address complex engineering problems.
4) Identify, define, and formulate complex engineering problems.
5) Select and apply proper analysis and modeling methods to solve complex engineering problems.
6) Design a complex system, process, device, or product under realistic constraints and conditions to meet specified requirements; apply modern design methods for this purpose.
7) Devise, select, and use modern techniques and tools needed for the analysis and solution of complex problems encountered in Mechatronics Engineering applications.
8) Employ information technologies effectively. 5
9) Design experiments for investigating complex engineering problems or research topics in Mechatronics Engineering.
10) Conduct experiments, collect data, analyze and interpret results for investigating complex engineering problems or research topics in Mechatronics Engineering.
11) Cooperate efficiently in intra-disciplinary teams.
12) Cooperate efficiently in multi-disciplinary teams.
13) Show self-reliance when working individually.
14) Communicate effectively, both orally and in writing.
15) Have knowledge of at least one foreign language.
16) Write effective reports, understand written reports, and prepare design and production reports.
17) Deliver effective presentations, and give and receive clear and understandable instructions.
18) Recognize the need for life-long learning.
19) Show the ability to access information, follow developments in science and technology, and continuously educate oneself.
20) Develop an awareness of professional and ethical responsibility, and behave in accordance with ethical principles.
21) Be informed about the standards used in engineering applications.
22) Learn about business life practices such as project management, risk management, and change management.
23) Develop an awareness of entrepreneurship and innovation.
24) Acquire knowledge about sustainable development.
25) Acquire knowledge about the effects of engineering applications on health, environment, and safety in universal and social contexts, and about contemporary issues reflected in the field of engineering.
26) Be aware of the legal consequences of engineering solutions.