CENG111 INTRODUCTION TO COMPUTER ENG. CONCEPTS
Course Code: | 5710111 |
METU Credit (Theoretical-Laboratory hours/week): | 4 (3.00 - 2.00) |
ECTS Credit: | 4.0 |
Department: | Computer Engineering |
Language of Instruction: | English |
Level of Study: | Undergraduate |
Course Coordinator: | Prof.Dr. SİNAN KALKAN |
Offered Semester: | Fall Semesters. |
Course Objectives
The objective of the course is to lay the foundations of computers and computer programming . Starting with the history and basic theoretical aspects of computers and computing, this course provides students with basic knowledge of how computers work, how they can represent data, how algorithms can be developed and analyzed, and how they can be programmed to solve various tasks. Python is used as the primary programming language to illustrate various concepts.
Course Content
Introduction to fundamentals of computer systems, including computer organization, operating systems, language processors and user interfaces. Introduction to algorithms and programming. Reasoning informally about the correctness and efficiency of programs. A functional programming language will be used for practical work.
Course Learning Outcomes
At the end of this course, students will be able to:
- Identify the types of computation and describe digital computation in detail.
- Design simple combination circuits for simple computational problems.
- Outline the concepts of the Von Neumann Architecture and the Turing Machine, and describe how a modern computer relates to them.
- Understand and use how information is represented in a modern computer and how instructions are executed.
- Describe the types of programming languages, and the paradigms.
- Understand the concept of basic data types, such as int, float, bool as well as container data types, such as list, tuple, string.
- Differentiate computational evaluation of expressions from mathematical evaluation due to concepts such as overflow, side-effect, and truncation.
- Understand and apply structured programming concepts by elaborating on sequential, selective, repetitive structures, such as statements, if/switch/case statements, for/while statements and functions.
- Interpret a computational problem specification and algorithmic solution and implement a solution in Python to solve that problem.
Program Outcomes Matrix
Contribution | |||||
# | Program Outcomes | No | Yes | ||
1 | An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics | ✔ | |||
2 | An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors | ✔ | |||
3 | An ability to communicate effectively with a range of audiences | ✔ | |||
4 | An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts | ✔ | |||
5 | An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives | ✔ | |||
6 | An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions | ✔ | |||
7 | An ability to acquire and apply new knowledge as needed, using appropriate learning strategies | ✔ |