Problem Solving.ppt

23
Contents Today's Topic: Problem Solving Techniques We will learn We will learn 1. 1. Problem Statement. Problem Statement. 2. 2. Algorithm Algorithm Types, Example Types, Example 3. 3. Flowchart Flowchart Symbols, Examples. Symbols, Examples.

Transcript of Problem Solving.ppt

  • ContentsToday's Topic: Problem Solving Techniques

    We will learnProblem Statement.AlgorithmTypes, ExampleFlowchartSymbols, Examples.

  • Problem Solving Techniques

  • Problem Statement: Problem Statement help diagnose the situation so that your focus is on the problem, helpful tools at this stage include Algorithms and flowcharts for identifying the expected steps of a process. Therefore to solve any problem,

    Collect and analyze information and data Talk with people familiar with the problem If at all possible, view the problem first hand Confirm all findings

  • Algorithm: The algorithm is part of the blueprint or plan for the computer program, an algorithm is: An effective procedure for solving a class of problems in a finite number of steps.

    Every algorithm should have the following 5 characteristic feature:InputOutputDefinitenessEffectivenessTermination

  • Algorithm (Contd):To find largest of three numbersStartRead 3 numbers: num1, num2, num3if num1 > num2 then go to step 5if num2 > num3 then print num2 is largest else print num3 is largest goto step 6if num1 > num3 then print num1 is largest else print num3 is largestend.

  • Algorithm (Contd):Example: One of the simplest algorithms is to find the largest number in an (unsorted) list of numbers.

    High-level description:

    Assume the first item is largest. Look at each of the remaining items in the list and if it is larger than the largest item so far, make a note of it. The last noted item is the largest in the list when the process is complete.

  • Algorithm (Contd): Formal description: Written in prose but much closer to the high-level language of a computer program, the following is the more formal coding of the algorithm in pseudo code (find the largest number in an (unsorted) list of numbers)

    Algorithm LargestNumber Input: A non-empty list of numbers L. Output: The largest number in the list L.

    largest L0 for each item in the list L, do if the item > largest, then largest the item return largest

  • Flowchart:What is a Flowchart?The flowchart is a means of visually presenting the flow of control through an information processing systems, the operations performed within the system and the sequence in which they are performed. It is a graphic representation of how a process works, showing, at a minimum, the sequence of steps. Flowcharts are generally drawn in the early stages of formulating computer solutions.

  • Flowchart (Contd):Guideline for drawing a flowchart: Flowcharts are usually drawn using some standard symbols; Some standard symbols, which are frequently required for flowcharting many computer programs are shown below,-

  • Flowchart (Contd):A set of useful standard Flowchart symbols:Rounded box use it to represent an event which occurs automatically. Rectangle or box use it to represent an event which is controlled within the process. Typically this will be a step or action which is taken. Diamond use it to represent a decision point in the process. Circle use it to represent a point at which the flowchart connects with another process.

  • ADVANTAGES OF USING FLOWCHARTS: Communication: Flowcharts are better way of communicating the logic of a system Effective analysis: Problem can be analyzed in more effective way. Proper documentation: Flowcharts serve as a good program documentation Efficient Coding: Flowcharts act as a guide or blueprint during the systems analysis and program development phase.

  • ADVANTAGES OF USING FLOWCHARTS (Contd):Proper Debugging: Flowchart helps in debugging process.

    Efficient Program Maintenance: The maintenance of operating program becomes easy with the help of flowchart.

  • Flow chart of the while loop :

  • Flow chart of the for loop:

  • The flow chart of the if statement:

  • The flow chart of the ifelse statement:

  • The flow chart of the switch statement:

  • Flowchart for finding the sum of first five natural numbers ( i.e. 1,2,3,4,5):

  • Flowchart (Example):Flowchart to find the sum of first 50 natural numbers.

  • StartRead A, BIs A > BPrint APrint BEndYesNoFlow Chart to find largest of two numbers:

  • Flowchart to find the largest of three numbers A,B, and C: NO

  • LIMITATIONS OF USING FLOWCHARTS: Complex logic: Sometimes, the program logic is quite complicated. In that case, flowchart becomes complex and clumsy.

    Alterations and Modifications: If alterations are required the flowchart may require re-drawing completely.

    Reproduction: As the flowchart symbols cannot be typed, reproduction of flowchart becomes a problem.

  • Flowchart (Exercise):Draw a flowchart to depict all steps that you do reach your college.

    Draw Flowchart for Linear search.