Programming Process - PowerPoint PPT Presentation

About This Presentation
Title:

Programming Process

Description:

Flowchart & Pseudocode Flowcharts (pictorial representations) and pseudocode ... Foundations of Algorithms Author: user Last modified by: piano Created Date: – PowerPoint PPT presentation

Number of Views:121
Avg rating:3.0/5.0
Slides: 40
Provided by: csBuapMx
Category:

less

Transcript and Presenter's Notes

Title: Programming Process


1
Programming Process
  • The programmers job can be broken down into six
    programming steps
  • Understand the problem
  • Plan the logic
  • Code the program
  • Translate the program into machine language
  • Test the program
  • Put the program into production

2
Understand the Problem
  • 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

3
Understand the Problem
  • Analysis Really Understanding
  • Example
  • To invite some people, I need the list of people
    who work during five more years.
  • Definite problem or ambiguous problem ?

4
Understand the Problem
  • Analysis Really Understanding
  • Example
  • To invite some people, I need the list of people
    who work during five more years.
  • Definite problem or ambiguous problem ?
  • Ambiguous problem
  • Full-time or part-time worker or both of them ?
  • Regular employee or contract employee ?
  • Which type of list ?
  • A good programmer is often part counselor, part
    detective

5
Programming Process
  • The programmers job can be broken down into six
    programming steps
  • Understand the problem
  • Plan the logic
  • Code the program
  • Translate the program into machine language
  • Test the program
  • Put the program into production

6
Plan the Logic
  • 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

7
Plan the Logic
  • Flowcharts
  • A pictorial representation of the logical steps
    it takes to solve a problem.
  • Uses Standardized Symbols
  • Utilize Formula Notation
  • Typically Read from Top to Bottom or from
  • Left to Right on a Page

8
Plan the Logic
  • Basic flowchart symbols

Process (Rectangle)
Start/Stop (Terminator)
Input/Output (Parallelogram)
Decision (Diamond)
Connector (Circle)
Flowlines (Arrows)
Predefined Process (Rectangle)
9
Sequence, Selection, Repetition
sequence
selection
repetition
entrance
entrance
entrance
exit
10
Plan the Logic
  • 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
11
Programming Process
  • The programmers job can be broken down into six
    programming steps
  • Understand the problem
  • Plan the logic
  • Code the program
  • Translate the program into machine language
  • Test the program
  • Put the program into production

12
Code the program
  • Writing the program in one of more than 400
    programming languages
  • Pascal, Fortran, 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 post card
  • Writing a cinema scenario

13
Code the program
  • Which is harder Planning the Logic or Coding the
    Program?
  • Example
  • Planning the logic Planning mystery novel
  • Coding the program Writing English or Spanish
    based on the original scenario.
  • Who gets more annual salary ?

14
Programming Process
  • The programmers job can be broken down into
    six programming steps
  • Understand the problem
  • Plan the logic
  • Code the program
  • Translate the program into machine language
  • Test the program
  • Put the program into production

15
Translate the Program
  • 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

16
Translate the Program
  • Creating an executable program

17
Programming Process
  • The programmers job can be broken down into six
    programming steps
  • Understand the problem
  • Plan the logic
  • Code the program
  • Translate the program into machine language
  • Test the program
  • Put the program into production

18
Test the Program
  • 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

start get InputNumber compute
calculatedAnswer as InputNumber times 20
print calculatedAnswer stop
19
Programming Process
  • The programmers job can be broken down into six
    programming steps
  • Understand the problem
  • Plan the logic
  • Code the program
  • Translate the program into machine language
  • Test the program
  • Put the program into production

20
Put the program into the production
  • 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 users request for a special list.

21
Flowchart Pseudocode
  • Flowcharts (pictorial representations) and
    pseudocode (English-like representations) are
    used by programmers to plan the logical steps for
    solving a programming problem
  • Some professional programmers prefer writing
    pseudocode to drawing flowcharts, because using
    pseudocode is more similar to writing final
    statements in programming language

22
Flowchart Pseudocode
  • Almost every program involves the steps of input,
    processing, and output, necessitating some
    graphical way to separate them
  • Arithmetic operation statements are examples of
    processing in a flowchart, where you use a
    rectangle as the processing symbol containing a
    processing statement

23
Flowchart Pseudocode
  • To represent an output statement, you use the
    parallelogram, which is also the same symbol used
    for input statements

24
Flowchart Pseudocode
  • In flowcharts
  • Arrows, or flowlines, connect and show the
    appropriate sequence of steps
  • A terminal symbol, or start/stop symbol, should
    be included at each end
  • Often, start or begin is used as the first
    terminal symbol and end or stop is used in
    the other
  • The standard terminal symbol is shaped like a
    racetrack often called a lozenge, because it
    resembles the shape of a medicated candy lozenge
    you might use to soothe a sore throat

