gpt4 book ai didi

java - 无需任何方法即可选择列表中的最小和最大数字

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:45:09 26 4
gpt4 key购买 nike

我试图从 5 个数字的列表中选择最大和最小的数字。对于最大的我没有问题,在某些情况下对于最小的也没有问题。但是,对于最小的数字,我想添加一个条件,如果它为零('0'),我不会选择它,这意味着我想从 5 个数字中选择最小的一个,而不是 0。例如:1000 2000 3000 0 0我想选 1000 个。

此外,我不能使用任何方法或基于函数的 Just If 语句。

那是我的代码:

if((manufactorsPrice1<manufactorsPrice2)&&(manufactorsPrice1<manufactorsPrice3)&&(manufactorsPrice1<manufactorsPrice4)&&(manufactorsPrice1<manufactorsPrice5)){
if(manufactorsPrice1>0){
smallestPrice=manufactorsPrice1;
}
}else if((manufactorsPrice2<manufactorsPrice3)&&(manufactorsPrice2<manufactorsPrice4)&&(manufactorsPrice2<manufactorsPrice5)){
if(manufactorsPrice2>0){
smallestPrice=manufactorsPrice2;
}
}else if((manufactorsPrice3<manufactorsPrice4)&&(manufactorsPrice3<manufactorsPrice5)){
if(manufactorsPrice3>0){
smallestPrice=manufactorsPrice3;
}
}else if(manufactorsPrice4 < manufactorsPrice5){
if(manufactorsPrice4>0){
smallestPrice=manufactorsPrice4;
}
}else{
if(manufactorsPrice5>0){
smallestPrice=manufactorsPrice5;
}}

如果我可以选择 0 作为最小值,那很好,但我不能。请帮助我,我怎样才能从列表中选择下一个不是零的最小数字。?谢谢。

最佳答案

这里有一个解决方案,它只使用一个额外的局部变量来减少嵌套。它会找到最小的非零值(如果存在)或零(如果它们都为 0)。它也使用较少的比较。

    ...

int min1, min2;

if (a2 == 0 || (a1 < a2 && a1 != 0))
min1 = a1;
else
min1 = a2;

if (a4 == 0 || (a3 < a4 && a3 != 0))
min2 = a3;
else
min2 = a4;

if (min1 == 0 || (min2 < min1 && min2 != 0))
min1 = min2;

if (min1 == 0 || (a5 < min1 && a5 != 0))
min1 = a5;

return min1;

关于java - 无需任何方法即可选择列表中的最小和最大数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26891113/

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