Download An intro to programming

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
An intro to programming
The basic nitty-gritty that’ll make you scratch your
head and say, “This is programming?”
What is a program?
• A program is
computer coding
that:
• Takes input
• Performs some
calculation on the
input
• Displays output
A program is a function!
• Both take inputs
and give outputs
based on some
“rule”
• Both make
calculations
• Both take
“arguments”
A program is a NOT
function!
• In a function, there is exactly one output for
every input
• Some computer programs will have different
outputs for the same input
• Example: a virtual set of dice
The client
• The user of the program is sometimes
called the client
• The client doesn’t have to know
what’s going on inside the “black box”
to use the program
• Do you know exactly how Microsoft
Word works?
Using outside sources
• Many programs
must consult
outside sources to
perform the
correct
calculations on
their input
Writing programs
• You need:
• Knowledge of a coding
language
• A compiler – translates
your language into
machine code (0s and 1s
the computer can
understand)
What is pseudocode?
• Pseudocode is programmers’ shorthand for
actual code
• It mimics actual programming languages
• There are no “rules” of pseudocode…yet
A simple pseudocode
program
A program that 1) asks the user’s age in human years,
2) calculates the user’s age in dog years, and 3) tells
the user what that age is.
PROGRAM CONTROL STATEMENT 
MISCELLANEOUS OUTPUT 
INPUT 
CALCULATION BASED ON INPUT 
OUTPUT 
PROGRAM CONTROL STATEMENT 
program DogYears;
write “How old are you?”;
let humanAge = INPUT;
let dogAge = humanAge * 7;
write humanAge;
end program;
A few good pseudocode
“rules”
• The name of the
program begins with a
capital letter
• Each line ends in a
semicolon;
• All variable names
begin in lowercase
• We use an asterisk (*)
to represent
multiplication (also use
+, -, /, ^)
program DogYears;
write “How old are
you?”;
let humanAge = INPUT;
let dogAge = humanAge *
7;
write humanAge;
end program;
Write your own pseudocode
program
Write a program in
pseudocode that:
1.
Asks the client what
grade they just finished
2. Calculates how many years
of high school the client
has remaining.
3. Outputs this answer.
A sample program
program Graduation;
write “What grade did you just complete?”;
let lastGrade = INPUT;
let yearsLeft = 12 – lastGrade;
write lastGrade;
end program;
Three parts of programs
• Variables, to store data
• Calculation statements, to handle
input, calculations, and output
• A user interface, which allows the
client to use the program
Variables – primitive types
• Different types depending on the kind of
data
• In Java, some types include:
boolean for true or false
int for integers
char for letters
double for real numbers
string for strings
• These are called primitive types because
they are built into the language
Variables - objects
• In some languages, including Java, users can
define their own variable types, called
objects
• An object is a collection of primitive types
• Example: an object representing a cat might
contain a double variable for its weight, a
string variable for its name, and a boolean
variable for if it’s been neutered or spayed
Variables - objects
• In some languages, including Java, users can
define their own variable types, called
objects
• An object is a collection of primitive types
• Example: a string is an object that holds
many char variables, so a string is any set of
letters: a word or a sentence
Java
•
Java was released in 1995 by
Sun Microsystems.
•
It is based on the language
C++.
•
Java is platform-independent,
object-oriented, and easy to
use on the Internet.
Graduation in Java
import extra.*;
public class Graduation {
Java blather that’s
meaningless for now
public static void main(String args[]) {
Std.out.println( "What grade did you just complete?" );
Write this:
int lastGrade;Make a new variable of type int and call it “lastGrade”
lastGrade = Std.in.readInt();
Assign to “lastGrade” the value that the user inputs…hope it’s an integer
int yearsLeft;Make a new variable of type int and call it “yearsLeft”
yearsLeft = 12 - lastGrade;
Use calculations to assign “lastGrade” a value based on “yearsLeft”
Std.out.println( "You have " + yearsLeft + " years of high
school left.");
}
}
Declaring variables
• We create variables
for our program to use
by declaring them
• Declaring a variable is
like saying, “Computer,
save some space in
RAM for this variable”
• Declaring is done
ONCE before using
the variable
• a variable does NOT
assign a value to the
variable
How to declare a variable
• Write the
variable’s type
• Leave a space
• Write the
variable’s name
(start with a
lowercase letter,
it’s good style)
• Examples:
char faveLetter;
int days;
double foodMass;
string name;
How to assign a value to a
variable
• Write the variable’s
name
• Write a single equals
sign (=)
• Use single quotes for
char, double quotes
for string
• Write the variable’s
value and a semicolon
• Examples:
faveLetter = ‘q’;
days = 42;
foodMass = 33.42;
name = “Matthew”;
Declaring and assigning at
the same time
• You can, if you choose, declare variables
and assign values to them at the same
time
• Write the variable’s type, then its name,
and then its value
• Examples:
char faveLetter = ‘q’;
int days = 42;
double foodMass = 33.42;
string name = “Matthew”;
Input: the easy way
Because input in Java is not easy, we use a package
called extra that assists with input.
•To input using extra:
•Declare a variable
•Assign an input statement as its
value
•The input statement should begin
with Std.in.
readInt() reads an integer
readChar() reads a character
readLine() reads a string
etc…
Output: always easy
• To output, write
Std.out.println();
• In the parens, write a
variable name, a string,
or any combination of
variables and strings
connected with plus (+)
signs
Input and output examples
int days;
Days = Std.in.readInt();
String name;
Std.out.println(“What is your
name?)
Name = Std.in.readLine();
An exercise
Write a program that:
• Calculates the number a miles has traveled
during the last year
• Calculates the car’s average miles/gallon
You should ask the client for the average
number of miles per day s/he drives and
the total gallons of gas s/he uses in one
year
A solution
import extra.*;
public class Miles {
public static void main(String args[]) {
Std.out.println( “How many miles per day do you drive?" );
double milesPerDay;
milesPerDay = Std.in.readDouble();
Std.out.println( “How many gallons of gas did you use last year?” );
int gallonsUsed;
gallonsUsed = Std.in.readDouble();
double totalMiles = milesPerDay * 365;
double avgMPG = totalMiles / gallonsUsed;
Std.out.println( "You drove “ + totalMiles + “ miles last year and
averaged “ + “ avgMPG + “ miles per gallon.”);
}
}
Another exercise
Write a program that:
• Calculates the amount of change you
should receive when you go shopping
and the type of bills you should
receive it in
You should ask the client for the price
of the article and the amount of cash
s/he actually paid