Programming
TBE 540
Farah Fisher
Objectives
 After viewing this presentation, the
learner will be able to…
• Given a task, create pseudocode
• Given pseudocode, create a flowchart
• Define/describe these terms: program,
compile vs. interpret, loop, variable, function,
syntax, code, debug, IF THEN ELSE
What is programming?
 Series of instructions to a computer to
accomplish a task
 Instructions must be written in a way the
computer can understand
 Programming languages are used to
write programs
What is programming?
 Once the code (language) of a program
has been written, it must be executed
(run, started).
 You may need to type the name of the
program to start it, or use a word like
RUN and the name of the program (in
the old days, anyway).
What is programming?
 Some programming languages (like Java
or C++) require the code to be compiled
(translated to binary) before it can be
started.
 Others (like JavaScript) are interpreted,
meaning that each command is
translated separately when the program
is started.
What is a programming
language?
 Set of commands that a computer has been
“taught” to understand
 Languages that look like “machine code” (e.g.,
82A8: jsr r5,@#82AE 82AC: sob r0,8296) are used for…
• Writing games
• Writing application programs (like Excel)
 Other languages look like English (“high level,”
e.g., PRINT “HELLO”)
• Logo
• JavaScript
• And many more
What does programming
look like?
 Here are some examples of an instruction to
print the word HI
• Logo PR [HI]
• JavaScript alert(“HI”);
• FORTRAN PRINT “HI”
• BASIC PRINT “HI”
• COBOL DISPLAY ‘HI’.
• C++ printf(“HI”);
• Pascal WRITELN(‘HI’);
• Assembly XPRNT MESSAGE1
Language MESSAGE1 DC ‘HI’
How do you write a program?
 Decide what steps are needed to complete
the task
 Write the steps in pseudocode (written in
English) or as a flowchart (graphic symbols)
 Translate into the programming language
 Try out the program and “debug” it (fix if
necessary)
What is pseudocode?
 List of steps written in English
 Like the instructions for a recipe
 Must be in the right sequence
• Imagine saying “bake the cake” and then “mix
it up”
Sample Pseudocode
 Task: add two numbers
 Pseudocode:
• Start
• Get two numbers
• Add them
• Print the answer
• End
What does a flowchart look like?
 The pseudocode from the previous slide
would look like this as a flowchart:
Start
Get 2 numbers
Add them
Print answer
End
What are those funny symbols?
 START/END
 INPUT/OUTPUT
 PROCESS
 DECISION
What are those funny symbols?
 START/END
 Used at the beginning
and end of each
flowchart.
What are those funny symbols?
 INPUT/OUTPUT
 Shows when
information/data comes
into a program or is
printed out.
What are those funny symbols?
What are those funny symbols?
 PROCESS
 Used to show
calculations, storing of
data in variables, and
other “processes” that
take place within a
program.
What are those funny symbols?
What are those funny symbols?
 DECISION
 Used to show that the
program must decide
whether something
(usually a comparison
between numbers) is
true or false. YES and
NO (or T/F) branches
are usually shown.
What are those funny symbols?
Y
N
X>7?
Another Sample:
Calculating Age
 Pseudocode:
• Start
• Get year born
• Calculate age
• Print age
• If age > 50 print OLD
• End
Another Sample:
Calculating Age
 Flowchart
• Start
• Get year born
• Calculate age
• Print age
• If age > 50 print OLD
• End
Get yr
Calc age
Print age
Age>50?OLD Y
N
Start
End
Elements of a Program
 All programming languages have certain features in
common. For example:
• Variables
• Commands/Syntax (the way commands are structured)
• Loops
• Decisions
• Functions
 Each programming language has a different set of rules
about these features.
Variables
 Variables are part of almost every program.
 A variable is a “place to put data” and is
usually represented by a letter or a word.
(Think of a variable as a Tupperware
container with a label on it.)
 Variable names cannot contain spaces.
 Some programming languages have very
specific limits on variable names.
Variables
 Usually there are several ways to put
information into a variable.
 The most common way is to use the equal
sign (=).
 X = Y + 7 means take the value of Y, add 7,
and put it into X.
 COUNT=COUNT + 2 means take the current
value of COUNT, add 2 to it, and make it the
new value of COUNT.
Variables
 Sometimes you must specify the type of data
that will be placed in a variable.
 Here are some examples of data types:
• Numeric (numbers of all kinds)
• String (text, “strings of letters”)
• Integer (whole numbers)
• Long (large numbers)
• Boolean (true/false)
Variables
 Variables may be classified as global or local.
 A global variable is one that can be shared by
all parts of a program, including any functions
or sub-programs.
 A local variable is one that is used only within
a certain part of the program, for example, only
in one function or sub-program.
Commands/Syntax
 Programming languages are truly
languages.
 They have rules about grammar,
spelling, punctuation, etc.
 You need to learn the rules of a
programming language, just as you
learned to speak and write English.
Loops
 A loop is a repetition of all or part of the
commands in a program.
 A loop often has a counter (a variable)
and continues to repeat a specified
number of times.
 A loop may also continue until a certain
condition is met (e.g., until the end of a
file or until a number reaches a set limit)
Decisions
 You saw a flowchart symbol for
decisions.
 A program often needs to decide
whether something is true or false in
order to see which way to continue.
 Programs often use IF (or IF THEN or IF
THEN ELSE) statements to show a
decision.
Decisions
 An IF statement always has a condition
to check, often a comparison between a
variable and a number.
 The IF statement also must specify what
to do if the condition/comparison is true.
 These instructions (for “true”) may come
after the word THEN, or they may simply
be listed.
Decisions
 In an IF THEN statement, when the
condition is false, the program simply
ignores the THEN commands and
continues to the next line.
 In an IF THEN ELSE statement,
commands are given for both the true
and false conditions.
Functions
 In most programming languages, small sub-
programs are used to perform some of the
tasks.
 These may be called functions, subroutines,
handlers, or other such terms.
 Functions often have names (e.g., getName
or CALCTAX).
Functions
 A function generally gets information from
the main program, performs some task, and
returns information back to the program.
 Functions follow the same rules of syntax, etc.
as the main program.
 JavaScript code is primarily made of a series
of functions.
Hints for Writing Code
 “Code” means writing the program in the
appropriate language
 Be sure the code is exact (spelling,
capitals/lower case, punctuation, etc).
 Write part of the code, try it, then write
more.
Debugging
 To “debug” means to try a program, then fix
any mistakes.
 Virtually no program works the first time you
run it. There are just too many places to
make errors.
 When you are debugging a program, look for
spelling and punctuation errors.
 Fix one error at a time, then try the program
again.
Self-Check
 A computer program is…
• A series of instructions to accomplish
something
• A TV show
• Written in Egyptian hieroglyphics
• Can be written any way you want to
Self-Check
 A computer program is…
• A series of instructions to accomplish
something
• A TV show
• Written in Egyptian hieroglyphics
• Can be written any way you want to
Self-Check
 To “compile” a program means to…
• Translate it into English
• Translate it into binary code
• Pile up the punch cards used for the program
• Run the program as it was written
Self-Check
 To “compile” a program means to…
• Translate it into English
• Translate it into binary code
• Pile up the punch cards used for the program
• Run the program as it was written
Self-Check
 Pseudocode is…
• The program as it is written in a programming
language
• The results of a program that makes secret
codes
• The logic of a program written in English
• The logic of a program shown in a chart
 Pseudocode is…
• The program as it is written in a programming
language
• The results of a program that makes secret
codes
• The logic of a program written in English
• The logic of a program shown in a chart
Self-Check
Self-Check
 The flowchart symbol to perform a
calculation is…
Self-Check
 The flowchart symbol to perform a
calculation is…
Self-Check
 The flowchart symbol to show a decision
is…
Self-Check
 The flowchart symbol to show a decision
is…
Self-Check
 Look at the flowchart section below. If
the variable X is 5, what will print (K or
1st)?
X > 5?
YN
Print “1st”Print “K”
Self-Check
 Look at the flowchart section below. If
the variable X is 5, what will print (K or
1st)?
X > 5?
YN
Print “1st”Print “K”
K will be printed. The answer to the question “Is X greater than 5?”
is NO, since X is equal to (not greater than) 5.
Self-Check
 Choose the correct
flowchart symbol for each
of these statements.
 AGE>65?
 Calc. Tax
 START
 Print NAME
Self-Check
 Choose the correct
flowchart symbol for each
of these statements.
 AGE>65?
 Calc. Tax
 START
 Print NAME
Self-Check
 A function in a program is…
• Something from trigonometry, like
COSINE
• A sub-program, usually performing one
task
• A way to check the accuracy of a program
(a “function check”)
Self-Check
 A function in a program is…
• Something from trigonometry, like
COSINE
• A sub-program, usually performing one
task
• A way to check the accuracy of a program
(a “function check”)
Self-Check
 A variable in a program is…
• A letter or word that represents a place to
store data
• A decision made within a program
• A small sub-program used to find errors
Self-Check
 A variable in a program is…
• A letter or word that represents a place to
store data
• A decision made within a program
• A small sub-program used to find errors
Challenge
 Try to write pseudocode and create a
flowchart for a program that calculates
the average of three grades and prints
the average.
 The word GOOD should be printed only
if the average is more than 80.
Challenge
 Possible pseudocode
• Start
• Get three grades
• Average them
• Print Average
• Average>80?
• If Yes, print GOOD
• End
Challenge
 Possible flowchart
• Start
• Get three grades
• Average them
• Print Average
• Average>80?
• If Yes, print GOOD
• End
START
END
Get 3 grades
Calc avg
Print avg
Avg>80?GOOD
Y
N

Programming

  • 1.
  • 2.
    Objectives  After viewingthis presentation, the learner will be able to… • Given a task, create pseudocode • Given pseudocode, create a flowchart • Define/describe these terms: program, compile vs. interpret, loop, variable, function, syntax, code, debug, IF THEN ELSE
  • 3.
    What is programming? Series of instructions to a computer to accomplish a task  Instructions must be written in a way the computer can understand  Programming languages are used to write programs
  • 4.
    What is programming? Once the code (language) of a program has been written, it must be executed (run, started).  You may need to type the name of the program to start it, or use a word like RUN and the name of the program (in the old days, anyway).
  • 5.
    What is programming? Some programming languages (like Java or C++) require the code to be compiled (translated to binary) before it can be started.  Others (like JavaScript) are interpreted, meaning that each command is translated separately when the program is started.
  • 6.
    What is aprogramming language?  Set of commands that a computer has been “taught” to understand  Languages that look like “machine code” (e.g., 82A8: jsr r5,@#82AE 82AC: sob r0,8296) are used for… • Writing games • Writing application programs (like Excel)  Other languages look like English (“high level,” e.g., PRINT “HELLO”) • Logo • JavaScript • And many more
  • 7.
    What does programming looklike?  Here are some examples of an instruction to print the word HI • Logo PR [HI] • JavaScript alert(“HI”); • FORTRAN PRINT “HI” • BASIC PRINT “HI” • COBOL DISPLAY ‘HI’. • C++ printf(“HI”); • Pascal WRITELN(‘HI’); • Assembly XPRNT MESSAGE1 Language MESSAGE1 DC ‘HI’
  • 8.
    How do youwrite a program?  Decide what steps are needed to complete the task  Write the steps in pseudocode (written in English) or as a flowchart (graphic symbols)  Translate into the programming language  Try out the program and “debug” it (fix if necessary)
  • 9.
    What is pseudocode? List of steps written in English  Like the instructions for a recipe  Must be in the right sequence • Imagine saying “bake the cake” and then “mix it up”
  • 10.
    Sample Pseudocode  Task:add two numbers  Pseudocode: • Start • Get two numbers • Add them • Print the answer • End
  • 11.
    What does aflowchart look like?  The pseudocode from the previous slide would look like this as a flowchart: Start Get 2 numbers Add them Print answer End
  • 12.
    What are thosefunny symbols?  START/END  INPUT/OUTPUT  PROCESS  DECISION
  • 13.
    What are thosefunny symbols?  START/END  Used at the beginning and end of each flowchart.
  • 14.
    What are thosefunny symbols?  INPUT/OUTPUT  Shows when information/data comes into a program or is printed out. What are those funny symbols?
  • 15.
    What are thosefunny symbols?  PROCESS  Used to show calculations, storing of data in variables, and other “processes” that take place within a program. What are those funny symbols?
  • 16.
    What are thosefunny symbols?  DECISION  Used to show that the program must decide whether something (usually a comparison between numbers) is true or false. YES and NO (or T/F) branches are usually shown. What are those funny symbols? Y N X>7?
  • 17.
    Another Sample: Calculating Age Pseudocode: • Start • Get year born • Calculate age • Print age • If age > 50 print OLD • End
  • 18.
    Another Sample: Calculating Age Flowchart • Start • Get year born • Calculate age • Print age • If age > 50 print OLD • End Get yr Calc age Print age Age>50?OLD Y N Start End
  • 19.
    Elements of aProgram  All programming languages have certain features in common. For example: • Variables • Commands/Syntax (the way commands are structured) • Loops • Decisions • Functions  Each programming language has a different set of rules about these features.
  • 20.
    Variables  Variables arepart of almost every program.  A variable is a “place to put data” and is usually represented by a letter or a word. (Think of a variable as a Tupperware container with a label on it.)  Variable names cannot contain spaces.  Some programming languages have very specific limits on variable names.
  • 21.
    Variables  Usually thereare several ways to put information into a variable.  The most common way is to use the equal sign (=).  X = Y + 7 means take the value of Y, add 7, and put it into X.  COUNT=COUNT + 2 means take the current value of COUNT, add 2 to it, and make it the new value of COUNT.
  • 22.
    Variables  Sometimes youmust specify the type of data that will be placed in a variable.  Here are some examples of data types: • Numeric (numbers of all kinds) • String (text, “strings of letters”) • Integer (whole numbers) • Long (large numbers) • Boolean (true/false)
  • 23.
    Variables  Variables maybe classified as global or local.  A global variable is one that can be shared by all parts of a program, including any functions or sub-programs.  A local variable is one that is used only within a certain part of the program, for example, only in one function or sub-program.
  • 24.
    Commands/Syntax  Programming languagesare truly languages.  They have rules about grammar, spelling, punctuation, etc.  You need to learn the rules of a programming language, just as you learned to speak and write English.
  • 25.
    Loops  A loopis a repetition of all or part of the commands in a program.  A loop often has a counter (a variable) and continues to repeat a specified number of times.  A loop may also continue until a certain condition is met (e.g., until the end of a file or until a number reaches a set limit)
  • 26.
    Decisions  You sawa flowchart symbol for decisions.  A program often needs to decide whether something is true or false in order to see which way to continue.  Programs often use IF (or IF THEN or IF THEN ELSE) statements to show a decision.
  • 27.
    Decisions  An IFstatement always has a condition to check, often a comparison between a variable and a number.  The IF statement also must specify what to do if the condition/comparison is true.  These instructions (for “true”) may come after the word THEN, or they may simply be listed.
  • 28.
    Decisions  In anIF THEN statement, when the condition is false, the program simply ignores the THEN commands and continues to the next line.  In an IF THEN ELSE statement, commands are given for both the true and false conditions.
  • 29.
    Functions  In mostprogramming languages, small sub- programs are used to perform some of the tasks.  These may be called functions, subroutines, handlers, or other such terms.  Functions often have names (e.g., getName or CALCTAX).
  • 30.
    Functions  A functiongenerally gets information from the main program, performs some task, and returns information back to the program.  Functions follow the same rules of syntax, etc. as the main program.  JavaScript code is primarily made of a series of functions.
  • 31.
    Hints for WritingCode  “Code” means writing the program in the appropriate language  Be sure the code is exact (spelling, capitals/lower case, punctuation, etc).  Write part of the code, try it, then write more.
  • 32.
    Debugging  To “debug”means to try a program, then fix any mistakes.  Virtually no program works the first time you run it. There are just too many places to make errors.  When you are debugging a program, look for spelling and punctuation errors.  Fix one error at a time, then try the program again.
  • 33.
    Self-Check  A computerprogram is… • A series of instructions to accomplish something • A TV show • Written in Egyptian hieroglyphics • Can be written any way you want to
  • 34.
    Self-Check  A computerprogram is… • A series of instructions to accomplish something • A TV show • Written in Egyptian hieroglyphics • Can be written any way you want to
  • 35.
    Self-Check  To “compile”a program means to… • Translate it into English • Translate it into binary code • Pile up the punch cards used for the program • Run the program as it was written
  • 36.
    Self-Check  To “compile”a program means to… • Translate it into English • Translate it into binary code • Pile up the punch cards used for the program • Run the program as it was written
  • 37.
    Self-Check  Pseudocode is… •The program as it is written in a programming language • The results of a program that makes secret codes • The logic of a program written in English • The logic of a program shown in a chart
  • 38.
     Pseudocode is… •The program as it is written in a programming language • The results of a program that makes secret codes • The logic of a program written in English • The logic of a program shown in a chart Self-Check
  • 39.
    Self-Check  The flowchartsymbol to perform a calculation is…
  • 40.
    Self-Check  The flowchartsymbol to perform a calculation is…
  • 41.
    Self-Check  The flowchartsymbol to show a decision is…
  • 42.
    Self-Check  The flowchartsymbol to show a decision is…
  • 43.
    Self-Check  Look atthe flowchart section below. If the variable X is 5, what will print (K or 1st)? X > 5? YN Print “1st”Print “K”
  • 44.
    Self-Check  Look atthe flowchart section below. If the variable X is 5, what will print (K or 1st)? X > 5? YN Print “1st”Print “K” K will be printed. The answer to the question “Is X greater than 5?” is NO, since X is equal to (not greater than) 5.
  • 45.
    Self-Check  Choose thecorrect flowchart symbol for each of these statements.  AGE>65?  Calc. Tax  START  Print NAME
  • 46.
    Self-Check  Choose thecorrect flowchart symbol for each of these statements.  AGE>65?  Calc. Tax  START  Print NAME
  • 47.
    Self-Check  A functionin a program is… • Something from trigonometry, like COSINE • A sub-program, usually performing one task • A way to check the accuracy of a program (a “function check”)
  • 48.
    Self-Check  A functionin a program is… • Something from trigonometry, like COSINE • A sub-program, usually performing one task • A way to check the accuracy of a program (a “function check”)
  • 49.
    Self-Check  A variablein a program is… • A letter or word that represents a place to store data • A decision made within a program • A small sub-program used to find errors
  • 50.
    Self-Check  A variablein a program is… • A letter or word that represents a place to store data • A decision made within a program • A small sub-program used to find errors
  • 51.
    Challenge  Try towrite pseudocode and create a flowchart for a program that calculates the average of three grades and prints the average.  The word GOOD should be printed only if the average is more than 80.
  • 52.
    Challenge  Possible pseudocode •Start • Get three grades • Average them • Print Average • Average>80? • If Yes, print GOOD • End
  • 53.
    Challenge  Possible flowchart •Start • Get three grades • Average them • Print Average • Average>80? • If Yes, print GOOD • End START END Get 3 grades Calc avg Print avg Avg>80?GOOD Y N