COMPUTER ENGINEERING
Qualification Awarded Program Süresi Toplam Kredi (AKTS) Öğretim Şekli Yeterliliğin Düzeyi ve Öğrenme Alanı
Bachelor's (First Cycle) Degree 4 240 FULL TIME TYÇ, TR-NQF-HE, EQF-LLL, ISCED (2011):Level 6
QF-EHEA:First Cycle
TR-NQF-HE, ISCED (1997-2013): 48,52

Ders Genel Tanıtım Bilgileri

Course Code: 1410111001
Ders İsmi: Programming I
Ders Yarıyılı: Fall
Ders Kredileri:
Theoretical Practical Labs Credit ECTS
2 2 0 3 3
Language of instruction: TR
Ders Koşulu:
Ders İş Deneyimini Gerektiriyor mu?: No
Other Recommended Topics for the Course:
Type of course: Necessary
Course Level:
Bachelor TR-NQF-HE:6. Master`s Degree QF-EHEA:First Cycle EQF-LLL:6. Master`s Degree
Mode of Delivery: Face to face
Course Coordinator : Dr.Öğr.Üyesi Adem ÖZYAVAŞ
Course Lecturer(s):




Course Assistants:

Dersin Amaç ve İçeriği

Course Objectives: This course is designed for students with no programming experience. The course teaches the fundamental concepts of procedural programming. Topics include algorithms and problem solving, data types, control structures, functions, arrays, testing and finding errors.
Course Content: The course assumes no knowledge in computer programming. It introduces the students to the basic concepts and techniques of developing programs for problem solving. Imperative/procedural/structured programming methodology is used throughout the course to teach the fundamentals of programming. In this course, students learn how to design, implement, debug, and document programs. It establishes the foundation on which students are able to develop application programs using the C programming language.

Learning Outcomes

The students who have succeeded in this course;
Learning Outcomes
1 - Knowledge
Theoretical - Conceptual
2 - Skills
Cognitive - Practical
1) Implementing the developed algorithms with C / C ++ language
2) Student will be able to analyze codes in C programming language.
3 - Competences
Communication and Social Competence
Learning Competence
Field Specific Competence
1) Developing algorithms to solve simple problems
Competence to Work Independently and Take Responsibility
1) The student designs C programs that include decision structures, loops and functions.

Ders Akış Planı

Week Subject Related Preparation
1) Number systems, notions and representations, memory organization, algorithms, compilation (compiler) vs interpretation (interpreter). Instructor's Notes
2) Flow Charts diagrams, algorithms and algorithm design Instructor's Notes
3) data types, declarations, expressions, keywords, naming conventions, (destructive) assignment statement, sequential programming arrays and its properties and processing, arrays of different types including strings, arrays of different dimensions The C Programming Language
4) Conditional statements, logical/relational operators and Boolean expressions, while/for loops (iterations). The C Programming Language
5) Functions and functional decomposition, top-down programming, pass-by-value semantics, scope. The C Programming Language
6) recursion, recursive vs iterative solutions. The C Programming Language
7) pointer/pointer arithmetic and memory management, program debugging, syntax and logic errors, arrays as constant pointers, function pointers. The C Programming Language
8) MIDTERM
9) More on pointers (pointers to pointers, pointers to pointers to pointers). The C Programming Language
10) Writing your own string processing functions and using library functions The C Programming Language
11) Binary vs text-based file I/O The C Programming Language
12) Binary vs text-based file I/O. The C Programming Language
13) C structs and unions, typedef, macros The C Programming Language
14) Writing flexible (easy-to-maintain) code (modular design), header files and implementation files (.h and .c files). Data structures implementations such as Stack, Queue, Map in C. The C Programming Language
15) Review of the semester material. The C Programming Language
16) Final

Sources

Course Notes / Textbooks: The C Programming Language: Brian Kernighan and Dennis Ritchie
References: The C Programming Language: Brian Kernighan, Dennis Ritchie

Ders - Program Öğrenme Kazanım İlişkisi

Ders Öğrenme Kazanımları

1

2

4

3

