int'res'是parts数组中所有6个元素的平均值。我有它的工作,以便在以下情况下显示“通过”:
1)平均值(Res)大于或等于60
2)数组“部分”的所有元素必须大于或等于55
但
3)如果阵列中的6个元素中的4个小于60但至少为55,我还需要打印“通过”。
任何有关第三步的恭维帮助将不胜感激!非常感谢。
boolean output1 = true;
for (int i = 0; i < 6; i++)
{
if (parts[i] < 55 || res < 60)
{
output1 = false;
break;
}
}
if (output1)
System.out.println("Pass");
答案 0 :(得分:0)
最简单的方法是计算遵循该条件的成员。
boolean output1 = true;
int counter = 0;
for (int i = 0; i < 6; i++)
{
if(parts[i] < 55 || res < 60)
{
output1 = false;
break;
}
if(parts[i] >= 55 && parts[i] < 60)
++counter;
}
if(output1 && counter >= 4)
System.out.println("Pass");
如果无法满足条件,你也可以打破for循环(即你在第三个元素上,但你没有任何大于54且小于60的元素)
boolean output1 = true;
int counter = 0;
for (int i = 0; i < 6; i++)
{
if(parts[i] < 55 || res < 60)
{
output1 = false;
break;
}
if(parts[i] >= 55 && parts[i] < 60)
++counter;
if(i - counter > 2) //more than 2 did not match already
{
output1 = false;
break;
}
}
if(output1)
System.out.println("Pass");