ALGORITHM & FLOWCHARTS
Definition: “An effective procedure for solving a problem in a finite no of steps.
OR
An algorithm is a finite set of well defined instructions or step by step procedure to solve a given problem.
Programs= Algorithms + Data.
Characteristics of an Algorithm
1) Input : It may accept zero or more inputs
2) Definiteness : Each instruction must be clear, well-defined and precise. There should not be any ambiguity
3) Effectiveness : Each instruction must be simple and be carried out in a finite amount of time.
4) Finiteness : Algorithm should have finite sequence of instructions. That is, it should end after a fixed time. It should not enter into an infinite loop
5) Output :It should produce at least one output.
Algorithm Notation
1) Name of algorithm: Specifies problem to be solved.
2) Step no - Identification tag of an instruction and it is an unsigned position number.
3) Explanatory comment within the square brackets
4) Termination
Advantages of Algorithm
· Effective communication: Since algorithm is written in English like language, logic of the problem can be explained easily to others
· Easy and efficient coding : It acts as a blue print during a program development
· Program debugging : Helps in debugging so that we can identify the logical errors in a program
· Program maintenance : maintaining the software becomes much easier
Different patterns of algorithms
1) Sequential : In this different steps occur in a sequence
2) Conditional : In this different steps are executed based on a condition(whether true/false) . In programming languages, an conditional pattern is implemented using decision making statements.
3) Iterational : In this a task (one or more steps ) is repeated more than once. In programming languages, an iterational pattern is implemented using loops. An iterational construct is also known as “repetitive” construct
Examples
1. Write an algorithm to find sum and average of 3 numbers
Step 1: start
Step 2: read a,b,c [ input 3 numbers]
Step 3: sum ß a + b + c [ find sum]
Step 4: avg ß sum/3 [find average]
Step 5: print sum, avg [output the result]
Step 6: stop
2. Write an Algorithm to find whether an entered integer number is positive or negative (Decision making type)
Step 1: Start [Beginning of the Algorithm]
Step 2: Read a number A [Input the integer number]
Step 3: If A is greater than 0 [compare A to zero]
print “number as positive”
else print “number as negative”
Step 4: Stop [End of the Algorithm]
3. Write an algorithm to find largest of two numbers
Step 1: Start [Beginning of the Algorithm]
Step 2: Read a and b [Input two numbers a,b]
Step 3: if a is greater than b [ compare a and b]
print “ a as large”
else
print “b as large” [output the result]
Step 4: Stop
Disadvantage of algorithm
· Developing algorithm for large and complex problems would be time consuming and difficult to understand
· Understanding complex logic through algorithms would be difficult
PSEUDOCODE
Pseudocode is one of the tools that can be used to write a preliminary plan that can be
developed into a computer program. Pseudocode is a generic way of describing an
algorithm without use of any specific programming language syntax. It is, as the name
suggests, pseudo code —it cannot be executed on a real computer, but it models and
resembles real programming code, and is written at roughly the same level of detail
تعليقات
إرسال تعليق
شاركنا الآراء ،،