Frog.java:
public class Frog {
private int myCoin; // current coin toss (0 = heads, 1 = tails)
private int myHome; // number of times frog visits 0
private int myMax; // most positive position so far
private int myMin; // most negative position so far
private int myPosition; // current position
private int mySteps; // total hops so far
// constructor
public Frog() {
myCoin = 0;
myHome = 0;
myMax = 0;
myMin = 0;
myPosition = 0;
mySteps = 0;
}
//accessor methods
public int GetHome() {
return myHome;
}
public int GetMax() {
return myMax;
}
public int GetMin() {
return myMin;
}
public int GetPosition() {
return myPosition;
}
public int GetSteps() {
return mySteps;
}
//modifier methods
public void Hop() {
myCoin = (int)(2*Math.random()); // Flip the coin
if (myCoin == 0) // Update the position
myPosition = myPosition + 1;
else
myPosition = myPosition - 1;
mySteps = mySteps + 1; // Update the number of steps
if (myPosition == 0) // Update home visits
myHome = myHome + 1;
if (myPosition > myMax) // New position biggest so far
myMax = myPosition;
if (myPosition < myMin) // New position smallest so far
myMin = myPosition;
}
}