0% found this document useful (0 votes)
9 views

Problem Solving Variables Constants

Uploaded by

tansuhbless
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Problem Solving Variables Constants

Uploaded by

tansuhbless
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 29

PROBLEM SOLVING

AND PROGRAM
DESIGN
OBJECTIVES

AT THE END OF THIS LESSON STUDENTS SHOULD BE ABLE TO:


•OUTLINE THE STEPS IN PROBLEM-SOLVING;
•USE THE DIVIDE-AND-CONQUER APPROACH TO DECOMPOSE
LARGE EVERYDAY PROBLEMS INTO SMALLER TASKS;
•DEFINE A PROBLEM BY DECOMPOSING IT INTO ITS
SIGNIFICANT COMPONENTS;
•DISTINGUISH BETWEEN VARIABLES AND CONSTANTS; AND
•EXPLAIN THE CONCEPT OF ALGORITHMS.
ACTIVITY

• CLICK THE LINK PROVIDED TO SOLVE THE JIGSAW


PUZZLE AS QUICKLY AS POSSIBLE.

• HTTPS://WWW.ONLINEJIGSAWPUZZLES.NET/PUZZLE10.PH
P?IMAGE=IMAGES/PUZZLE/BROWN-TEDDY-BEAR-ON-BRO
WN-WOODEN-BENCH-OUTSIDE.JPG#
• ONCE YOU ARE FINISHED, EXPLAIN THE PROCESS OF THE
STEPS INVOLVED IN ACCURATELY SOLVING THE PUZZLE.
WHAT IS A PROBLEM?
 A problem can be defined as an obstacle
which makes it difficult to achieve a desired
goal, objective or purpose; while problem-
solving is a systematic approach to defining
the problem and creating different solutions
to correct the problem.
STEPS IN PROBLEM SOLVING

A PROBLEM MAY BE SIMPLE OR COMPLEX. IN ORDER TO


COME UP WITH A SOLUTION, WE MUST :
•DEFINE THE PROBLEM;
•PROPOSE AND EVALUATE SOLUTIONS;
•DETERMINE THE MOST EFFICIENT SOLUTION;
•DEVELOP THE ALGORITHM; AND,
•TEST AND VALIDATE THE SOLUTION.
DEFINE THE PROBLEM

• DEFINING THE PROBLEM MEANS DESCRIBING IT IN A CLEAR


AND CONCISE WAY THAT HAS ONLY ONE MEANING
(UNAMBIGUOUS).
• THIS INVOLVES RECOGNIZING THE PROBLEM AND THEN
DESCRIBING IT EXPLICITLY AND DETERMINE WHAT IS
NEEDED TO HELP TO SOLVE THE PROBLEM AND THE
RESULT TO BE ACHIEVED .
• SIMPLY BREAKING DOWN THE PROBLEM .
• THE PROBLEM NEED TO BE CLEARLY DEFINED AND
EXAMINED SO THAT IT IS WELL UNDERSTOOD.
PROPOSE AND EVALUATE
SOLUTIONS
• THIS INVOLVES COMING UP WITH ALL THE POSSIBLE
SOLUTIONS TO THE DEFINED PROBLEM.
• EVERY POTENTIAL SOLUTION SHOULD BE CONSIDERED
AT THIS STAGE AND NONE SHOULD BE DISCARDED; NEW
POTENTIAL SOLUTIONS CAN BE CREATED BY COMBINING
IDEAS FROM OTHER POTENTIAL SOLUTIONS.
• EVALUATE EACH OPTION TO SEE WHICH IS MOST
APPROPRIATE AND CHOOSE THE BEST OPTION.
DETERMINE THE MOST
EFFICIENT SOLUTION

• DETERMINING THE MOST EFFICIENT SOLUTION MEANS


DECIDING WHICH SOLUTION PROVIDES THE BEST
RESULTS TO THE PROBLEM.
• THIS INVOLVES SELECTING THE BEST POSSIBLE
SOLUTION AFTER EVALUATING THE STRENGTHS AND
WEAKNESSES.
DEVELOP THE ALGORITHM

• FOR SOME PROBLEMS, THE SOLUTION THAT IS


