04_Programming for Problem Solving (ESC-CSE-101G/102G)

04_Programming for Problem Solving (ESC-CSE-101G/102G)


Please register to enroll for this course.

About the course

In this course, you will learn about the components of a computer which includes Memory, processor, input and output devices along with storage and operating system. You will also understand the concept of assembler, compiler, interpreter, loader, and linker. Then you will be introduced to algorithms and flowcharts which includes representation of an algorithm, flowchart, along with the concept of pseudo code and its examples, converting algorithms to programs and writing source code.

After that, you will learn about the basics of programming which includes the structure of a C program, how to write and execute a C program. In addition to this, you will learn about the various types of errors such as logical errors and syntax errors. You will also learn about the components of the C language, variables, data types, memory locations, and storage classes. Then you will learn about arithmetic operators and their precedence, if-else, switch-case statements, for loop, while and do-while loops, break and continue statements. You will also learn about functions, arrays, basic searching and sorting algorithms in detail. The course will conclude with detailed coverage of pointers and file operations in C.

Learning Outcomes

After completing this course, you will be able to:

  • Develop simple algorithms for arithmetic and logical problems.
  • Translate the algorithms to programs in C language and execute them.
  • Implement conditional branching, iteration, and recursion.
  • Decompose a problem into functions and synthesize a complete program using the divide and conquer approach.
  • Use arrays, pointers, and structures to develop algorithms and programs.
  • Boost your hireability through innovative and independent learning.
  • Get a certificate on successful completion of the course.
Target Audience

The course can be taken by:

Students: Students: All students who are pursuing any technical/professional courses, and wish to enter application programming industry.

Teachers/Faculties: All computer science and engineering teachers/faculties.

Professionals: All working professionals from the IT industry.

Why learn Programming for Problem Solving?

Problem-solving refers to your ability to solve problems in an effective and timely manner without any impediments. Whether you are a student, a parent, a businessperson, or the president of any country, you face problems every day that needs solving. For all these things, problem-solving is really really important. Especially when it comes to programming, problem-solving is the must. If you do not develop sound problem-solving skills, you will end up messing around with a given problem, and you would not be able to obtain a solution for ages.

Course Features
  • 24X7 Access: You can view lectures as per your own convenience.
  • Online lectures:10 hours of online lectures with high-quality videos.
  • Updated Quality content:> Content is latest and gets updated regularly to meet the current industry demands.
Test & Evaluation

There will be a final test containing a set of multiple choice questions. Your evaluation will include the scores achieved in the final test.


Certification requires you to complete the final test. Your certificate will be generated online after successful completion of course.

Topics to be covered

Unit 1

Introduction to Programming: Idea of Algorithm: Steps to solve logical and numerical problems.
Representation of Algorithm: Flowchart/Pseudocode with examples.

C Programming: Keywords, Variables and Data Types: basic, derived and user defined, Type
Conversions, Header Files, Basic Input and Output Functions and Statements, Compilation, Syntax and
Logical Errors in compilation, Object and Executable Code, Storage Classes, Arithmetic Expressions
and Precedence.

Unit 2

Preprocessors, Conditional and Branching Statements, Loops/ Iterative Statements, Writing and
evaluation of conditionals and consequent branching.

Unit 3

Arrays (1-D, 2-D), Character Arrays and Strings, Arrays with Pointers, Functions (including using built
in libraries), Parameter passing in functions, Call by Value, Call by Reference, Passing arrays to
functions, Recursion, as a different way of solving problems. Example programs, such as Finding
Factorial, Fibonacci series, Ackerman function etc.

Unit 4

Idea of pointers, Defining pointers, Use of Pointers in self-referential structures, Introduction to
Dynamic Memory Allocation and its Methods, Structures, Union, Defining Structures and Array of
Structures, File Handling.

  1. Upto six weeks (or till submission of the final quiz) access to the course
  2. To get access to the certificate - you need to take the online MCQ exam (minimum 60%) at the end of the course