gpt4 book ai didi

Java - 最高、最低和平均水平

转载 作者:行者123 更新时间:2023-11-29 04:01:59 29 4
gpt4 key购买 nike

我刚刚开始学习,我的一项练习需要帮助。

我需要最终用户输入每个月的降雨量。然后我需要输出平均降雨量、最高月份和最低月份以及降雨量高于平均水平的月份。

我一直在最高和最低中得到相同的数字,我不知道为什么。我正在认真地拔头发。任何帮助将不胜感激。

这是我目前所拥有的:

public class rainfall {

/**
* @param args
*/
public static void main(String[] args)
{
int[] numgroup;
numgroup = new int [13];
ConsoleReader console = new ConsoleReader();
int highest;
int lowest;
int index;
int tempVal;
int minMonth;
int minIndex;
int maxMonth;
int maxIndex;


System.out.println("Welcome to Rainfall");

for(index = 1; index < 13; index = index + 1)
{
System.out.println("Please enter the rainfall for month " + index);
tempVal = console.readInt();
while (tempVal>100 || tempVal<0)
{
System.out.println("The rating must be within 0...100. Try again");
tempVal = console.readInt();
}
numgroup[index] = tempVal;
}



lowest = numgroup[0];


for(minIndex = 0; minIndex < numgroup.length; minIndex = minIndex + 1);
{
if (numgroup[0] < lowest)
{
lowest = numgroup[0];
minMonth = minIndex;
}
}

highest = numgroup[1];


for(maxIndex = 0; maxIndex < numgroup.length; maxIndex = maxIndex + 1);
{
if (numgroup[1] > highest)
{
highest = numgroup[1];
maxMonth = maxIndex;
}
}


System.out.println("The average monthly rainfall was ");
System.out.println("The lowest monthly rainfall was month " + minIndex);
System.out.println("The highest monthly rainfall was month " + maxIndex);

System.out.println("Thank you for using Rainfall");

}


private static ConsoleReader ConsoleReader() {

return null;
}

}

谢谢,

艾米丽

最佳答案

首先,因为这是你的作业,你不应该在 stackoverflow.com 上提问

现在让我们看看你的代码

  1. lowest = numgroup[0];

为什么?看起来你试图使用这个算法来找到最小值:

1.1 Suppose first number (which you think is numgroup[0]) is min (named as lowest in your code)
1.2. Compare it with all other numbers, if any of the numbers is smaller, replace min (i.e lowest).

但是,numgroup[0]不是你的第一个号码!你像这样开始了你的第一个 for 循环

for(index = 1;...

所以,您的第一个数字是 numgroup[1] .

接下来,你的第二个循环开始

for(minIndex = 0;

而索引 0 处的元素甚至从未打算被您使用(我猜)

接下来,判断当前迭代中的数字是否小于 lowest 的条件是

if (numgroup[0] < lowest)

它总是将索引为 0 的元素与 lowest 进行比较这(我猜)不是你的意图。

关于Java - 最高、最低和平均水平,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2848000/

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