George Boole
and the Truth Tables
Test Corrections & Makeup
Tuesday
(Today)
Wednesday
Thursday
Friday
Corrections
Corrections
Corrections
Makeup Test
Corrections
Pass Makeup Test?
Grade goes up to 70
Get an A on Makeup Test?
Get half point back!
Makeup test will not cause grade to go down
Must do corrections in tutorials in order to take makeup test
Elementary Algebra
Operators
Addition +
Subtraction -
Multiplication *
Division /
Equality =
Values
Integers (… -2, -1, 0, 1, 2 …),
Real Numbers,
Irrational Numbers…
Boolean Algebra
Operators
AND &&
OR ||
NOT !
NOT EQUALS !=
EQUALS ==
Values
true
false
Expressions
true && false
A || B
var == false
AND
If A and B are both true, then A && B evaluates to true,
otherwise it is false.
A | B | A && B |
false | false | false |
false | true | false |
true | false | false |
true | true | true |
A 🡪 it is raining
B 🡪 it is Monday
if A && B then wear a green hat
Truth Table
Enumerating Boolean Values
How many different values can you store in 1 Boolean variable?
Enumerating Boolean Values
A |
false |
true |
How many different values can you store in 1 Boolean variable?
Enumerating Boolean Values
How many different values can you store in 2 Boolean variables?
Enumerating Boolean Values
A | B |
false | false |
false | true |
How many different values can you store in 2 Boolean variables?
When A is false, B could be false or true.
When A is true, B could be false or true
A | B |
true | false |
true | true |
Enumerating Boolean Values
A | B |
false | false |
true | |
true | false |
true |
How many different values can you store in 2 Boolean variables?
A |
false |
true |
A | B |
false | false |
false | true |
true | false |
true | true |
Enumerating Boolean Values
A | B |
false | false |
true | |
true | false |
true |
How many different values can you store in 3 Boolean variables?
A | B |
false | false |
false | true |
true | false |
true | true |
A | B | C |
false | false | false |
true | ||
true | false | |
true | ||
true | false | false |
true | ||
true | false | |
true |
A | B | C |
false | false | false |
false | false | true |
false | true | false |
false | true | true |
true | false | false |
true | false | true |
true | true | false |
true | true | true |
OR
If either A or B is true, then A || B evaluates to true,
otherwise it is false.
A | B | A || B |
false | false | false |
false | true | true |
true | false | true |
true | true | true |
A 🡪 it is raining
B 🡪 it is Monday
if A || B then wear a green hat
Equals
If A is the same as B, then A == B evaluates to true,
otherwise it is false.
If A is not the same as B, then A != B evaluates to true,
otherwise it is false.
A | B | A == B | A != B |
false | false | true | false |
false | true | false | true |
true | false | false | true |
true | true | true | false |
AND and OR
A | B | A && B | A || B |
false | false | false | false |
false | true | false | true |
true | false | false | true |
true | true | true | true |
Not
If A is true, then !A evaluates to false,
otherwise it is true.
A | !A |
false | true |
true | false |
Boolean Algebra
A | B | A && B | A || B | A == B | A != B | !A |
false | false | false | false | true | false | true |
false | true | false | true | false | true | false |
true | false | false | true | false | true | |
true | true | true | true | true | false | |
&& Both values are true (TT)
|| Either value is true (FT, TF, TT)
== Both values are the same (TT, FF)
Boolean Operators and if-statements
if( a )
{
if( b )
{
}
}
if( a && b )
{
}
Boolean Operators and if-statements
if( a )
{
}
else if( b )
{
}
if( a || b )
{
}
Boolean Operators and if-statements
if( a )
{
}
else
{
}
if( !a )
{
}
FUNSHEET
Mayflower, detecting a key hold
What does this do?
if( Mayflower.isKeyDown(Keyboard.KEY_SPACE) )
{
actor.move(1);
}
Mayflower, detecting a key hold
What does this do?
if( Mayflower.isKeyDown(Keyboard.KEY_SPACE) )
{
actor.move(1);
}
wasKeyDown?
if( Mayflower.wasKeyDown(Keyboard.KEY_SPACE) )
{
actor.move(1);
}
Write the condition for the if-statement so that it moves the actor 1 pixel only if the SPACE key was pressed for the first time this frame.
if( ??? )
{
actor.move(1);
}
Mayflower.isKeyDown( Keyboard.KEY_SPACE)
Mayflower.wasKeyDown( Keyboard.KEY_SPACE)
&& || ! == !=
Only moves in this frame
Funtivity!
If the key is pressed now and it wasn’t pressed last update, then…
if( Mayflower.isKeyDown(Keyboard.KEY_SPACE) &&
!Mayflower.wasKeyDown(Keyboard.KEY_SPACE)
)
{
actor.move(1);
}
Mayflower Collision Checking
isTouching( Blah.class )
This method can be called inside the act method of an Actor.
It evaluates to true if that actor is touching any actor of the specified type (Blah)
public class Sonic
{
public void act()
{
if( isTouching(Ring.class) )
{
score++;
}
}
}
Sonic
Ring
Lab 2.1 Frogger
Do you have an account on myap.collegeboard.org?
Have you clicked the �“Sign up for Test” button?
Deadline: October 4th!