ITK 168 Decisions
-
Upload
tamekah-hardin -
Category
Documents
-
view
25 -
download
0
description
Transcript of ITK 168 Decisions
ITK 168 Decisions
Dr. Doug Twitchell
September 20, 2005
IF
What if I want the robot to pick a thing up if there’s one there, but not pick a thing up if there isn’t?
if
if(bob.canPickThing()){bob.pickThing();
}
if(<<test>>){<<list of statements>>
}
if
if(bob.canPickThing()){bob.pickThing();
}
if(<<test>>){<<list of statements>>
}
boolean statement
if
if(bob.canPickThing()){bob.pickThing();
}
if(<<test>>){<<list of statements>>
}
boolean statement
true or false
if Flowchart
if
Can I use this to see if there is a wall in front of me?
if
if(bob.frontIsClear()){bob.move();
}bob.turnLeft();bob.move();
<<previous statements>>if(<<test>>){
<<list of statements>>}<<continue with following>>
if
What if I want it to left if the front isn’t clear?
if
if(!bob.frontIsClear()){bob.turnLeft();
}bob.move();
<<previous statements>>if(<<test>>){
<<list of statements>>}<<continue with following>>
if
Can I check to see if the robot is on a certain street?
if
if(bob.getStreet == 1){bob.move();
}
if(<<test>>){<<list of statements>>
}
== equal> greater than< less than>= g.t. or equal<= l.t. or equal!= not equal
while
what if I want the robot to pick up all of the things in a row
while
while(bob.canPickThing()){bob.pickThing();bob.move();
}
while(<<test>>){<<list of statements>>
}
while
while(bob.canPickThing()){bob.pickThing();bob.move
}
while(<<test>>){<<list of statements>>
}
boolean statement
true or false
while Flowchart
while
How about moving the robot until it gets to avenue 50?
while
while(bob.getAvenue() < 50){bob.move
}
while(<<test>>){<<list of statements>>
}
if…else
What about when want to turn right if wall is in front and turn left otherwise?
if…else
if(bob.frontIsClear()){bob.turnLeft();
} else {bob.turnRight();
}bob.move();
if(<<test>>){<<list of statements>>
}
boolean statement
true or false
if…else Flowchart
Example
How can we change the street cleaning robots to make it work better with if and/or while statements?