Flowlines (Arrows)
Start/Stop (Terminator)
25
Flowchart Pseudocode
  • Complete flowchart for the program that doubles a
    number, and the pseudocode for the same problem

start get InputNumber compute
calculatedAnswer as InputNumber times 2
print calculatedAnswer stop
26
Naming Variables
  • Variables
  • memory locations, whose contents can vary or
    differ over time.
  • reasonable and descriptive variable names
  • Example
  • InputNumber
  • caluculatedAnswer

start get InputNumber compute
calculatedAnswer as InputNumber times 2 print
calculatedAnswer stop
27
Naming Variables
  • Naming Rules
  • Every programming language has its own set of
    rules for naming variables.
  • most languages allow both letters and digits
    a,b,c, 1,2,3
  • some languages allow hyphens and/or underscores
    - _
  • some allow dollar signs or other special
    characters , , _at_
  • some allow for foreign characters Japanese,
    Spanish
  • different languages put different limits on
    lengths
  • some languages are case sensitive, others are not
    name, Name
  • in general, variable names may not begin with a
    digit name1

28
Naming Variables
  • Textbook Conventions two rules
  • (1) Variable names must be one word
  • can contain letters, digits, hyphens,
    underscores, with the exception of spaces.
  • (2) Variable names should have some appropriate
    meaning
  • Undesirable G, u84, fred, mike, richard, pink,
  • Desirable rate, name, age, count, score,
    index, lastName

employeeLastName, 5employeeLastName,
employeeLast, empLast, emlstnam,
lastNameofTheEmployeeInQuestion, last name (x),
employeelastname,
29
Naming Variables
  • Assignment values to variables
  • Whatever operation is performed to the right of
    the equal sign results in a value that is placed
    in the memory location to the left of the equal
    sign.

compute calculatedAnswer as InputNumber times
2 is the same as calculatedAnswer InputNumber
2
30
Naming Variables
  • Constant
  • A memory location, similar to a variable, except
    its value never changes during a program.
  • taxRate .0825
  • Pi 3.141592
  • Variables
  • memory locations, whose contents can vary or
    differ over time.

31
Naming Variables
  • Data Types two basic types
  • Character
  • Character a b c d e
  • Character string Richard Michale
  • Numeric
  • Integer , -3, -2, -1, 0, 1, 2, 3, .
  • Floating-Point , -2.0, -1.5, -1, -0.5, 0, 0.5,
    1.0, .

32
Ending a Program
  • Infinite loop

start get InputNumber compute
calculatedAnswer as InputNumber times 2
print calculatedAnswer get
InputNumber compute calculatedAnswer as
InputNumber times 2 print
calculatedAnswer get InputNumber compute
calculatedAnswer as InputNumber times 2
print calculatedAnswer stop
start
get InputNumber
calculatedAnswerInputNumber2
Print calculatedAnswer
33
Ending a Program
  • An infinite loop is a repeating flow of logic
    with no end
  • To end the program,
  • set a predetermined value for inputNumber that
    means Stop the program!
  • The program can then test any incoming value for
    inputNumber and, if it is a 0, stop the program
  • Testing a value is also called making a decision
  • Represented in flowchart by diamond shape called
    a decision symbol

34
Ending a Program
  • Decision symbol

start
start
get InputNumber
get InputNumber
Yes
inputNumber 0 ?
stop
No
calculatedAnswerInputNumber2
calculatedAnswerInputNumber2
Print calculatedAnswer
Print calculatedAnswer
35
Ending a Program
  • Dummy value
  • A pre-selected value that stops the execution of
    a program is often called a dummy value since it
    does not represent real data, but just a signal
    to stop
  • Sometimes, such a value is called a sentinel
    value because it represents an entry or exit
    point, like a sentinel who guards a fortress

36
Using a Connector
  • If a flowchart has six processing steps and a
    page provides room for only three, you might
    represent the logic as shown below
  • On-page connector symbol
  • Off-page connector symbol

37
Evolution of Programming Technique
  • Currently, there are two major techniques used to
    develop programs and their procedures
  • Procedural programming focuses on the procedures
    that programmers create
  • Object-oriented programming, focuses on objects,
    or things, and describes their features, or
    attributes, and their behaviors

38
Summary
  • A programmers job involves six steps
  • Understanding the problem
  • Planning the logic
  • Coding the problem
  • Translating the program into machine language
  • Testing the program
  • Putting the program into production
  • When programmers plan the logic for a solution to
    a programming problem, they often use flowcharts
    or pseudocode

39
Summary
  • Testing a value involves making a decision
  • Most programming languages use the equal sign to
    assign values to variables
  • Procedural and object-oriented programmers
    approach program problems differently
Write a Comment
User Comments (0)
About PowerShow.com