用java模拟一个龟兔赛跑的应用程序
时间: 2023-07-16 22:13:14 浏览: 120
java龟兔赛跑模拟
5星 · 资源好评率100%
好的,以下是一个简单的龟兔赛跑的Java应用程序,希望能帮到你:
```java
import java.util.Random;
public class TurtleRabbitRace {
public static void main(String[] args) {
int raceLength = 100; // 赛道长度
int turtlePosition = 0; // 龟的位置
int rabbitPosition = 0; // 兔的位置
Random random = new Random(); // 随机数生成器
while (turtlePosition < raceLength && rabbitPosition < raceLength) {
// 龟移动
int turtleMove = random.nextInt(3) + 1; // 随机生成1-3的整数
turtlePosition += turtleMove;
// 兔移动
int rabbitMove = random.nextInt(5) + 1; // 随机生成1-5的整数
if (rabbitMove <= 2) { // 兔睡觉
// do nothing
} else if (rabbitMove <= 4) { // 兔大跳
rabbitPosition += 9;
} else { // 兔小跳
rabbitPosition += 1;
}
// 打印当前位置
System.out.println("Turtle: " + turtlePosition + ", Rabbit: " + rabbitPosition);
}
// 判断胜负
if (turtlePosition >= raceLength && rabbitPosition >= raceLength) {
System.out.println("It's a tie!");
} else if (turtlePosition >= raceLength) {
System.out.println("Turtle wins!");
} else {
System.out.println("Rabbit wins!");
}
}
}
```
这个应用程序使用了一个`while`循环来模拟龟兔赛跑的过程。在每次循环中,龟和兔都会移动一定的距离,并且打印出它们当前的位置。
龟每次移动1-3个单位,兔有三种移动方式:睡觉不动、大跳9个单位、小跳1个单位。这些移动方式是根据随机数生成器随机生成的。
当龟或兔的位置到达赛道的终点时,循环结束,根据谁先到达终点来判断胜负。如果两个都到达了终点,则是平局。
这只是一个简单的示例,你可以根据需要进行修改和扩展。
阅读全文