CENG 113

Programming Basics

Fundamentals of computer programming: sequence, decision, repetion, syntax, compilation, debugging and maintenance, procedures, parameters, arrays, object, top-down structured design, layout and style. The emphasis is on an engineering “right-first-time” approach to solving large problems using computers. Basic concepts of algorithmics and algorithmic terminologies.

Course Objectives

To give the students the fundamentals of computer programming: sequence, decision, repetion, syntax, compilation, debugging and maintenance, procedures, parameters, arrays, object, top- down structured design, layout and style, To introduce basic concepts of algorithmics and algorithmic terminologies.

Learning Outcomes:

  1. To be able to provide algorithmic solutions for basic problems.
  2. To be able to use and explain main concepts of programming.
  3. To be able to design and apply decision structures.
  4. To be able to design and apply loop structures.
  5. To be able to monitor and analyze computer software.
  6. To be able to design, define and use functions.
  7. To be able to use recursive approach for problem solving.
  8. To be able to design, define and use class.

 

Topics
Introduction to Programming Basics – Tutorial – I
Introduction to Programming Basics – Tutorial – II
Types, Operators and Expressions
Program Control Flow
Loops-I
Loops-II
Functions-I
Functions-II
File I/O
Lists and Tuples – I
Lists and Tuples – II
Strings
Recursion
Classes

References:

“Starting Out with Python,” Tony Gaddis
“The Practice of Computing Using Python,” Punch & Enbody, Global Ed.

“Python How to Program,” Deitel & Deitel

“Think Python: How to Think Like a Computer Scientist” by Allen B

Submissions:

Homework-1 Grading: Yes
Homework-2 Grading: Yes
Homework-3 Grading: Yes
Homework-4 Grading: Yes

Grading:

Midterm exams: 20% * 2

Final exam: 30%

Assignments: 5% * 4

Quizzes: 1% * 10

Prerequisites: There are no prerequisites for the course.

Supplementary Courses: Since this is an introductory course to programming, no supplementary courses are required.

Instructor(s)

Lecturer Dr.
Research Assistant Dr.

Assistant(s)

Other First Year Courses