COMPUTER PROGRAMMING (TURKISH) | |||||
Associate | TR-NQF-HE: Level 5 | QF-EHEA: Short Cycle | EQF-LLL: Level 5 |
Course Code | Course Name | Semester | Theoretical | Practical | Credit | ECTS |
CMP1401 | Introduction to Programming (C) | Spring Fall |
2 | 2 | 3 | 6 |
This catalog is for information purposes. Course status is determined by the relevant department at the beginning of semester. |
Language of instruction: | English |
Type of course: | Non-Departmental Elective |
Course Level: | Associate (Short Cycle) |
Mode of Delivery: | Face to face |
Course Coordinator : | Dr. Öğr. Üyesi GÖRKEM KAR |
Course Lecturer(s): |
RA ÇİĞDEM ERİŞ Dr. Öğr. Üyesi TARKAN AYDIN Dr. Öğr. Üyesi ERKUT ARICAN Dr. Öğr. Üyesi CEMAL OKAN ŞAKAR Dr. UTKU GÜLEN Dr. Öğr. Üyesi ÖVGÜ ÖZTÜRK ERGÜN Prof. Dr. NAFİZ ARICA |
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. |
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 |
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. |
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) | Pointers, variable parameters | |
8) | Arrays, passing arrays to functions | |
9) | Sorting and binary search | |
10) | File I/O | |
11) | Strings | |
12) | Multi-dimensional arrays | |
13) | Structures | |
14) | Review | |
15) | Final | |
16) | Final |
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 |
Semester Requirements | Number of Activities | Level of Contribution |
Laboratory | 12 | % 25 |
Midterms | 1 | % 35 |
Final | 1 | % 40 |
Total | % 100 | |
PERCENTAGE OF SEMESTER WORK | % 60 | |
PERCENTAGE OF FINAL WORK | % 40 | |
Total | % 100 |
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 |
No Effect | 1 Lowest | 2 Low | 3 Average | 4 High | 5 Highest |
Program Outcomes | Level of Contribution | |
1) | Students will have knowledge of fundemantals of mathemetaics and phsics | |
2) | Students will have konowledge of relevant software and hardware requirements in the office environment | |
3) | Having the ability to define and explain the fundemental concepts, principles and essentilas of software and having the ability to develop software. | |
4) | Having the ability to use tools, machines and having the ability to recognize and diagnose problems in the related computer fields. | |
5) | Having the ability to communicate efficiently in verbal and written Turkish, to know at least one foreign language in order to communicate with the colleagues and customers. | |
6) | Having the ability to setup,diagnose and maintanance of databases | |
7) | Having the ability to design graphical animations for desktop applications and internet programming. | |
8) | Having the ability to develop and control internet projects | |
9) | Having the ability to develop group projects, team work, software and hardware projects | |
10) | Having the ability to set up,diagnose operating systems and network systems |