gpt4 book ai didi

java - 如何创建包含 100 个随机整数的一维数组并求平均值、标准差和方差?

转载 作者:行者123 更新时间:2023-11-30 01:58:21 25 4
gpt4 key购买 nike

我尝试过这样做,但我认为我做错了什么。我是一名初级程序员,我真的需要这方面的帮助。我觉得我已经接近答案了,但我不确定我的程序出了什么问题。我尝试通过对方差结果求平方根来获得标准差来检查我的答案,但它们不匹配。

    import java.util.Random;
public class Lab6 {

public static void main(String[] args) {
System.out.println("The Average Value is:"+avgValue());
System.out.println("The Standard Deviation is:"+stdDev());
System.out.println("The Variance is:"+Var());
}

public static int randomFill(){

Random rand = new Random();
int randomNum = rand.nextInt();
return randomNum;
}

private static int[] anArray;

public static int[] list() {
anArray = new int[100];
for(int i=0;i<anArray.length;i++)
{
anArray[i] = randomFill();
}
return anArray;
}

private static int sum;

public static int avgValue() {
int []a = list();
for (int e:a)
{
sum +=e;
}
int n=100;
sum=sum/n;
return sum;
}

private static int pwr;

public static int stdDev() {
int []b = list();
int dev=0;
for (int e:b)
{
dev=(e-sum)+dev;
}
pwr=(dev*dev)/99;
double root=Math.sqrt(pwr);
return pwr;
}

public static int Var() {
int c= pwr;
int opp=c*c;
return opp;
}

}

最佳答案

自从我做统计以来已经有一段时间了,但我可以指出你的 avgValue() 方法和你的 stdDev() 正在针对两个不同的 int 数组进行计算。当你调用 list() 时,你每次都会得到一个不同的整数数组并覆盖 anArray。

我建议在 main 方法中创建数组,然后将其作为参数传递给其他方法。如果你想走你现在的路线,改变“int []b = list();”到“int []b = anArray;”你应该没问题。

总的来说,我认为您接下来可能想尝试研究方法参数和变量范围来改进您的 Java。继续开卡车;它变得更容易。

关于java - 如何创建包含 100 个随机整数的一维数组并求平均值、标准差和方差?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53676568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com