Найдите наименьшее значение среди переменных?

StackOverflow https://stackoverflow.com/questions/603452

  •  03-07-2019
  •  | 
  •  

Вопрос

У меня от 4 до 20 переменных, различающихся по размеру.Все они имеют тип float и числовые значения.Есть ли простой способ найти среди них наименьшее значение и присвоить его переменной?Спасибо

Это было полезно?

Решение 4

Спасибо за все ваши ответы и комментарии..Ребята, я многому у вас учусь :)

В итоге я использовал что-то вроде предложения Мартина.

if (segmentValueNumber == 11){

    float min = 100000000;      


        if(game51 > 0, game51 < min){
            min=game51;
        }

        if(game52 > 0, game52 < min){
            min=game52;
        }
}

...............................................

Я не мог придумать, как реализовать все это в одном массиве, поскольку каждый результат зависит от элемента управления сегментом, и я думаю, что программа таким образом более оптимизирована, поскольку она проверяет только соответствующие переменные.

Но еще раз спасибо, вы очень помогаете..

Другие советы

Не уверен насчет Objective-C, но процедура примерно такая:

float min = arrayofvalues[0];
foreach( float value in arrayofvalues)
{
    if(value < min)
        min=value;
}

Я согласен с Davy8 — вы можете попробовать переписать его код в Objective C.

Но я нашел код, похожий на min(), в Objective C!

Посмотри на это:

- (int) smallestOf: (int) a andOf: (int) b andOf: (int) c
{
     int min = a;
     if ( b < min )
         min = b;

     if( c < min )
         min = c;

     return min;
}

В этом коде предполагается, что он всегда будет сравнивать только три переменные, но я думаю, с этим можно справиться;)

Лучшее решение без foreach.

`- (float)minFromArray:(float *)размер массива:(int)arrSize

{

float min;
int i;

min = array[0]
for(i=1;i<arrSize;i++)
    if(array[i] < min)
        min = array[i];
return min;

} `

Если вы хотите быть уверенным, добавьте проверку arrSize > 0.

Марко

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top