Prepared by: Mr. Richard R. Basilio BSECE –T Dip IC
 The programmer’s job can be broken down into six programming steps: 1. Understand the problem 2. Plan the logic 3. Code the program 4. Translate the program into machine language 5. Test the program 6. Put the program into production
 Programmers must first understand what it is the user wants  To understand the problem, you must analyze it  Really understanding the problem may be one of the most difficult aspects of programming  The description of what the user needs may be vague  The user may not even really know what he or she wants  Users who think they know what they want frequently change their minds after seeing sample output
 Programmer plans the steps to the program, deciding what steps to include and how to order them  Example  Planning tour  Planning party  The two most common tools  flowcharts : pictorial representation  Pseudocode : English-like representation
start  Flowcharts  A pictorial representation of get the logical steps it takes to InputNumber solve a problem.  Uses Standardized Symbols calculatedAnswer = InputNumber * 2  Utilize Formula Notation  Typically Read from Top to print Bottom or from Left to Right on calculatedAnswer a Page stop
 Pseudocode  An English-like representation of the logical steps it takes to solve a problem  pseudo – a prefix that means false  Short English-Like Statements  Not Standardized  Proper use of indentation  Example start get InputNumber compute calculatedAnswer as InputNumber times 2 print calculatedAnswer stop
 Writing the program in one of more than 400 programming languages  Pascal, Assembly Language, C, C++, Java…..  Concentrate on the syntax of the language  Exact instruction, symbol, …. ?  Some very experienced programmers  successfully combining the logic planning and the actual instruction writing, or coding of the program, in one step  Writing a cinema scenario
 Objective  Each computer knows only one language, Machine Language.  High-level Languages must be translated into Machine Language  Need to compiler or interpreter  Compiler catches every syntax error.  When writing a program, a programmer might need to recompile the code several times  An executable program is created only when the code is free of syntax errors
 Why does it need to be tested ?  Syntax Errors : by compile  Logical Errors : by test  Test  Executing the program with some sample data  Seeing whether or not the results are logically correct.  being tested with many sets of data carefully  Example Logically incorrect start get InputNumber compute calculatedAnswer as InputNumber times 20 print calculatedAnswer stop
 Once the program is tested adequately, it is ready for the organization to use.  Putting the program into production might mean simply running the program once if it was written to satisfy a user’s request for a special list.
 By wikipedia definition: “A flowchart is a schematic representation of an algorithm or a stepwise process, showing the steps as boxes of various kinds, and their order by connecting these with arrows.” “Flowcharts are used in designing or documenting a process or program.”
Start/Stop Process Input/Output (Terminator) (Rectangle) (Parallelogram) Decision Connector Flowlines Predefined Process (Diamond) (Circle) (Arrows) (Rectangle)
 Input/Output Generalised Input/Output Block; reading data from an input medium or writing data to an output medium. This block Input/Output (Parallelogram) should be used in situation were data is being sent in and out of the processor via some sort of I/O peripheral.
 Process Any process step; an operation or group of operations that cause a change in value, form or Process location of the data. This (Rectangle) can consist of arithmetic or logical operators or even move commands.
 Flow line Sequence of operations and direction of data flow; arrowheads are required if linkage is not left-to-right Flowlines or top-to-bottom. (Arrows) Generally arrowheads are included to avoid confusion.
 Annotation Additional explanation or comments. This block is used for providing additional information to any other block in the flowchart.
 Decision Decision-making or switching type of operation, usually based on a comparison, that Decision determines which of a (Diamond) number of paths should be followed.
 Predefined Process One or more operation defined in more detail elsewhere, such as in a booklet or on a different flowchart, but not on Predefined Process (Rectangle) another part of the flowchart in which this symbol appears.
 Terminal Terminal point in a flowchart – stop, start or break in the line of flow. Start/Stop (Terminator)
 Connectors Entry to or exit from another part of the flowchart; if to or from step is on another page then the page reference should also be stated. Connector (Circle)
 Use a standardized flowcharting template, with clearly recognizable symbols. Follow ANSI recommendations for symbol use.  Do not crowd or clutter the flowchart, ensure proper spacing between symbols.  Number the pages of your flowchart sequentially. Specifically the title of program, the date and the author on each separate page.
 Chart the main line of data flow in the system or program first, then incorporate detail in later flowchart.  Write within symbols avoid using too many words. If necessary use the annotation symbol.  Choose wording to suit the anticipated readers of the flowchart.
 Be legible, neatness counts.  If flowchart becomes complex use connector symbols to reduce the number of flow lines.  Collect incoming and outgoing flow lines so that the number of lines entering or leaving a symbol are minimized.
 Use the flowchart as a guide when coding; change it when necessary to ensure the flowchart reflects the steps implemented in the code.  Cross-reference portion of the flowchart to the source language code.  Be consistent with the level of detail shown in the flowchart. Do not chart every detail, but do not leave out important details.
 Put yourself in the position of the reader; try to anticipate the reader’s problems in understanding the flowchart.
 Sequence  If-then-else (Selection)  While (Repetition)
entrance  The SEQUENCE process is just a series of processes carried out one after the another.  Most programs are represented at the highest level by the sequence , possible with a loop from exit end back to the beginning.
 The If-THEN-ELSE process entrance logically completes the binary decision block by providing two separate processes.  One of the processes will be carried out in the each path from the binary decision.  This is also called exit SELECTION.
 The WHILE process is allow entrance for the representation of a conditional loop structure within a program.  The decision to execute the process is the loop is made prior to the execution of the process. exit  This is also called REPETITION.
Programming process and flowchart

Programming process and flowchart

  • 1.
    Prepared by: Mr. RichardR. Basilio BSECE –T Dip IC
  • 3.
    The programmer’s job can be broken down into six programming steps: 1. Understand the problem 2. Plan the logic 3. Code the program 4. Translate the program into machine language 5. Test the program 6. Put the program into production
  • 4.
     Programmers mustfirst understand what it is the user wants  To understand the problem, you must analyze it  Really understanding the problem may be one of the most difficult aspects of programming  The description of what the user needs may be vague  The user may not even really know what he or she wants  Users who think they know what they want frequently change their minds after seeing sample output
  • 5.
     Programmer plansthe steps to the program, deciding what steps to include and how to order them  Example  Planning tour  Planning party  The two most common tools  flowcharts : pictorial representation  Pseudocode : English-like representation
  • 6.
    start  Flowcharts  A pictorial representation of get the logical steps it takes to InputNumber solve a problem.  Uses Standardized Symbols calculatedAnswer = InputNumber * 2  Utilize Formula Notation  Typically Read from Top to print Bottom or from Left to Right on calculatedAnswer a Page stop
  • 7.
    Pseudocode  An English-like representation of the logical steps it takes to solve a problem  pseudo – a prefix that means false  Short English-Like Statements  Not Standardized  Proper use of indentation  Example start get InputNumber compute calculatedAnswer as InputNumber times 2 print calculatedAnswer stop
  • 8.
    Writing the program in one of more than 400 programming languages  Pascal, Assembly Language, C, C++, Java…..  Concentrate on the syntax of the language  Exact instruction, symbol, …. ?  Some very experienced programmers  successfully combining the logic planning and the actual instruction writing, or coding of the program, in one step  Writing a cinema scenario
  • 9.
    Objective  Each computer knows only one language, Machine Language.  High-level Languages must be translated into Machine Language  Need to compiler or interpreter  Compiler catches every syntax error.  When writing a program, a programmer might need to recompile the code several times  An executable program is created only when the code is free of syntax errors
  • 10.
    Why does it need to be tested ?  Syntax Errors : by compile  Logical Errors : by test  Test  Executing the program with some sample data  Seeing whether or not the results are logically correct.  being tested with many sets of data carefully  Example Logically incorrect start get InputNumber compute calculatedAnswer as InputNumber times 20 print calculatedAnswer stop
  • 11.
    Once the program is tested adequately, it is ready for the organization to use.  Putting the program into production might mean simply running the program once if it was written to satisfy a user’s request for a special list.
  • 13.
    By wikipedia definition: “A flowchart is a schematic representation of an algorithm or a stepwise process, showing the steps as boxes of various kinds, and their order by connecting these with arrows.” “Flowcharts are used in designing or documenting a process or program.”
  • 14.
    Start/Stop Process Input/Output (Terminator) (Rectangle) (Parallelogram) Decision Connector Flowlines Predefined Process (Diamond) (Circle) (Arrows) (Rectangle)
  • 15.
    Input/Output Generalised Input/Output Block; reading data from an input medium or writing data to an output medium. This block Input/Output (Parallelogram) should be used in situation were data is being sent in and out of the processor via some sort of I/O peripheral.
  • 16.
    Process Any process step; an operation or group of operations that cause a change in value, form or Process location of the data. This (Rectangle) can consist of arithmetic or logical operators or even move commands.
  • 17.
    Flow line Sequence of operations and direction of data flow; arrowheads are required if linkage is not left-to-right Flowlines or top-to-bottom. (Arrows) Generally arrowheads are included to avoid confusion.
  • 18.
    Annotation Additional explanation or comments. This block is used for providing additional information to any other block in the flowchart.
  • 19.
    Decision Decision-making or switching type of operation, usually based on a comparison, that Decision determines which of a (Diamond) number of paths should be followed.
  • 20.
    Predefined Process One or more operation defined in more detail elsewhere, such as in a booklet or on a different flowchart, but not on Predefined Process (Rectangle) another part of the flowchart in which this symbol appears.
  • 21.
    Terminal Terminal point in a flowchart – stop, start or break in the line of flow. Start/Stop (Terminator)
  • 22.
    Connectors Entry to or exit from another part of the flowchart; if to or from step is on another page then the page reference should also be stated. Connector (Circle)
  • 25.
    Use a standardized flowcharting template, with clearly recognizable symbols. Follow ANSI recommendations for symbol use.  Do not crowd or clutter the flowchart, ensure proper spacing between symbols.  Number the pages of your flowchart sequentially. Specifically the title of program, the date and the author on each separate page.
  • 26.
    Chart the main line of data flow in the system or program first, then incorporate detail in later flowchart.  Write within symbols avoid using too many words. If necessary use the annotation symbol.  Choose wording to suit the anticipated readers of the flowchart.
  • 27.
    Be legible, neatness counts.  If flowchart becomes complex use connector symbols to reduce the number of flow lines.  Collect incoming and outgoing flow lines so that the number of lines entering or leaving a symbol are minimized.
  • 28.
     Use theflowchart as a guide when coding; change it when necessary to ensure the flowchart reflects the steps implemented in the code.  Cross-reference portion of the flowchart to the source language code.  Be consistent with the level of detail shown in the flowchart. Do not chart every detail, but do not leave out important details.
  • 29.
    Put yourself in the position of the reader; try to anticipate the reader’s problems in understanding the flowchart.
  • 30.
     Sequence  If-then-else(Selection)  While (Repetition)
  • 31.
    entrance  The SEQUENCEprocess is just a series of processes carried out one after the another.  Most programs are represented at the highest level by the sequence , possible with a loop from exit end back to the beginning.
  • 32.
     The If-THEN-ELSEprocess entrance logically completes the binary decision block by providing two separate processes.  One of the processes will be carried out in the each path from the binary decision.  This is also called exit SELECTION.
  • 33.
     The WHILEprocess is allow entrance for the representation of a conditional loop structure within a program.  The decision to execute the process is the loop is made prior to the execution of the process. exit  This is also called REPETITION.