我正在编写一个采用命令行参数的二维随机游走。它应该估计随机游走器到达以起点为中心的 2N×2N 正方形的边界需要多长时间。
到目前为止我得到的是:
public class RandomWalk
{
public static void main(String[] args)
{
int N = Integer.parseInt(args[0]);
int reps = Integer.parseInt(args[1]);
int x = 0;
int y = 0;
double r;
int steps = 0;
while (x*x + y*y <= N*N) {
steps++;
r = Math.random();
if (r <= 0.25) x++;
else if (r <= 0.50) x--;
else if (r <= 0.75) y++;
else if (r <= 1.00) y--;
}
System.out.println(steps);
}
}
只是想检查一下你们是否认为我做错了。