[go: up one dir, main page]

0% found this document useful (0 votes)
17 views13 pages

CPS #2

Uploaded by

Muhammad Fahad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views13 pages

CPS #2

Uploaded by

Muhammad Fahad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 13

Complex Problem

Solving
WEEK 2 (LOGICAL THINKING VS COMPUTATIONAL
THINKING
Major difference in solving simple
problems and complex problems
The major difference between solving simple problems and complex
problems is; While solving complex problem decompose the
problems, means to make sub problems that are manageable and
identify potential plans for each sub problem and rest of the steps are
same in simple and complex problems.
What is logical thinking
Logical thinking is the process of evaluating a problem and coming up with a
logical solution. Logical thinking requires the use of reasoning skills to study a
problem critically, which will enable you to draw a reasoned decision on how to
proceed.
Deductive Reasoning:
Problem Solving:
Pattern Recognition:
Eliminating Possibilities:
Hypothesis Testing:
Computational thinking
Computational thinking can be thought of as an extension of logical thinking.
Computers use logic in their computation but it does not mean that they think
logically. The computers themselves can’t perform logical thinking unless they
are programmed to do so.
Decomposition:
Pattern Recognition:
Abstraction:
Algorithm Design:
Evaluation:
How would you decompose the
task of creating an app
To decompose this task, you would need to know the answer to a series of
smaller problems:
• what kind of app you want to create
• what your app will look like
• who the target audience for your app is
• what your graphics will look like
• what audio you will include
• what software you will use to build your app
Continues…
• how the user will navigate your app
• how you will test your app
• where you will sell your app
Abstraction with examples
A model is a general idea of the problem we are trying to solve. For example, a model cat would
be any cat. Not a specific cat with a long tail and short fur - the model represents all cats. From
our model of cats, we can learn what any cat looks like, using the patterns all cats share.
Pattern recognition
To find patterns in problems we look for things that are the same (or very similar) in each
problem. It may turn out that no common characteristics exist among problems, but we should
still look. Patterns exist among different problems and within individual problems.
We need to look for both. Patterns among different problems To find patterns among problems
we look for things that are the same (or very similar) for each problem.
Representing an algorithm
There are two main ways that algorithms can be represented – pseudocode and flowcharts.
Most programs are developed using programming languages. These languages have specific
syntax that must be used so that the program will run properly. Pseudocode is not a
programming language, it is a simple way of describing a set of instructions that does not have
to use specific syntax.
Evaluation
Once a solution has been designed using computational thinking, it is important to make sure
that the solution is fit for purpose. Evaluation is the process that allows us to make sure our
solution does the job it has been designed to do and to think about how it could be improved.
Once written, an algorithm should be checked to make sure it: • is easily understood – is it fully
decomposed? • is complete – does it solve every aspect of the problem? • is efficient – does it
solve the problem, making best use of the available resources (eg as quickly as possible/using
least space)? • meets any design criteria we have been given If an algorithm meets these four
criteria it is likely to work well. The algorithm can then be programmed.
Methods used to design a
solution
1. Flowchart
2. Concept Maps
Flowchart
A flowchart is a graphical representation of a process or system, using various symbols to denote
different types of actions, decisions, or steps. It provides a clear and structured way to visualize
the sequence of operations, making complex processes easier to understand and analyze.
Flowcharts are often used in programming, project planning, and business workflows to map
out the flow of tasks, decisions, and outcomes, helping users identify potential inefficiencies or
areas for improvement.
Concept Maps
A concept map is a visual tool used to represent relationships between different
concepts or ideas. It typically involves nodes (representing concepts) connected
by labeled links that describe the nature of the relationships. Concept maps are
useful for brainstorming, organizing knowledge, and aiding in learning by
helping individuals see how different concepts are interconnected. They are
widely used in education and knowledge management to promote a deeper
understanding of complex topics through visualization.

You might also like