Chapter 1
General Problem Solving Concepts
CMPF144: Introduction to Problem Solving and Basic Computer
Overview
Problem Solving in Everyday Life
Types of Problems
Problem Solving with Computers
Difficulties with Problem Solving
Learning Objectives
1. Describe difference between heuristic
and algorithmic solutions
2. List and describe SIX (6) problem-
solving steps for algorithmic solution
3. Use problem-solving steps to solve
problem
Problem Solving in Everyday Life
SIX (6) steps in problem-solving process:
1. Identify the problem
2. Understand the problem – require knowledge
base (q4 - pp20)
3. Identify alternative ways to solve problem
4. Select best alternative
5. List solution steps for alternative chosen (q2 -
pp20, q5 – pp21)
6. Evaluate solution
Problem Solving in Everyday Life
Example 1:
Let’s say you are preparing for
examination in hostel / apartment, and
you are very hungry right now.
Try to solve the problem above by using
six steps of problem solving process.
Problem Solving in Everyday Life
Example 2:
Refer to scenario case in chapter 1,
page 17.
Try to solve the problem above by using
six steps of problem solving process.
Types of Problems
Problems can be solved with:
• Algorithmic solutions
• Heuristic solutions
• Combination of algorithmic, heuristic
solutions
Algorithmic Solutions
Can be solved with a series of actions
(in steps)
These steps are called ALGORITHM
Example:
Balancing a check book
Baking a cake
Withdrawing money from ATM machine
Paying for your parking ticket via auto pay machine
What else?
Heuristic Solutions
Problem which couldn’t be solved through
a direct set of steps.
Require knowledge, experience & a
process of trial and error (repeating six steps
more than once)
Example:
How to buy best stock from market
Should the company be expanded
Baking a delicious cake
Raising up a kid
What else?
Combination of Both
Most problems require a combination
of algorithmic and heuristic solutions
Example:
Repairing a car
Driving a car
To win in a computer game
What else??
Problem Solving with Computers
Definitions:
• Solution instructions followed to
produce best result
• Result outcome, computer-assisted
answer
• Program instructions for solution
using computer language
Difficulties with Problem Solving
Lack of problem solving experience
Inadequate solution steps
Incorrect problem definition
Alternatives chosen incorrectly
Invalid logic
Incorrect solution evaluation