| 
                
             | 
            
                 
                
    | COM1002 | Programming - II | 3+0+0 | ECTS:5 |  | Year / Semester | Spring Semester |  | Level of Course | First Cycle |  | Status	 | Compulsory |  | Department | DEPARTMENT of COMPUTER ENGINEERING |  | Prerequisites and co-requisites | DC must have been achieved from COM1003-Programming - I |  | Mode of Delivery | Face to face, Practical |  | Contact Hours | 14 weeks - 3 hours of lectures per week |  | Lecturer | Doç. Dr. Beste ÜSTÜBİOĞLU |  | Co-Lecturer | DOCTOR LECTURER Selen AYAS, |  | Language of instruction |  |  | Professional practise ( internship )	 | None |  |   |   | The aim of the course: |  | The course intends to teach the students the basic programming principles. For this purpose, it will let the students learn how to program in C Programming language. It will also teach students how to analyze an engineering problem and develop effective solutions. |  
 |  Learning Outcomes | CTPO | TOA |  | Upon successful completion of the course, the students will be able to : |   |    |  | LO - 1 :  | build a program flow diagram and understand  the basic structure of C programs | 1.2 - 1.3 - 2.1 - 3.1 | 1,6 |  | LO - 2 :  | have knowledge on loops and decision mechanism to control operation of program. | 1.2 - 1.3 - 2.1 - 3.1 | 1,6 |  | LO - 3 :  | see what the arrays and strings are about | 1.2 - 1.3 - 2.1 - 3.1 | 1,6 |  | LO - 4 :  | interpret the advantages of pointer | 1.2 - 1.3 - 2.1 - 3.1 | 1,6 |  | LO - 5 :  | interpret the advantages of functions | 1.2 - 1.3 - 2.1 - 3.1 | 1,6 |  | CTPO : Contribution to programme outcomes, TOA :Type of assessment (1: written exam, 2: Oral exam,  3: Homework assignment, 4: Laboratory exercise/exam, 5: Seminar / presentation,  6: Term paper), LO : Learning Outcome   |  |   |    
			 | Overall classification of high-level programming languages. Introduction to algorithms. Flow charts. Pseudo codes. The Turbo C Programming Environment. C Building Blocks. Loops. Decision structures. Functions. Arrays and Strings. Pointers. File I/O. |  
			 |   |   
 | Course Syllabus |  |  Week | Subject | Related Notes / Files |  |  Week 1 | Hardware and software. Computer organization. Machine language. Assembly language.  |  |  |  Week 2 | High-level languages. C program development environment. |  |  |  Week 3 | Introduction to algorithm formulation.  |  |  |  Week 4 | Flow charts. Pseudo codes. |  |  |  Week 5 | Structure of a simple C program. Decision structures: if, if-else, switch, conditional operator. |  |  |  Week 6 | Loops: for, do-while,  while. break and continue statements. |  |  |  Week 7 | Preprocessor directives |  |  |  Week 8 | Mid-term exam |  |  |  Week 9 | Modular C programming. Function definitions. Function prototypes. Header files. |  |  |  Week 10 | Calling functions by value and by reference. Random number generation. Scope rules. |  |  |  Week 11 | Introduction to arrays. Array definitions. Passing arrays to functions. |  |  |  Week 12 | Sorting Arrays. Searching arrays. |  |  |  Week 13 | Pointer variable definitions and initialization. Pointer operators. Passing arguments to functions by address. |  |  |  Week 14 | const qualifier. sizeof operator. Pointer arithmetic. Arrays of pointers. |  |  |  Week 15 | File Input/Output |  |  |  Week 16 | End-of-term exam |  |  |   |   
 | 1 | P. Deitel, H. Deitel, "C How to Program", Sixth Edition, Pearson. |  |  |   |   
 | 1 | B. W. Kernighan, D. M. Ritchie, "The C Programming Language", Prentice Hall Software Series |  |  |   |   
 |  Method of Assessment  |  | Type of assessment | Week No | Date | Duration (hours) | Weight (%) |  |  Mid-term exam |  8 |   |  2 |  30 |  |  End-of-term exam |  16 |  26/05/2013 |  2 |  50 |  |   |   
 |  Student Work Load and its Distribution  |  | Type of work | Duration (hours pw) | No of weeks / Number of activity | Hours in total per term |  |  Yüz yüze eğitim |  4 |  14 |  56 |  |  Sınıf dışı çalışma |  1 |  14 |  14 |  |  Arasınav için hazırlık |  5 |  1 |  5 |  |  Arasınav  |  2 |  1 |  2 |  |  Uygulama |  7 |  14 |  98 |  |  Dönem sonu sınavı için hazırlık |  14 |  1 |  14 |  |  Dönem sonu sınavı |  2 |  1 |  2 |  | Total work load |  |  | 191 |  
  
                 
             |