Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Race extends Thread {
- public static void main(String[]args){
- Tortoise tortoise = new Tortoise();
- Hare hare = new Hare();
- Thread h = new Thread(hare);
- Thread t = new Thread(tortoise);
- t.start();
- h.start();
- }
- }
- public class Hare implements Runnable{
- int randomNum;
- int minimum = 0;
- int maximum = 9;
- int moveNum;
- int squarePos = 1;
- int maxSquarePos = 70;
- String[] moveType = {"Sleep", "Big Hop", "Big Slip", "Small Hop", "Small Slip"};
- public void run(){
- while(squarePos < maxSquarePos){
- randomNum = minimum + (int)(Math.random()* maximum);
- switch (randomNum){
- case 0: moveNum = 0;
- break;
- case 1: moveNum = 0;
- break;
- case 2: moveNum = 1;
- break;
- case 3: moveNum = 1;
- break;
- case 4: moveNum = 2;
- break;
- case 5: moveNum = 3;
- break;
- case 6: moveNum = 3;
- break;
- case 7: moveNum = 3;
- break;
- case 8: moveNum = 4;
- break;
- case 9: moveNum = 4;
- break;
- }
- switch (moveNum){
- case 0: squarePos = squarePos + 0;
- break;
- case 1: squarePos = squarePos + 9;
- break;
- case 2: squarePos = squarePos - 12;
- break;
- case 3: squarePos++;
- break;
- case 4: squarePos = squarePos - 2;
- break;
- default: System.out.println("Error");
- break;
- }
- if (squarePos < 1){
- squarePos = 1;
- }
- if (squarePos > 70){
- squarePos = 70;
- }
- System.out.println("Hare: "+moveType[moveNum] + " to square "+squarePos);
- if (squarePos == 70){
- System.out.println("Hare Wins!");
- }
- }
- }
- }
- public class Tortoise implements Runnable {
- int randomNum;
- int minimum = 0;
- int maximum = 9;
- int moveNum;
- int squarePos = 1;
- int maxSquarePos = 70;
- String[] moveType = {"Flast Plod", "Slip", "Slow Plod"};
- public void run(){
- while(squarePos < maxSquarePos){
- randomNum = minimum + (int)(Math.random()* maximum);
- switch (randomNum){
- case 0: moveNum = 0;
- break;
- case 1: moveNum = 0;
- break;
- case 2: moveNum = 0;
- break;
- case 3: moveNum = 0;
- break;
- case 4: moveNum = 0;
- break;
- case 5: moveNum = 1;
- break;
- case 6: moveNum = 1;
- break;
- case 7: moveNum = 2;
- break;
- case 8: moveNum = 2;
- break;
- case 9: moveNum = 2;
- break;
- }
- switch (moveNum){
- case 0: squarePos = squarePos + 3;
- break;
- case 1: squarePos = squarePos - 6;
- break;
- case 2: squarePos++;
- break;
- default: System.out.println("Error");
- break;
- }
- if (squarePos < 1){
- squarePos = 1;
- }
- if (squarePos > 70){
- squarePos = 70;
- }
- System.out.println("Tortoise: "+moveType[moveNum] + " to square "+squarePos);
- if (squarePos == 70){
- System.out.println("Tortoise Wins!");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement