Open navigation menu
Close suggestions
Search
Search
en
Change Language
Upload
Sign in
Sign in
Download free for days
0 ratings
0% found this document useful (0 votes)
29 views
Algorithm, Flowchart
Flowchart
Uploaded by
IT Sooraj.S
AI-enhanced title
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here
.
Available Formats
Download as PDF or read online on Scribd
Download now
Download
Save algorithm, flowchart For Later
Download
Save
Save algorithm, flowchart For Later
0%
0% found this document useful, undefined
0%
, undefined
Embed
Share
Print
Report
0 ratings
0% found this document useful (0 votes)
29 views
Algorithm, Flowchart
Flowchart
Uploaded by
IT Sooraj.S
AI-enhanced title
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here
.
Available Formats
Download as PDF or read online on Scribd
Download now
Download
Save algorithm, flowchart For Later
Carousel Previous
Carousel Next
Save
Save algorithm, flowchart For Later
0%
0% found this document useful, undefined
0%
, undefined
Embed
Share
Print
Report
Download now
Download
You are on page 1
/ 8
Search
Fullscreen
SSE | Problem Ton toee A jostumile Solving Gta rning Objectives _o oe concepts in this iter learning the ¢ Aer learning the concer chapter, the students wil of + To understand the cone a algorithmic problem —_ solving: + Toapply the knowledge of algorithmic technique in problem solving. A number of processes ‘performed in our daily life follow the step-by-step execution of a sequence of instructions. Getting ready to school in the morning, drawing “kolams’, cooking a dish, adding tivo numbers are examples of processes. Pro. cesses are generated by executing algorithms. In this chapter, we will see how algorithms are specified and how elements of a process are abstracted in algorithms. 6.1 Algorithms 3.942 ( algorithm is ‘2° sequence of instructfons to accomplish a task or solve ae pre instruction describes an action When theinstructionsare executed, a process evolves, which accomplishes the intended task or solves the given nee can compare an algorithm to a recipé and the resulting process to cooking. We are interested in executing our algorithms in a computer. A computer can onlyexecute instructions ina programming language. Instructions of a computer are also known as Statements. Therefore, ultimately, algorithms must be expressed 16 Ww action Specification and Abstra | SP! tements of a Progra using sta ngage. . A problem is specified by given inp data, desired output data and a relation between the input and the output data Ay algorithm starts execution with the ‘np data, executes the statements, and finishes execution with the output data, ‘When it finishes execution, the specified relation between the input data and the outpy data should be satisfied. Only then has the G Polya was a Hungarian mathematician. © He made fundamental contributions _ to combinatorics, number theory, numerical analysis and probability theory. He is also noted for his work in heuristics and mathematics education, identifying systematic methods of problem solving to further discovery and invention in mathematics for students and teachers, In "How to Solve It", he suggests the following 7 Steps when solving a8 mathematical problem: 1.’ a Understand the problem, 2. Devise a plan. 3, Carry ot the pn Review AZ Zp Your work BL An algorithm is a step by step Sequence of statements intended to solve a Problem. When executed with input data, it ‘Senerates a computational Process, and ends CHAPTER 6 ¥ # i oe eehn output data, Satistying the specific jon bebween the input dat Lr ght Mand the apn dati, psample 6.1. Add Ovo numbers: Uyak o numbers, we proceed by \ adding the two numbers, then the next Tight most digits together © ight most digits of the rat with carry that resulted from the previous (right) position, and 80 on, ‘The computational process for adding 2586 and 9237 is illustrated in Table 6.1, Gny 1 0 1 0 Number 102 5 8 6 Number 209020307 Sam 118 23 Table 6.1: The process for adding two numbers 6.2 Algorithmic Problems in ‘There are some principles aft” techniques for constructing algorithm usually say that a problem is algorithmic in nature when its solution involves the construction of an algorithi). Some types of problems can be immediately recognized as algorithmic. Example 6.2. Consider the well-known Goat, grass and wolf problem: A farmer wishes to take a goat, a grass bundle and a wolf acrossa river. However, his boat can take only one of them at atime. So several tripsare necessary to across the river. Moreover, the goat should not be left alone with the grass (otherwise, the goat would eat the grass) and the wolf should not be left alone with the goat (otherwise, the wolf would eat the goat), How M7 Can the farmer achieve the tas? Initially, we ‘sstime that all the four are at the sare side of ‘he tiverand finally all the four snust bein the Opposite side. ‘The farmer must be in the boat when crossing the river, A solution consis! of a sequence of instructions indicating, who oor what should cross. ‘Therefore, this is an algorithmic problem, Instructions may be ‘BULLS Let the farmer cross with the wolf. or Let the farmer cross alone. However, some algorithmic problems do not require us to construct algorithms Instead, an algorithm is provided and we are required to prove some ofits properties Example 6.3. Consider The Chameleons of Chromeland problem: On the island of Chromeland there are three different types of chameleons: red chameleons, green chameleons, and blue chameleons. Whenever two chameleons of different colors meet, they both change color to the third color. For which number of red, green and blue chameleons it is possible to arrange ‘a series of meetings that results in all the chameleons displaying the same color? This is an algorithmic problem, because there is an algorithm to arrange meetings between chameleons, Using some properties of the alge initial number of chameleons, the goal is possible, hm, we can find out for which 6.3 Building Blocks of Algorithms oo We construct algorithms using basic building blocks such as| \ I + Data “y" + Variables + Control flow + Functions 6.3.1 Data Algorithms take input — data, process the data, and produce output data, Computers provide instructions to r example, perform operations on dal there are instructions for doing arithmetic operations on numbers, such as add, subtract, multiply and divide. There are different kinds of data such as numbers and text. 6.3.2 Variables Variables are named boxes for storing data. When we do operations on data, we need to store the results in variables. The data stored in a variable is also knownas the value of the variable. We can store a value in a variable or change the value of variable, using an assignment statement. , Computational processes in the real-world have state. As a process evolves, the state changes. How do we represent the state of a process and the change of state, in an algorithm? The state of a process can be represented by a set of variables in an algorithm. The state at any point of execution is simply the values of the variables at that point. As the values of the variables are changed, the state changes. Example 6.4. State: A traffic signal may be in one of the three states: green, amber, or red. The state is changed to allow a smooth flow of traffic. The state may be 18 | represent ar » have one of the three value, which ¢ ven, amber, or red. ed by a single variable sippy iy it 6.3.8 Control flow 4 - it An algorithm is a sequence statements, However, after executing a statement, the next statement to be executed need not be the next statemen, i in the algorithm. The statement to be executed next may depend on the state of the process. Thus, the order in which the statements are executed may differ from the order in which they are written in the algorithm. This order of execution of statements is known as the control flow. ‘There are three important control flow statements to alter the control flow depending on the state. | + In sequential control flow, a sequence of statements are executed one after | another in the same order as they are written, + In alternative control flow, a condition of the state is tested, and if the condition is true, one statement is executed; if the condition is false, an alternative statement is executed, “peeved + In iterative control flow, a condition of the state is tested, and if the condition is true, a statement is executed. The two steps of testing the condition and executing the statement are repeated until the condition becomes false. 6.3.4 Functions Algorithms can become very complex. ‘The variables of an algorithmx dependencies among the varies ys » puild algorithms correctly. In such be too many, Then, it is difficult ations, we break an algorithm into pts: construct each part separately, and then integrate the parts to the complete Algorithm. hing geri? te as Lo the parts of an algorithm are jmown as functions, A function is like a sub algorithm. It takes an input, and produces an output, satisfying a desired input output relation. Example 6.5. Suppose we want Lo calculate the surface area of a cylinder of radius r and height h. A= 2ar + dark We can identify two functions, one for calculating the area of a circle and the other for the circumference of the circle. If we abstract the two functions as circle_ area(r) and circle_circumference("), then cylinder_area(r, h) can be solved as cylinder_area (nh) = 2X circle_area (r) + circle_circunsference (r) X h Algorithm Design Techniques ‘There area few basic principles and techniques for designing algorithms. ‘the first step in problem 1. Specification: solving is to state the problem precisely. fied in terms of the A problem is speci input given and the output desired. ‘the specification must, also state the properties of the given input, and the relation between the input and the output. VS properties is known z i 7 2. Absteactionf A problem can involve a lot of details, Several of these details are unnecessary for solving the problem Onlyafew detailsareessential. Ignoring or hiding unnecessary details and ts essential modeling an entity only b abstraction. “For example, when we represent the state of a process, we select only the variables essential to the problem and ignore inessential details) Ihe a9 3. Composition: An algorithm is composed of assignment and control flow statements. A control flow statement tests @ condition of the state and, depending on the value of the condition, decides the next statement to be executed. 4, Decomposition: We divide the main algorithm into functions. We construct each function independently of the hm and other functions. main main algorit Finally, we algorithm using the functions. When we use the functions, it is enough to know the specification of the function. It is not necessary to know how the construct the function is implemented. 6.5 Specification — ee ‘To solve a problem, first we must state the problem clearly and precisely. A problem isspecified by the given inputand the desired output. To design an algorithm for solving a problem, we should know the properties of the given input and the properties of the desired output. ‘The goal of the algorithm is to estab sh the relation between the input and.the desired output. 9Generation First Generation Perlod 1942 1955 eration Computers Mal Component used size 8 feet x 100 feet watts of power NIAC, EDVAC, UNIVAG) = 4 + Big in size + Consumed More power + Malfunction due 10 overheat » Machine Langua Language ‘ Buage was Used * 3 feet and consumed around 159 Second | Generation 1955- 1964 ® Transistors Smaller comp Generation Generated Less Heat Consumed less power compared to first Seneration Punched cards were used First operating system was developed - Batch Processing and Multiprogramming Operating System Machine language as well as Assembly language was used, ared to First Second Generation Co: mputers IBM 1401, IBM 1620, UNIVAG 1108 + Computers were smaller, faster and more reliable Third 1964 3 é e + Consumed less power Generation | -1975 ° + High Level Languages were Integrated used Circuits (IC) third Generation Computers IBM360 series, Honeywell 6000 series + Smaller and Faster + Microcomputer series such Fourth as IBM and APPLE were 4 i. Generation | 11989) Microprocessor | developed Very Large Scale |* Portable Computers were Integrated Circuits | _im'roduced. (Vist)11080 = till, | | | | |Therefore, there is no need les of the grammar of a e 78 Tanguage. However, even PSeudo code m P ust be rigorous and correct. “tudo code aha is the most widely used ‘ation to Tepresent algorithms, 13" Flowcharts & Flowchart is a diagrammatic notation . Representing algorithms. ‘They show the satel flow of algorithms using diagrams in a stal manner. In flowcharts, Fectangular boxes 5 Present simple statements, diamond-shaped DOXes represent fe ib Control flows during the execution of the algorithm. 4 flowchart is a collection of boxes Containing statements and conditions which ate connected by arrows showing the order in which the boxes are to be executed, 1. A statement is contained in a rectangular box with a/single outgoing arrowwhich Points to the box to be executed next, A condition is contained in a diamond- shaped box with two outgoing arrows, labeled true and false. The true arrow points to the box to be executed next if the condition is true, and the false arrow Points to the box to be executed next if the condition is false. false tt conditions, and arrows describe lelogram boxes represent inputs given and outputs produced, Inputs / (Outputs) . Special boxes marked Start and the End are used to indicate the start and the end ofan execution: ak a7 eli Start End} } ‘The flowchart of an algorithm to compute the quotient and remainder after dividing an integer A by another integer B is shown in Figure 7.1, illustrating the different boxes such as input, output, condition, and assignment, and the control flow between the boxes. The algorithm is explained in Example 74. Figure 7.1: Flowchart for integer division Flowcharts also have disadvantages. (1) Flowcharts are less compact than representation of algorithms in 131 | | | i] i i i | } i | |programming language or pseudo code. (2) They obscure the basic hierarchical structure of the algorithms. (3) Alternative statements and loops are disciplined control flow structures. Flowcharts do not restrict us to disciplined control flow structures.
You might also like
GE8151 - PROBLEM SOLVING AND PYTHON PROGRAMMING - by WWW - LearnEngineering.in PDF
PDF
No ratings yet
GE8151 - PROBLEM SOLVING AND PYTHON PROGRAMMING - by WWW - LearnEngineering.in PDF
89 pages
Graph Algarithms-Course Material
PDF
No ratings yet
Graph Algarithms-Course Material
25 pages
Algorithms: What Is An Algorithm?
PDF
No ratings yet
Algorithms: What Is An Algorithm?
16 pages
LESSON 2
PDF
No ratings yet
LESSON 2
24 pages
DSA - Module
PDF
No ratings yet
DSA - Module
108 pages
Python
PDF
No ratings yet
Python
228 pages
Full Notes
PDF
25% (4)
Full Notes
114 pages
Full Notes
PDF
No ratings yet
Full Notes
114 pages
Algorithm and Flow Chart - Lecture 1
PDF
100% (1)
Algorithm and Flow Chart - Lecture 1
20 pages
ICT-101 Discrete Mathematics For IT
PDF
No ratings yet
ICT-101 Discrete Mathematics For IT
8 pages
CSE3004-Lecture 0-Merged-Pages-Deleted
PDF
No ratings yet
CSE3004-Lecture 0-Merged-Pages-Deleted
18 pages
Topic 1 Introduction To Agorithms
PDF
No ratings yet
Topic 1 Introduction To Agorithms
55 pages
Slides Part3 AlgAndDatastrct
PDF
No ratings yet
Slides Part3 AlgAndDatastrct
227 pages
01 - CSC 202 - Algorithms
PDF
No ratings yet
01 - CSC 202 - Algorithms
16 pages
Unit 1 Notes
PDF
No ratings yet
Unit 1 Notes
20 pages
Algorithms Notes 2 - TutorialsDuniya
PDF
No ratings yet
Algorithms Notes 2 - TutorialsDuniya
101 pages
CSC 121. Problem Solving Lesson 3
PDF
No ratings yet
CSC 121. Problem Solving Lesson 3
21 pages
Lecture 1 Algorithms
PDF
No ratings yet
Lecture 1 Algorithms
38 pages
?Phython Gnrl 1
PDF
No ratings yet
?Phython Gnrl 1
153 pages
Design and Analysis of Algorithms-Compressed (1) - Compressed
PDF
100% (1)
Design and Analysis of Algorithms-Compressed (1) - Compressed
290 pages
Python
PDF
No ratings yet
Python
25 pages
Algorithm BasicsFinal
PDF
No ratings yet
Algorithm BasicsFinal
51 pages
01 Iterative Methods
PDF
No ratings yet
01 Iterative Methods
356 pages
1 DAA - Handout-01-Introduction
PDF
No ratings yet
1 DAA - Handout-01-Introduction
22 pages
Unit 1: Introduction To Programming Language Concepts
PDF
No ratings yet
Unit 1: Introduction To Programming Language Concepts
20 pages
Unit 1
PDF
No ratings yet
Unit 1
19 pages
Python Unit 1
PDF
No ratings yet
Python Unit 1
15 pages
DAA_Unit-I-Student
PDF
No ratings yet
DAA_Unit-I-Student
57 pages
Module 1 CS104 Data Structures and Algorithms
PDF
No ratings yet
Module 1 CS104 Data Structures and Algorithms
17 pages
Unit III Foc
PDF
No ratings yet
Unit III Foc
21 pages
Chapter 1: Introduction Algorithms and Conventions: What Is An Algorithm?
PDF
No ratings yet
Chapter 1: Introduction Algorithms and Conventions: What Is An Algorithm?
6 pages
Ada Notes
PDF
No ratings yet
Ada Notes
148 pages
UNIT- 1
PDF
No ratings yet
UNIT- 1
40 pages
Introduction To Ict.: (Algorithms.) Lecture # 15-16 By: M.Nadeem Akhtar. Lecturer. Department of CS & IT
PDF
No ratings yet
Introduction To Ict.: (Algorithms.) Lecture # 15-16 By: M.Nadeem Akhtar. Lecturer. Department of CS & IT
59 pages
Design and Analysis of Algorithms
PDF
No ratings yet
Design and Analysis of Algorithms
133 pages
CS353 Midterm Slides
PDF
No ratings yet
CS353 Midterm Slides
297 pages
Computational Thinking and Getting Started With Python
PDF
No ratings yet
Computational Thinking and Getting Started With Python
32 pages
Algorithm and Flow Chart
PDF
No ratings yet
Algorithm and Flow Chart
8 pages
An Algorithm - Characteristics and Types - Lecture-1
PDF
No ratings yet
An Algorithm - Characteristics and Types - Lecture-1
8 pages
ICT-101 Discrete Mathematics For IT
PDF
No ratings yet
ICT-101 Discrete Mathematics For IT
8 pages
Daa Unit-1
PDF
No ratings yet
Daa Unit-1
33 pages
Algorithms DAA
PDF
No ratings yet
Algorithms DAA
17 pages
1. Introduction
PDF
No ratings yet
1. Introduction
28 pages
Chapter4-Program Design Aids
PDF
100% (1)
Chapter4-Program Design Aids
32 pages
Department of Information Technolo
PDF
No ratings yet
Department of Information Technolo
116 pages
Ada (Bcs401) Notes
PDF
No ratings yet
Ada (Bcs401) Notes
14 pages
Algorithm
PDF
No ratings yet
Algorithm
31 pages
Unit I Algorithmic Problem Solving
PDF
No ratings yet
Unit I Algorithmic Problem Solving
25 pages
2013-14 Algorithms Intro - Steps To A Solution
PDF
No ratings yet
2013-14 Algorithms Intro - Steps To A Solution
21 pages
Algorithm and Flow Chart
PDF
No ratings yet
Algorithm and Flow Chart
20 pages
PPS Unit 1
PDF
No ratings yet
PPS Unit 1
108 pages
Unit-I - Introduction
PDF
100% (1)
Unit-I - Introduction
75 pages
Chapter 1
PDF
No ratings yet
Chapter 1
26 pages
As An Example of Illustrating The Notion of Algorithm
PDF
0% (1)
As An Example of Illustrating The Notion of Algorithm
7 pages
1.1.algorithms: Unit I Algorithmic Problem Solving
PDF
No ratings yet
1.1.algorithms: Unit I Algorithmic Problem Solving
26 pages
Chapter 6 Algorithm and Data Structures
PDF
No ratings yet
Chapter 6 Algorithm and Data Structures
67 pages