gpt4 book ai didi

java - 数组打印作为内存位置和哨兵值不起作用

转载 作者:行者123 更新时间:2023-11-30 06:30:28 26 4
gpt4 key购买 nike

我在一些作业上遇到了一些问题,我无法弄清楚,如果有人能指出我正确的方向,我将不胜感激。我的哨兵值根本不起作用,我无法弄清楚它是否起作用。另外,我的平均值数组打印为内存位置而不是值。这是我到目前为止的代码

 public class DistanceFromAverage
{//Global Declaration Section

public static void main(String args[])
{//Declaration Section
double[] Numbers;
double[] Average;


//Input Section

Numbers = array_numbers();

//Processing Section

Average = distance_average(Numbers);

//Output Section

display_array(Numbers, Average);


}//end




public static double[] array_numbers()
{
double[] tmp;
tmp = new double[20];
double[] sentinel = {99999};
Scanner input = new Scanner(System.in);
int count = 0;

try
{
for (int i = 0; i < tmp.length; i++)
{
System.out.println("Please enter number");
tmp[i] = input.nextDouble();


}
}
catch(InputMismatchException exception)
{
System.out.println("A number must be entered");
System.exit(0);
}

return tmp;
}//end array

public static double[] distance_average(double[] Numbers) {

double sum = 0.0;


for (int i=0; i < Numbers.length; i++)

sum = sum + Numbers[i];
double average = sum / Numbers.length;


return new double[] {average};
} // determine average



public static void display_array(double[] Numbers, double[] Average)
{

for (int i = 0; i < Numbers.length; i++){

System.out.println("The numbers in the array are: " + Numbers[i] + "and the average is" + Average);
}
}//end display_array







}//end class

最佳答案

关于将平均值打印为内存位置,您的显示函数接受 Average 作为数组而不是简单的 double 。这将调用 Array 类上的 toString() 。由于 Average 只是一个数字,因此可以在“System.out.println”语句中使用 Average[0] 或在显示方法中接受 double 类型的简单平均值,如下所示:

public static void display_array(double[] Numbers, double Average)

并更改签名

public static double[] distance_average(double[] Numbers) {

public static double distance_average(double[] Numbers) {

关于java - 数组打印作为内存位置和哨兵值不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46261366/

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