Skip to main content
TR

INTRODUCTION TO PROGRAMMING

Course
ITEC112 - INTRODUCTION TO PROGRAMMING
Department
Information Technologies - English - Undergraduate
Course Type
Course
Status
Required
Language
English
Credit
4
ECTS
6
T+P+L
3 + 0 + 2
Course Coordinator(s)
Prof. Dr. Tolgay KARANFİLLER
Prerequisite
Keywords

Course Description

The course will introduce basic and fundamental programming constructs and techniques through using the C++ programming language in order to generate algorithmic solutions to problems. Upon completion of the course, students will learn an introduction to algorithms, solving problems by flowcharts and pseudo codes, header files, data types, arithmetic & logic operators, control statements (if, if/else, switch-case) and use them as inner statements, loop statements (while, do/while, for), functions, standard functions of programming language, random number generation and their area of use, user-defined functions, global and local variables, recursion, arrays, searching algorithms on arrays, sorting algorithms on arrays, pointers, pointer operators, using pointers with arrays and functions. In the laboratory hours, students are writing full programs or modifying existing programs for other solutions.

INTRODUCTION TO PROGRAMMING

Evaluation Tools (Active Term)

Item Type Weight (%)
Kısa Sınav 1 Quiz 10
Kısa Sınav 2 Quiz 10
Lab Assignment 10
Vize Midterm 30
Final Final 40
Total 100

Course outcomes

  1. 01 analyse problems and design solutions through algorithms (draw flowchart and write pseoudocode);
  2. 02 define fundamental constructs of computer programming (i.e. sequence, selection and loops);
  3. 03 convert algorithms into C++ compatible programming code;
  4. 04 write structured programs using user defined functions;
  5. 05 write structured programs using arrays;
  6. 06 Identify programming constructs from given problems and create structured programming patterns when writing computer programs.

Course Syllabus

Week Topic
Week 1 Introduction to Computer Algorithms
Week 2 Problem Analysis and Construction of Algorithms - pseudocode / flowchart
Week 3 Introduction to Python: program flow, basic input and output operations
Week 4 Variables, arithmetic and logical operations
Week 5 Logical Operations and selection - IF / ELIF / Switch-case
Week 6 Loops - For / While
Week 7 Loops - Do-While, revision, Quiz1
Week 8 Midterm Exam
Week 9 Midterm Exam
Week 10 Nested loops (For/While)
Week 11 Functions
Week 12 Functions, Arrays
Week 13 Data Collections
Week 14 Exception handling
Week 15 Revision, Quiz2

Reference Books & Course Materials

  1. 01 Introducing Python: Modern Computing in Simple Packages, Bill Lubanovic, O'Reilly, 2019
  2. 02 Python Programming for Beginners, Philip Robbins, Functional Software Programming, 2024

Learning Outcomes

  1. L01 Implement basic sorting and searching algorithms on small arrays SOLO 4
  2. L01 Differentiate between different types of input/output operations and their uses and compare different development environments SOLO 4
  3. L01 Differentiate between different types of input/output operations and their uses and compare different development environments SOLO 4
  4. L02 Describe different data types and their uses in programming SOLO 3
  5. L02 Describe different data types and their uses in programming SOLO 3
  6. L03 Implement programs using variables, arithmetic, and logical operations and analyze their effectiveness SOLO 4
  7. L03 Implement programs using variables, arithmetic, and logical operations and analyze their effectiveness SOLO 4
  8. L04 Compare different selection statements and explain their advantages and disadvantages in specific programming scenarios SOLO 3
  9. L04 Compare different selection statements and explain their advantages and disadvantages in specific programming scenarios SOLO 3
  10. L05 Classify different types of loops in Phyton SOLO 3
  11. L05 Classify different types of loops in Python SOLO 3
  12. L06 Differentiate between different types of input/output operations and their uses and compare different development environments SOLO 4
  13. L06 Differentiate between different types of input/output operations and their uses and compare different development environments SOLO 4
  14. L07 Implement user-defined functions that are modular, reusable, and well-documented, and can effectively integrate functions into larger programs SOLO 4
  15. L07 Implement user-defined functions that are modular, reusable, and well-documented, and can effectively integrate functions into larger programs SOLO 4
  16. L08 Apply basic operations on arrays SOLO 4
  17. L08 Apply basic operations on arrays SOLO 4
  18. L09 .Implement basic sorting and searching algorithms on small arrays SOLO 4

Program Outcomes

  1. P01 Create a user interface in a contemporary object-oriented language to allow users to access business data
  2. P02 Identify and analyze user needs and take them into account in the selection, creation, integration, evaluation and administration of computing-based systems
  3. P03 Analyze common business functions and identify, design, and develop appropriate information technology solutions
  4. P04 Design and develop software solutions for contemporary business environments by employing appropriate problem-solving strategies
  5. P05 Configure and administer database server to support contemporary business environments.
  6. P06 Administer or mange a relational database for a small to medium size company
  7. P07 Be able to effectively integrate IT-based solutions into the user environment
  8. P08 Understand professional, ethical, legal, security and social issues and responsibilities
  9. P09 Be able to apply effective communication skills consistent with the professional environment
  10. P10 Be able to apply effective collaboration skills in teamwork consistent with the professional environment

Po-Lo Matrix

LO P01 P02 P03 P04 P05 P06 P07 P08 P09 P10 Average
L01 0 0 0 0 0 2 2 0 0 0 0.4
L01 - - - - - - - - - - -
L01 0 2 0 2 0 0 0 0 0 0 0.4
L02 - - - - - - - - - - -
L02 0 0 0 0 0 0 0 0 0 0 0
L03 - - - - - - - - - - -
L03 3 0 0 3 0 0 0 0 0 0 0.6
L04 - - - - - - - - - - -
L04 0 0 0 0 0 0 0 0 0 2 0.2
L05 - - - - - - - - - - -
L05 0 0 0 3 0 0 0 0 0 0 0.3
L06 - - - - - - - - - - -
L06 3 0 0 0 0 0 0 0 0 0 0.3
L07 0 0 0 0 0 0 0 0 3 3 0.6
L07 - - - - - - - - - - -
L08 0 0 0 2 0 0 2 0 2 0 0.6
L08 - - - - - - - - - - -
L09 - - - - - - - - - - -