DEVELOPED WOULD BE USED MULTIPLE TIMES, SO AN
ALGORITHM S DEVELOPED TO REPEAT THE PROCESS
AGAIN AND AGAIN.
• BREAK DOWN THE PROBLEM INTO SIMPLE MANAGEABLE
STEPS OF A PROBLEM.
• THESE SIMPLE STEPS OF A PROBLEM ARE KNOWN AS AN
ALGORITHM.
TEST AND VALIDATE THE
SOLUTION
• AFTER THE ALGORITHM HAS BEEN GENERATED, THE
SOLUTION MAY NOW BE ENTERED INTO A COMPUTER
WHERE IT CAN BECOME USEFUL.
• CHECK THE ALGORITHM YOU WROTE USING SOME VALUES
TO ENSURE THAT IT PRODUCES THE REQUIRED RESULTS.
• THIS PROCESS OF DESK CHECKING ALLOWS YOU TO SOLVE
SOME ERRORS BEFORE YOU CONVERT IT INTO COMPUTER
INSTRUCTIONS.
PROBLEM SOLVING
• WHAT IS THE BEST WAY TO GET FROM GREEN ROAD TO
SCHOOL?
STEPS IN ALGORITHM
DEVELOPMENT
DEFINING THE PROBLEM
• DEFINING THE PROBLEM IS THE MOST IMPORTANT STEP SINCE IT
LEADS TO A CLEARER UNDERSTANDING OF WHAT IS GIVEN AND
WHAT IS REQUIRED. THIS STEP INVOLVES DECOMPOSING THE
PROBLEM INTO THREE KEY COMPONENTS:
• 1. INPUTS: WHAT IS GIVEN (SOURCE DATA)
• 2. OUTPUTS: THE EXPECTED RESULTS
• 3. PROCESSING: THE TASKS/ACTIONS THAT MUST BE
PERFORMED
• TO DO THIS, A DEFINING DIAGRAM IS USED. A DEFINING DIAGRAM IS
A TABLE WITH THREE COLUMNS LABELED TO REPRESENT THE
COMPONENTS.
Input Processing
Output
• Two
PROBLEM:
Numbers WRITE AN ALGORITHM THAT ACCEPTS TWO NUMBERS,
Accept two numbers
ADDS THEM TOGETHERAdd AND DISPLAY THE SUM. Sum
the numbers

Store results
DEFINITION OF PROBLEM-IPO

CHART
INPUTS CAN BE IDENTIFIED BY THE KEYWORDS THAT
PRECEDE THEM. THESE ARE: GIVEN, ENTER, READ, OR
ACCEPT.
• OUTPUTS CAN BE IDENTIFIED BY THE KEYWORDS: PRINT,
DISPLAY, FIND, PRODUCE, OR OUTPUT.
• PROCESSING CAN BE DETERMINED BY ASKING; “WHAT DO I
HAVE TO DO WITH THE INPUTS IN ORDER TO PRODUCE THE
DESIRED OUTPUT?” THE ACTIONS/TASKS DETERMINED MUST
BE LISTED IN A LOGICAL SEQUENTIAL ORDER.
• EXAMPLE: GIVEN TWO NUMBERS FIND AND PRINT THEIR
PRODUCT.
INPUT DEFININGPROCESSING
DIAGRAM: OUTPUT
2 numbers say 1. Read two PRODUCT
num1, num2 numbers
2. Find the
product
PROPOSE AND EVALUATE
SOLUTIONS
• AFTER DEFINING THE PROBLEM, YOU WOULD KNOW WHAT NEEDS TO BE
DONE. IN THIS STEP, YOU FIGURE OUT HOW TO DO IT, BEARING IN MIND
THAT A PROBLEM CAN HAVE MANY DIFFERENT SOLUTIONS.
• INITIALLY, GO THROUGH EACH STEP OF THE SOLUTION MANUALLY (BY HAND)
USING SAMPLE INPUT DATA TO SEE IF THE SOLUTION PROVIDES THE
DESIRED OUTCOME. THEN REVIEW IT TO SEE HOW YOU CAN MAKE IT MORE
EFFICIENT. AFTER COMPLETING THE MANUAL SOLUTION TO THE PROBLEM
THE NEXT STEP IS TO WRITE THE SOLUTION AS A SEQUENCE OF
INSTRUCTIONS.
• EXAMPLE:
1. START
2. READ FIRST NUMBER, CALL IT NUM1
3. READ SECOND NUMBER, CALL IT NUM2
4. MULTIPLY NUM1 BY NUM2
5. PRINT PRODUCT
6. STOP
DETERMINE THE MOST
EFFICIENT SOLUTION
• THE BEST SOLUTION SHOULD BE DEVELOPED INTO AN
ALGORITHM. THE ALGORITHM MY BE REPRESENTED BY A
FLOWCHART OR A PSEUDOCODE ALGORITHM.
DEVELOP THE ALGORITHM

• THIS INVOLVES WRITING A COMPUTER PROGRAM THAT


CORRESPONDS TO THE ALGORITHM BY USING A
PROGRAM LANGUAGE. THIS CAN BE DONE BY UTILIZING
A TRACE TABLE TO IDENTIFY AND CORRECT THE LOGICAL
ERRORS FOUND IN THE ALGORITHM. A TRACE TABLE IS A
DIAGRAM WHICH ALLOWS FOR YOU TO SEE THE STATE
OF AN ALGORITHM AT EACH STEP OF IT.
VARIABLES AND
CONSTANTS
VARIABLES