Program Outcomes
1) 1.1 Sufficient knowledge of subjects such as mathematics and science
2) 1.2 Ability to apply theoretical and applied knowledge in mathematics, science and computer engineering for modeling and solving engineering problems.
3) 1.3 Ability to use theoretical and applied knowledge in fields such as mathematics and science in complex engineering problems.
4) 2.1 Ability to identify, define, formulate and solve complex engineering problems
5) 2.2 Ability to select and apply appropriate analysis and modeling methods for this purpose
6) 3.1 Ability to design a complex system, process, device or product to meet specific requirements under realistic constraints and conditions
7) 3.2 Ability to apply modern design methods for this purpose
8) 4.1 Ability to develop, select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering applications.
9) 4.2 Ability to use information technologies effectively
10) 5.1 Ability to design experiments to examine complex engineering problems or discipline-specific research issues
11) 5.2 Ability to conduct experiments to examine complex engineering problems or discipline-specific research topics
12) 5.3 Ability to collect data to examine complex engineering problems or discipline-specific research topics
13) 5.4 Ability to analyze and interpret experimental results for the study of complex engineering problems or discipline-specific research issues
14) 6.1 Ability to work individually within the discipline
15) 6.2 Ability to work effectively in interdisciplinary teams
16) 6.3 Ability to work effectively in multidisciplinary teams
17) 7.1 Ability to communicate effectively and make presentations both verbally and in Turkish
18) 7.2 Knowledge of at least one foreign language
19) 7.3 Ability to write effective reports and understand written reports
20) 7.4 Ability to prepare design and production reports
21) 7.5 Ability to give and receive clear and understandable instructions
22) 8.1 Awareness of the necessity of lifelong learning
23) 8.2 The ability to access information, follow developments in science and technology and constantly renew oneself
24) 9.1 Acting in accordance with ethical principles, awareness of professional and ethical responsibility
25) 9.2 Information about standards used in engineering applications
26) 10.1 Knowledge of business practices such as project management, risk management and change management
27) 10.2 Awareness about entrepreneurship, innovation
28) 10.3 Information about sustainable development
29) 11.1 Information about the effects of engineering practices on health, environment and security at universal and social dimensions and the problems of the age reflected in the field of engineering
30) 11.2 Awareness of the legal consequences of engineering solutions
31) 12.1 Having knowledge about discrete mathematics

Ders - Öğrenme Kazanımı İlişkisi

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution
1) 1.1 Sufficient knowledge of subjects such as mathematics and science
2) 1.2 Ability to apply theoretical and applied knowledge in mathematics, science and computer engineering for modeling and solving engineering problems.
3) 1.3 Ability to use theoretical and applied knowledge in fields such as mathematics and science in complex engineering problems.
4) 2.1 Ability to identify, define, formulate and solve complex engineering problems
5) 2.2 Ability to select and apply appropriate analysis and modeling methods for this purpose
6) 3.1 Ability to design a complex system, process, device or product to meet specific requirements under realistic constraints and conditions
7) 3.2 Ability to apply modern design methods for this purpose
8) 4.1 Ability to develop, select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering applications.
9) 4.2 Ability to use information technologies effectively
10) 5.1 Ability to design experiments to examine complex engineering problems or discipline-specific research issues
11) 5.2 Ability to conduct experiments to examine complex engineering problems or discipline-specific research topics
12) 5.3 Ability to collect data to examine complex engineering problems or discipline-specific research topics
13) 5.4 Ability to analyze and interpret experimental results for the study of complex engineering problems or discipline-specific research issues
14) 6.1 Ability to work individually within the discipline
15) 6.2 Ability to work effectively in interdisciplinary teams
16) 6.3 Ability to work effectively in multidisciplinary teams
17) 7.1 Ability to communicate effectively and make presentations both verbally and in Turkish
18) 7.2 Knowledge of at least one foreign language
19) 7.3 Ability to write effective reports and understand written reports
20) 7.4 Ability to prepare design and production reports
21) 7.5 Ability to give and receive clear and understandable instructions
22) 8.1 Awareness of the necessity of lifelong learning
23) 8.2 The ability to access information, follow developments in science and technology and constantly renew oneself
24) 9.1 Acting in accordance with ethical principles, awareness of professional and ethical responsibility
25) 9.2 Information about standards used in engineering applications
26) 10.1 Knowledge of business practices such as project management, risk management and change management
27) 10.2 Awareness about entrepreneurship, innovation
28) 10.3 Information about sustainable development
29) 11.1 Information about the effects of engineering practices on health, environment and security at universal and social dimensions and the problems of the age reflected in the field of engineering
30) 11.2 Awareness of the legal consequences of engineering solutions
31) 12.1 Having knowledge about discrete mathematics

Öğrenme Etkinliği ve Öğretme Yöntemleri

Bireysel çalışma ve ödevi
Course
Grup çalışması ve ödevi
Labs
Homework
Web Tabanlı Öğrenme

Ölçme ve Değerlendirme Yöntemleri ve Kriterleri

Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama)
Homework
Uygulama

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Laboratory 10 % 5
Homework Assignments 3 % 15
Midterms 1 % 20
Semester Final Exam 1 % 60
total % 100
PERCENTAGE OF SEMESTER WORK % 40
PERCENTAGE OF FINAL WORK % 60
total % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Activities Number of Activities Duration (Hours) Workload
Course Hours 14 2 28
Laboratory 14 2 28
Study Hours Out of Class 14 4 56
Homework Assignments 14 2 28
Midterms 1 2 2
Final 1 3 3
Total Workload 145