01_COS102_Introduction_to_Problem Solving
01_COS102_Introduction_to_Problem Solving
PROBLEM SOLVING
(LECTURE NOTE)
COURSE DESCRIPTION
This course is designed to equip you with the skills
needed to solve problem in a broad range of fields. It
lays more emphases on the appropriate problem
solving skills a computer scientist or a programmer
may need for the execution of variable range of
tasks.
After the completion of this course, you are expected
to know the following problems solving concepts:
• Problem solving strategies
• Role of algorithm in problem solving process
• Implementation strategies
• Concepts of algorithm
• Properties of algorithm
Prerequisite: A background in COS 101:
Introduction to computer science and AEFUNAI-
CSC101: Introduction to Basic computer skills for
Beginners or any other related course(s) is essential.
CONTENTS
1.0 Introduction
1.1. General Problem Solving Strategies
1.2. Concepts of Algorithm
1.2.1.Major Components of Algorithm
1.2.2.Properties of Algorithm
1.2.3.Role of Algorithm in Problem Solving
1.2.4.Ways of expressing Algorithm
1.2.5.Algorithm Development Methodologies
1.2.5.1.Top-Down Design
1.2.5.2.Object Oriented Design
2.1Implementations strategies
2.1.1.Problem requirements (Requirement Specification).
2.1.2.Analyze the problem (Analysis)
2.1.3.Design the algorithm to solve the problem (Design).
2.1.4.Implement the algorithm (Implementation).
2.1.5.Test and verify the completed program (Testing).
2.1.6.Maintain and update the program (Maintenance).
2.2.Applications of Software Development Methods in Problem Solving
3.1.Brief Introduction to C Programming Language
CASE STUDY I: Algorithm and Programming Examples
USE CASE II: Examples
Summary
Exercises Error! Bookmark not defined.
References
1.0. Introduction to Problem Solving
There is no day that passes in the life of any human
without problem solving. In our day to day activities
we purchase things from the market, make
transactions, withdraw money from the banks, pay
school fees or hostel/lodge fees, prepare for lectures,
prepare and cook our foods, calculating the total
expenses and the amount each student will pay if
they go for excursion, etc. All these activities are
some kind of problem solving.
In problem solving, we follow a kind of organized
procedure. The reason most people encounter
difficulty in their lives or endeavour is that they fail
to follow an organized procedure or they fail to plan.
A recipe provides a good example of a plan. The
ingredients and amounts are determined by what is
to be prepared; the output determines the input and
the processing. The recipe often reduces the number
of mistakes you might make if you tried cooking
with no plan at all.
Many first time programmers try to write programs
without making a careful plan. It is observed that
you will spend little time working on a program if
you devise a careful thought out step-by-step plan
before actually writing the program.