300 likes | 327 Views
Problem , Problem Solving, Algorithm & Flow Charts. Presented By Mohamed El.Said. Objectives of the Session. Defining Problem Defining Problem Solving Need for Problem Solving Problem Solving Strategy Define-Algorithms- Rules of Algorithms Examples of Algorithms
E N D
Problem , Problem Solving, Algorithm & Flow Charts Presented ByMohamed El.Said
Objectives of the Session Defining Problem Defining Problem Solving Need for Problem Solving Problem Solving Strategy Define-Algorithms- Rules of Algorithms Examples of Algorithms Define-Flowcharts-Rules of Flowchart Examples of Flowcharts Model Exercises Take Away Tutorials
Problem and Problem Solving Definitions The state of feeling difficulty in completing any task is called problem The process of working through details of a problem to reach a solution. Problem solving may include mathematical or systematic operations and can be a gauge of an individual's critical thinking skills.
Need for Problem Solving A computer is a tool that can be used to implement a plan for solving a problem. A computer program is a set of instructions for a computer. These instructions describe the steps that the computer must follow to implement a plan. An algorithm is a plan for solving a problem. A person must design an algorithm. A person must translate an algorithm into a computer program.
ALGORITHMS AND FLOWCHARTS • Algorithm • Step by step method to solve a problem is algorithm • Flow Chart • Diagrammatic representation of algorithm
Divide and conquer strategy A divide and conquer algorithm works by recursively breaking down a problem into two or more sub-problems of the same (or related) type, until solved
Steps in development of Algorithms • Define Problem • Adopt Problem solving Method • Specify of Algorithm • Design an Algorithm • Check correctness of Algorithm • Analysis of Algorithm • Implementation of Algorithm • Test Algorithm • Documentation Preparation
Qualities of a good algorithm Inputs and outputs should be defined precisely. Each steps in algorithm should be clear and unambiguous. Algorithm should be most effective among many different ways to solve a problem. An algorithm shouldn't have computer code. Instead, the algorithm should be written in such a way that, it can be used in similar programming languages.
Algorithm • Problem: How to brush your teeth • Real life Example Step 1: Start Step 2: Wake up Step 3: Wash mouth Step 4: Wash brush, apply toothpaste Step 5: Brush your teeth Step 6. Wash mouth and brush Step 7: Put brush back to holder Step 8: Stop
Problem: Add two numbers Algorithm Step 1: Start Step 2: Read A, B Step 3: C=A+B Step 4: Print C Step 5: Stop
Algorithm Problem: Multiply 2 numbers Problem: Subtract 2 numbers Step 1: Start Step 2: Read A, B Step 3: C=A-B Step 4: Print C Step 5: Stop Step 1: Start Step 2: Read A, B Step 3: C=A*B Step 4: Print C Step 5: Stop
AlgorithmProblem: Average of 3 numbers Step 1: Start Step 2: Read A, B, C Step 3: Avg=(A+B+C)/3 Step 4: Print Avg Step 5: Stop
AlgorithmProblem: Find your Age Step 1: Start Step 2: Read Byear Step 3: Age=2019-Byear Step 4: Print Age Step 5: Stop
AlgorithmProblem: Area of Circle Step 1: Start Step 2: Read Radius Step 3: Area=3.14*Radius *Radius Step 4: Print Area Step 5: Stop
AlgorithmProblem: Find even or odd Step 1: Start Step 2: Read N Step 3: If (N%2=0) then Print “N is even number ” else Print “N is odd number ” Step 4: Stop
AlgorithmProblem: Find +ve or -ve Step 1: Start Step 2: Read N Step 3: If (N>0) then Print “ N is +ve number” else Print “N is -ve Number” Step 4: Stop
AlgorithmProblem: Find Pass or Fail • Detailed Algorithm Step 1: Start Step 2: Read Mark Step 3: If (Mark>=60) then Print “PASS” else Print “Fail” Step 4: Stop
The Flowchart A Flowchart is the graphical representation of an algorithm. • shows logic solution • emphasizes individual steps and their interconnections • A flowchart must have a start and stop • A steps in a flowchart must connect.
Flowchart Symbols General Used Symbols
Flow Chart: Add Two Numbers Algorithm Start Flowchart Read A, B C=A+B Print C Stop
DECISION STRUCTURES • The expression A>B is a logical expression • it describes a condition we want to test • if A>B is true (if A is greater than B) we take the action on left • print the value of A • if A>B is false (if A is not greater than B) we take the action on right • print the value of B
is A>B Y N DECISION STRUCTURES Print A Print B
Flow Chart: Find Even or Odd Start Read N If N%2=0 ? N Y Print “Odd” Print “Even” Stop
Flow Chart: Find Largest of two numbers Start Read A, B if A>B ? N Y Print “B is large” Print “A is large” Stop
START Read a, b, c d sqrt(b x b – 4 x a x c) x1(–b + d) / (2 x a) X2 (–b – d) / (2 x a) STOP Problem: Write Algorithm and Flowchart to find solution of Quadratic equation • Algorithm: • Step 1: Start • Step 2: Read a, b, c • Step 3: dsqrt ( ) • Step 4: x1 (–b + d) / (2 x a) • Step 5: x2 (–b – d) / (2 x a) • Step 6: Print x1, x2 • Step 7: Stop Print X1, X2
Assignment Draw algorithm and flowchart • Find area of triangle (area=(1/2)*breadth*height) • Convert Celsius to Fahrenheit temperature f = (1.8*c) + 32; • Find Area of Rectangle (area= b*h) • Find Volume of cylinder(V= 3.14*R*R*Height) • Find volume of sphere (4/3* 3.14*R*R*R) • Find biggest of three numbers.
Instructions to students Study definition well Study different algorithms well Study how to draw flowchart for specific problems. Work-out various assignment problems Approach me for any doubt clarifications