• A VARIABLE IDENTIFIES A MEMORY LOCATION IN WHICH


ANY ITEM OF DATA CAN BE STORED.
• THE VALUE OF THE DATA CAN BE CHANGED.
• EACH VARIABLE NAME HAS TO BE UNIQUE SINCE ALL
VARIABLES WILL BE IN THE SAME LOCATION.
• THE VALUE STORED IN A VARIABLE CAN CHANGE FROM
TIME TO TIME, HOWEVER ITS LABEL/NAME WILL REMAIN
THE SAME.
• WHEN A NEW VALUE IS PLACED IN A VARIABLE THE OLD
ONE IS OVERWRITTEN BY THE NEW VALUE.
PICTORIAL VIEW OF VARIABLE IN
MEMORY
CONSTANT

• A CONSTANT IS THE NAME OF A STORAGE LOCATION IN


MEMORY WHOSE CONTENTS/DATA CANNOT BE CHANGED
DURING THE EXECUTION OF A PROGRAM.
• FOR EXAMPLE IF X=5 AT THE BEGINNING OF A PROGRAM,
X WILL STILL BE EQUAL TO 5 AT THE END OF THE
PROGRAM.
DATA TYPES
DATA TYPES
• DATA TYPES INDICATE THE TYPE OF DATA THAT IS STORED IN A
VARIABLE. EG. NUMBERS OR CHARACTERS.
• A VARIABLE CAN STORE ANY OF THE FOLLOWING DATA TYPES:
• INTEGER – THESE ARE WHOLE NUMBERS, POSITIVE OR
NEGATIVE WITHOUT DECIMAL PLACES. EG. 5, -45, 39 AND 126.
• FLOATING POINT OR REAL NUMBERS – THESE ARE POSITIVE
OR NEGATIVE NUMBERS WITH DECIMAL VALUES. EG. 0.55, 39.2,
-5.6, 7.0
• CHARACTERS – A CHARACTER IS ANYTHING THAT YOU CAN
TYPE ON THE KEYBOARD. THIS INCLUDES LETTERS, NUMBERS
AND SPECIAL CHARACTERS. EG. L, K, #, *.
EACH PIECE OF DATA STORED IN MEMORY IS OF
A SPECIFIC DATA TYPE. IN PROGRAMMING THERE
ARE FIVE (5) BASIC DATA TYPES.
Data Description Examples
Type

Integer Positive and negative whole numbers 23,-45, 0


including zero

Real All numbers including fractions 15.7, -19.25, 8

Charact Any key on the keyboard ‘A’, ‘z’, ‘8’, ‘?’


er

String Characters put together ‘Hello world’,


‘Marcus’
Boolean True or False TRUE or FALSE
THE CONCEPTS OF
ALGORITHMS
WHAT IS AN ALGORITHM?

• AN ALGORITHM IS A SEQUENCE OF PRECISE INSTRUCTIONS


WHICH, IF FOLLOWED, PRODUCES A SOLUTION TO A GIVEN
PROBLEM IN A FINITE AMOUNT OF TIME.
• IN OTHER WORDS AN ALGORITHM IS A FINITE NUMBER OF
ACCURATE, UNAMBIGUOUS STEPS THAT SOLVE A PROBLEM
OR TASK.
• ALGORITHMS CAN BE REPRESENTED USING PSEUDOCODE
OR A FLOWCHART. IT CANNOT BE EXECUTED BY THE
COMPUTER.
FLOWCHARTS

• A FLOWCHART REPRESENTS THE STEPS IN AN


ALGORITHM USING GEOMETRIC SYMBOLS AND ARROWS.
• THE SYMBOLS CONTAIN THE INSTRUCTIONS AND THE
ARROWS SHOW THE ORDER IN WHICH THE
INSTRUCTIONS SHOULD BE EXECUTED TO SOLVE THE
PROBLEM.
FLOWCHART SYMBOLS
SYMBOL NAME FUNCTION
Process Tells that a process is to be
performed, e.g calculation
Input/Output Used for any Input / Output
(I/O) operation. Indicates
that the computer is to
obtain data or output results
Decision/ Used to ask a question that
Question can be answered in a binary
format (Yes/No, true/false)
Start/Stop Used to start or stop a
process

Direction Arrow Shows direction of flow of


the algorithm, that is, the
sequence in which the steps
will flow.
connector Indicates an exit fromor an
entry to parts of the progra,
FLOWCHART ACTIVITY

• COMPLETE THE FLOWCHARTS ON THE WEBSITE BELOW.


• HTTPS://
WWW.CIMT.ORG.UK/PROJECTS/MEPRES/BOOK8/BK8I1/BK8
_1I2.HTM

You might also like