我必须完成这个方法,它返回一个月内CDD计算的总和。我用来计算总和的我的cdd方法首先在下面。我可以提一下如何解决这个问题吗?我对阵列很困难,我不确定如何开始。
public static double cdd(int max, int min)
{
double average = ((max + min) / 2.0);
double cdd = 0.0;
if (average > 65.0)
{
cdd = average - 65.0;
}
else
{
cdd = 0.0;
}
if (max == -999 || min == -999)
{
cdd = 0.0;
}
else if (max < min)
{
cdd = 0.0;
}
return cdd;
public static double monthCdd(int[] max, int[] min)
{
double sum = 0.0;
max = new int[31];
min = new int[31];
cdd(,);
return sum;
}
答案 0 :(得分:1)
填充max
和min
数组后,
for
启动max.length - 1
循环,该循环将从0到i
。cdd()
方法,如cdd(max[i], min[i])
。cdd()
方法返回的值添加到sum
变量sum += cdd(max[i], min[i]);
答案 1 :(得分:0)
您可能想要这样做:
final int length= 31;
double sum=0.0
max =new int[length];
min= new int[length];
//add code to initialize the arrays
for(int i=0;i<length;i++) {
sum +=cdd(min[i],max[i]);
}
答案 2 :(得分:0)
好吧,如果你在使用数组,那么我建议的第一件事就是在Java中使用迭代器。
在伪中,该方法应对两个数组的每个索引执行基本操作。访问两个数组的内容将需要一个迭代器“逐步”遍历数组的每个索引,从0开始并以最后一个索引结束(因此其他人建议声明静态长度)。
声明:
for (int i = 0; i < length; i++) {
简单地说明“对于每个(任意变量) i 在区间[0,长度]上,使用 i 执行某些操作,然后递增 i 强>一个用于下一个循环“
理解这一点,你就可以添加两个数组(相同大小)的每个索引,即
sum += arr1[i] + arr2[i]