我的Java代码无法运行,为什么?(只有几行)

Rya*_*an 1 java

我不得不为一个课程项目写这个.编译时我没有遇到任何错误,但是当我尝试执行它时程序不会运行.

我们必须编写一个程序myRandomWalkers.java,它接受两个命令行参数N和T.在每个T独立实验中,模拟N步的随机游走并计算平方距离.输出均方距离(T平方距离的平均值).

我写了以下内容:

public class myRandomWalkers {

    public static void main(String[] args) {

        int n= Integer.parseInt(args[0]);
        int t= Integer.parseInt(args[1]);
        int x= 0; // starting x position
        int y= 0; // starting y position
        int sum = 0; // for calculating mean square distance
        double r;

        int count = 0;
        while (count <= t)
        {
            for (int i=0; i<n; i++) {

                r= Math.random();
                if (r<=0.25) x++;
                else if(r<=0.50) x--;
                else if(r<=0.75) y++;
                else if(r<=1.0) y--;        

                int z = ((x*x) + (y*y));
                sum +=z;
            }
        }

        int average = (sum/t);
        System.out.println ("mean squared distance = " + average);
    }        
}
Run Code Online (Sandbox Code Playgroud)

提前致谢!

ass*_*ias 9

输出将取决于您传递给程序的参数.然而:

  • 如果count > t不执行while循环
  • 如果count <= twhile循环永远不会因为你没有增加计数而结束 - 你可能需要count++;在while循环中添加一个地方.