我必须在代码中显示的特定范围内调整浮点类型剩余计数,这工作正常,但问题是,如果计数是10或20或30,那么会有很多,如果条件,那就是非常低效。如何减少if if语句并使其更好?
下面的示例代码是用于调整高达5计数。
任何建议我该如何改进?
这就是:
for(i = 0; i < 12; i++)
{
RemainingCount[i] = (((float) CurrentMaterialWeight[i] * (float)TotalMaterialCount[i])/((float) TotalMaterialWeight[i]));
if (RemainingCount[i] <= 0.3)
{
AdjustedRemainingCount[i] = 0;
}
else if (RemainingCount[i] > 0.50 && RemainingCount[i] <= 1.50)
{
AdjustedRemainingCount[i] = 1;
}
else if (RemainingCount[i] > 1.50 && RemainingCount[i] <= 2.50)
{
AdjustedRemainingCount[i] = 2;
}
else if (RemainingCount[i] > 2.50 && RemainingCount[i] <= 3.50)
{
AdjustedRemainingCount[i] = 3;
}
else if (RemainingCount[i] > 3.50 && RemainingCount[i] <= 4.50)
{
AdjustedRemainingCount[i] = 4;
}
}
So on.....
为什么你从0.3跳到0.5? – user2357112
颠倒顺序,摆脱'&&'的右边。 –
你不断测试你已经知道的东西。 –