嘿伙计们,我无法弄清楚如何计算Java中数组的标准占卜.正如你所看到的,我已经计算了均值,我知道最后我将不得不除以样本大小减1(n-1)并将该数字平方.我遇到的问题是如何取每个数字并计算它与平均值的距离,然后将该数字平方.我知道我可以单独从数据集中做每个数字,但必须有一个更简单的方法.任何帮助将不胜感激,这是我的代码.
public class CalculateArray
{
public static void main(String[] args)
{
int [] numbers = new int[]{1,2,3,4,5,6,7,8,9};
int sum = 0;
int max = 0;
int min = numbers[0];
double sd = 0;
for(int i=0; i<numbers.length; i++)
{
sum = sum + numbers[i];
}
double average = sum / numbers.length;
System.out.println("Average value is : " + average);
for(int i=0; i<numbers.length; i++)
{
if(numbers[i] > max)
{
max = numbers[i];
}
}
System.out.println("max number is : " + max);
for(int i=0; …Run Code Online (Sandbox Code Playgroud) 嘿伙计们寻找我的ArrayTester类的一些帮助......数组应该1.创建一个20元素的int数组,并用20到65(包括两者)范围内的随机元素填充它. - 我相信我已经这样做了.
2.使用种子为2621的java.util.Random类为数据生成可重复的输出. - 我也已经这样做了
3.测试者类应该测试这些方法中的每一个(平均值,中位数,模式,最大值,最小值,标准占卜) - 这是我遇到麻烦的地方,我已经有了平均值,模式,最大值,最小值的代码和标准占卜..我遇到的问题是中位数,因为我想在我的主类调用它之前在测试器类中对我的数组进行排序.
有没有办法做到这一点?
这是我的代码:
public class ArrayTest
{
public static void main(String [] args)
{
int[] numbers;
numbers = new int [20];
Random rand = new Random(2621);
int maxRange = 65;
int minRange = 20;
for(int i=0; i<20; i++)
{
numbers[i] = rand.nextInt(maxRange - minRange + 1) + minRange;
//checks to see if printing out ocrrectly
System.out.println(numbers[i]);
}
}
}
Run Code Online (Sandbox Code Playgroud)