2DefinitionsFlowchart: is a diagrammatic representation that illustrates the sequence of operations to be performed to get the solution of a problem.
3Standard Symbols Used ? A A1 Start Print Results Calculate Variables Start Or Stop ProcessStartPrintResultsInput/OutputAOn-Page Connector?YesNoConditionCalculateVariablesProcess RectangleA1Off-page Connector
4How to Write a Program? Start Define Problem to Solve Think of an AlgorithmThink of a Technique for the SolutionWrite Solution on a Piece of PaperIf not Finished Repeat Steps 4 and 5Write Code and ProgramDebug and TestIf not Finished Repeat Steps 7 and 8Stop
5How to Write a Program ?(flowchart) StartJob Done?NoDefine Problem to SolveThink of an Algorithm(Technique for the solution)YesWrite Code and ProgramIdea!!!!Debug and TestThink of aTechnique for the solutionJob Done?NoYesStopWrite it downon a piece of paper(before you forget it!!!)
6Definitions An Algorithm A computer program makes use of algorithms. Is a complete step-by-step procedure for solving a problem or accomplishing a task.( Where the algorithm is represented by drawing “Flowcharts” )
7Basic Flow Chart Operations All computer instructions are based on four basic processing patterns:Simple SequenceSelection PatternLoop Pattern
81.Simple SequenceLogic involves executing instructions one statement after another, in the order presented by the program.This is the simplest and most-used pattern.The computer assumes that all instructions are to be executed in this order unless the program presents other instructions.
9Read Names Compare with Criteria Print Eligible Names Basic Operations of Flow Charts (Simple Sequence)Read NamesCompare with CriteriaBasic Operations of Flow Charts (Simple Sequence)Print Eligible Names
102. Selection PatternRequires that the computer make a choice among two or more items.Each choice is based on one of two comparisons a computer can make: true or false (Yes or No).
123. Loop PatternDirects the computer to loop back to a previous statement in the program, repeating the same sequence over again, usually with new data.By looping, the programmer avoids having to repeat the same set of instructions over and over
13Basic Operations of Flow Charts (Loop Pattern) More Names?NoYesCompare with CriteriaPrint Eligible Names
14Uses of Flow ChartsFlowcharts play a vital role in the programming of a problem and are quite helpful in understanding the logic of complicated and lengthy problems.Once the flowchart is drawn, it becomes easy to write the program in any high level language.Often we see how flowcharts are helpful in explaining the program to others.Hence, it is correct to say that a flowchart is a must for the better documentation of a complex program.
15Uses of Flow Charts…….Flow Charts document processes and interrelationships of process stepsFlow Charts identify actual and ideal paths where any product or process flowsFlow Charts are used to identify problems and potential improvementsFlow Charts can be completed on entire processes assemblies with all components, one person or component through a process, combinations of people and machines, transactions following forms or other documents, etc.
16Advantages of Flow Charts Communication: Flowcharts are better way of communicating the logic of a system to all concerned.Effective Analysis: With the help of flowchart, problem can be analysed in more effective way.Proper Documentation: Program flowcharts serve as a good program documentation, which is needed for various purposes.
17Advantages of Flow Charts…. Efficient Coding: The flowcharts act as a guide or blueprint during the systems analysis and program development phase.Proper Debugging: The flowchart helps in debugging process.Efficient Program Maintenance: The maintenance of operating program becomes easy with the help of flowchart. It helps the programmer to put efforts more efficiently on that part.
18Disadvantages of Flow Charts 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.The Essentials of what Is Done can easily be lost in the technical details of how it is done.
19Case Study - 1A certain Company gives each of its sales people $1,000 at the beginning of each month to cover travel, lodging, and food expenses.At the end of the month, a salesperson must total his/her expense receipts. If the amount is less than $1,000 then the difference must be returned to the company.Case Study - 1
20Case Study – 1 (Solution) Here is an algorithm for figuring how much money, if any, must be returned:1-Total the expense receipts for the month.2. Subtract the amount of the expense receipts from 1,000.3. If the remainder is more than 0, return that amount to the company.
26Basic Guidelines for Flow Charting In drawing a proper flowchart, all necessary requirements should be listed out in logical order.The flowchart should be clear, neat and easy to follow. There should not be any room for ambiguity in understanding the flowchart.The usual direction of the flow of a procedure or system is from left to right or top to bottom
27Basic Guidelines for Flow Charting(Cont.) Only one flow line should come out from a process symbol.
28Basic Guidelines for Flow Charting (Cont.) Only one flow line should enter a decision symbol, but two or three flow lines, one for each possible answer, should leave the decision symbol.YN?<=?>
29Basic Guidelines for Flow Charting (Cont.) Only one flow line is used in conjunction with terminal symbol.StopStart
30Basic Guidelines for Flow Charting (Cont.) Write within standard symbols briefly. As necessary, you can use the annotation symbol to describe data or computational steps more clearly.If the flowchart becomes complex, it is better to use connector symbols to reduce the number of flow lines.Avoid the intersection of flow lines if you want to make it more effective and better way of communication.Basic Guidelines for Flow Charting (Cont.)
31Basic Guidelines for Flow Charting (Cont.) Ensure that the flowchart has a logical start and finish.It is useful to test the validity of the flowchart by passing through it with a simple test dataBasic Guidelines for Flow Charting (Cont.)
32Case Study - 2Draw a flowchart to find the sum of first 5 natural numbers.
33Sum = 0StopN = 0N = N + 1?N = 5StartSum = Sum + NNoYesPrint SumNSum112336410515
34Case Study - 3Draw a flowchart to find the largest of three numbers A,B, and C.
35Case Study - 3 Start Read A, B, C ? B > C ? A > B ? A > C Yes NoYesYesNoNoPrint BPrint CPrint CPrint AStop
36Case Study – 3 - (Solutions) Consider four input cases:1. A = ; B = ; C = 32. A = ; B = ; C = 73. A = ; B = ; C = 74. A = ; B = ; C = 3
37Case Study – 3 (Solution 1) StartB = 7Read A, B, CC = 3?B > C?A > B?A > CYesNoYesYesNoNoPrint BPrint CPrint CPrint AStop
38Case Study – 3 (Solution 2) StartB = 6Read A, B, CC = 7?B > C?A > B?A > CYesNoYesYesNoNoPrint BPrint CPrint CPrint AStop
39Case Study – 3 (Solution 3) StartB = 3Read A, B, CC = 7?B > C?A > B?A > CYesNoYesYesNoNoPrint BPrint CPrint CPrint AStop
40Case Study – 3 (Solution 4) StartB = 3Read A, B, CC = 3?B > C?A > B?A > CYesNoYesYesNoNoPrint BPrint CPrint CPrint AStop
41Case Study - 4Draw a flowchart for computing factorial N (N!). Where N! = 1 ´ 2 ´ 3 ´ …… N .Test the program for N = 5
42Case Study – 4 N 5 i Fact 1 1 1 2 2 3 6 4 24 5 120 Start Read N Stopi = 0i = i + 1?i >= NStartFact = Fact * iNoYesPrint FactRead NN5Case Study – 4iFact11122364245120