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

Algorithm and Flow Chart

The document discusses algorithms and flowcharts as essential tools in programming for problem-solving. It defines algorithms as step-by-step procedures for solving problems and flowcharts as graphical representations of these algorithms. Additionally, it outlines different types of algorithms, their characteristics, and provides examples of algorithms and flowcharts for various tasks.

Uploaded by

sumitstark7157
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)
8 views

Algorithm and Flow Chart

The document discusses algorithms and flowcharts as essential tools in programming for problem-solving. It defines algorithms as step-by-step procedures for solving problems and flowcharts as graphical representations of these algorithms. Additionally, it outlines different types of algorithms, their characteristics, and provides examples of algorithms and flowcharts for various tasks.

Uploaded by

sumitstark7157
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/ 21

Algorithm and Flow

Chart
Unit-I
Programming For Problem solving

Dr. Ashutosh Bhatt 1


Algorithms and flowcharts are two different tools that are helpful for
creating new programs, especially in computer programming.
 An algorithm is a step-by-step analysis of the process.
 A flowchart explains the steps of a program in a graphical way.

Dr. Ashutosh Bhatt 2


Definition of Algorithm
Writing a logical step-by-step method to solve the problem is called
the algorithm. In other words, an algorithm is a procedure for solving
problems. In order to solve a mathematical or computer problem, this
is the first step in the process.
An algorithm includes calculations, reasoning, and data processing.
Algorithms can be presented by natural languages, pseudocode, and
flowcharts, etc.

Dr. Ashutosh Bhatt 3


Dr. Ashutosh Bhatt 4
Definition of Flowchart
A flowchart is the graphical or pictorial representation of an
algorithm with the help of different symbols, shapes, and arrows to
demonstrate a process or a program. With algorithms, we can easily
understand a program.
The main purpose of using a flowchart is to analyze different
methods. Several standard symbols are applied in a flowchart:

Dr. Ashutosh Bhatt 5


The symbols below represent different parts of a flowchart. The
process in a flowchart can be expressed through boxes and arrows
with different sizes and colors. In a flowchart, we can easily
highlight certain elements and the relationships between each
part.
Name Symbol

Terminal Box - Start / End

Input / Output

Process / Instruction

Decision

Connector / Arrow

Dr. Ashutosh Bhatt 6


Difference between alogorithm and
flowchart
Algorithm Flowchart
It is a procedure for solving problems. It is a graphic representation of a process.
The process is shown in block-by-block information
The process is shown in step-by-step instruction.
diagram.
It is complex and difficult to understand. It is intuitive and easy to understand.
It is convenient to debug errors. It is hard to debug errors.
The solution is showcased in natural language. The solution is showcased in pictorial format.
It is somewhat easier to solve complex problem. It is hard to solve complex problem.
It costs more time to create an algorithm. It costs less time to create a flowchart.

Dr. Ashutosh Bhatt 7


Types of Algorithm:

We can generally divide algorithms into six fundamental types


based on their function.

Dr. Ashutosh Bhatt 8


• Recursive Algorithm

It refers to a way to solve problems by repeatedly breaking down the problem into
sub-problems of the same kind. The classic example of using a recursive algorithm
to solve problems is the Tower of Hanoi.

Dr. Ashutosh Bhatt 9


• Divide and Conquer Algorithm
Traditionally, the divide and conquer algorithm consists of two parts:
1. breaking down a problem into some smaller independent sub-problems of the same
type.
2. finding the final solution of the original issues after solving these more minor
problems separately.
The key points of the divide and conquer algorithm are:
• If you can find the repeated sub-problems and the loop substructure of the original
problem, you may quickly turn the original problem into a small, simple issue.
• Try to break down the whole solution into various steps (different steps need different
solutions) to make the process easier.
• Are sub-problems easy to solve? If not, the original problem may cost lots of time.
Dr. Ashutosh Bhatt 10
• Dynamic Programming Algorithm
Developed by Richard Bellman in the 1950s, the dynamic programming algorithm
is generally used for optimization problems.
In this type of algorithm, past results are collected for future use. Like the divide
and conquer algorithm, a dynamic programming algorithm simplifies a complex
problem by breaking it down into some simple sub-problems.
However, the most significant difference between them is that the latter requires
overlapping sub-problems, while the former doesn’t need to.

Dr. Ashutosh Bhatt 11


Greedy Algorithm
This is another way of solving optimization problems – greedy algorithm. It refers to
always finding the best solution in every step instead of considering the overall
optimality. That is to say, what he has done is just at a local optimum.
Due to the limitations of the greedy algorithm, it has to be noted that the key to
choosing a greedy algorithm is whether to consider any consequences in the
future.

Dr. Ashutosh Bhatt 12


Brute Force Algorithm
• The brute force algorithm is a simple and straightforward solution to
the problem, generally based on the description of the problem and
the definition of the concept involved. You can also use "just do it!" to
describe the strategy of brute force. In short, a brute force algorithm
is considered as one of the simplest algorithms, which iterates all
possibilities and ends up with a satisfactory solution.

Dr. Ashutosh Bhatt 13


Backtracking Algorithm
• Based on a depth-first recursive search, the backtracking algorithm focusing on
finding the solution to the problem during the enumeration-like searching
process. When it cannot satisfy the condition, it will return “backtracking” and
tries another path. It is suitable for solving large and complicated problems,
which gains the reputation of the “general solution method.” One of the most
famous backtracking algorithm example it the eight queens puzzle.

Dr. Ashutosh Bhatt 14


Example 1: Print 1 to 20:
Algorithm:
• Step 1: Initialize X as 0,
• Step 2: Increment X by 1,
• Step 3: Print X,
• Step 4: If X is less than 20 then go back to step 2.

Dr. Ashutosh Bhatt 15


Flowchart

Dr. Ashutosh Bhatt 16


Example 2: Convert Temperature from Fahrenheit (℉) to Celsius (℃)
Algorithm:
• Step 1: Read temperature in Fahrenheit,
• Step 2: Calculate temperature with formula C=5/9*(F-32),
• Step 3: Print C.

Dr. Ashutosh Bhatt 17


Flowchart

Dr. Ashutosh Bhatt 18


Example 3: Determine Whether A Student Passed the Exam or Not:
Algorithm:
• Step 1: Input grades of 4 courses M1, M2, M3 and M4,
• Step 2: Calculate the average grade with formula
"Grade=(M1+M2+M3+M4)/4"
• Step 3: If the average grade is less than 60, print "FAIL", else print
"PASS".

Dr. Ashutosh Bhatt 19


Flowchart

Dr. Ashutosh Bhatt 20


Three Most Commonly Used Types of Flowcharts
• Process Flowchart
• Data Flowchart
• Business Process Modeling Diagram

Dr. Ashutosh Bhatt 21

You might also like