Advertisement
Neonian

Untitled

Nov 27th, 2014
173
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.86 KB | None | 0 0
  1.  
  2. public class Race extends Thread {
  3. public static void main(String[]args){
  4. Tortoise tortoise = new Tortoise();
  5. Hare hare = new Hare();
  6. Thread h = new Thread(hare);
  7. Thread t = new Thread(tortoise);
  8. t.start();
  9. h.start();
  10. }
  11.  
  12. }
  13.  
  14.  
  15. public class Hare implements Runnable{
  16. int randomNum;
  17. int minimum = 0;
  18. int maximum = 9;
  19. int moveNum;
  20. int squarePos = 1;
  21. int maxSquarePos = 70;
  22. String[] moveType = {"Sleep", "Big Hop", "Big Slip", "Small Hop", "Small Slip"};
  23.  
  24. public void run(){
  25.  
  26. while(squarePos < maxSquarePos){
  27. randomNum = minimum + (int)(Math.random()* maximum);
  28. switch (randomNum){
  29. case 0: moveNum = 0;
  30. break;
  31. case 1: moveNum = 0;
  32. break;
  33. case 2: moveNum = 1;
  34. break;
  35. case 3: moveNum = 1;
  36. break;
  37. case 4: moveNum = 2;
  38. break;
  39. case 5: moveNum = 3;
  40. break;
  41. case 6: moveNum = 3;
  42. break;
  43. case 7: moveNum = 3;
  44. break;
  45. case 8: moveNum = 4;
  46. break;
  47. case 9: moveNum = 4;
  48. break;
  49. }
  50.  
  51. switch (moveNum){
  52. case 0: squarePos = squarePos + 0;
  53. break;
  54. case 1: squarePos = squarePos + 9;
  55. break;
  56. case 2: squarePos = squarePos - 12;
  57. break;
  58. case 3: squarePos++;
  59. break;
  60. case 4: squarePos = squarePos - 2;
  61. break;
  62. default: System.out.println("Error");
  63. break;
  64. }
  65. if (squarePos < 1){
  66. squarePos = 1;
  67. }
  68. if (squarePos > 70){
  69. squarePos = 70;
  70. }
  71. System.out.println("Hare: "+moveType[moveNum] + " to square "+squarePos);
  72. if (squarePos == 70){
  73. System.out.println("Hare Wins!");
  74. }
  75. }
  76. }
  77. }
  78.  
  79.  
  80. public class Tortoise implements Runnable {
  81. int randomNum;
  82. int minimum = 0;
  83. int maximum = 9;
  84. int moveNum;
  85. int squarePos = 1;
  86. int maxSquarePos = 70;
  87. String[] moveType = {"Flast Plod", "Slip", "Slow Plod"};
  88. public void run(){
  89.  
  90. while(squarePos < maxSquarePos){
  91. randomNum = minimum + (int)(Math.random()* maximum);
  92. switch (randomNum){
  93. case 0: moveNum = 0;
  94. break;
  95. case 1: moveNum = 0;
  96. break;
  97. case 2: moveNum = 0;
  98. break;
  99. case 3: moveNum = 0;
  100. break;
  101. case 4: moveNum = 0;
  102. break;
  103. case 5: moveNum = 1;
  104. break;
  105. case 6: moveNum = 1;
  106. break;
  107. case 7: moveNum = 2;
  108. break;
  109. case 8: moveNum = 2;
  110. break;
  111. case 9: moveNum = 2;
  112. break;
  113. }
  114. switch (moveNum){
  115. case 0: squarePos = squarePos + 3;
  116. break;
  117. case 1: squarePos = squarePos - 6;
  118. break;
  119. case 2: squarePos++;
  120. break;
  121. default: System.out.println("Error");
  122. break;
  123.  
  124. }
  125. if (squarePos < 1){
  126. squarePos = 1;
  127. }
  128. if (squarePos > 70){
  129. squarePos = 70;
  130. }
  131. System.out.println("Tortoise: "+moveType[moveNum] + " to square "+squarePos);
  132. if (squarePos == 70){
  133. System.out.println("Tortoise Wins!");
  134. }
  135. }
  136. }
  137. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement