Pregunta

Tengo de 4 a 20 variables que difieren en tamaño. Todos ellos son de tipo flotante y valores numéricos. ¿Hay una manera fácil de encontrar el valor más pequeño entre ellos y asignarlo a una variable? Gracias

¿Fue útil?

Solución 4

Gracias por todas sus respuestas y comentarios ... Aprendo mucho de ustedes :)

Terminé usando algo como Martin sugirió.

if (segmentValueNumber == 11){

    float min = 100000000;      


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

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

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

No pude encontrar la manera de implementarlo todo en una matriz, ya que cada resultado depende de un control de segmento, y creo que el programa está más optimizado de esta manera ya que solo verifica las variables relevantes.

Pero gracias de nuevo, eres de gran ayuda ...

Otros consejos

No estoy seguro acerca del objetivo-c, pero el procedimiento es algo así como:

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

Estoy de acuerdo con Davy8: puedes intentar reescribir su código en el Objetivo C.

Pero, he encontrado un código similar a min () - en el Objetivo C!

Mira esto:

- (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;
}

Este código supone que siempre comparará solo tres variables, pero supongo que eso es algo con lo que puedes lidiar;)

La mejor solución, sin foreach.

`- (float) minFromArray: (float *) tamaño de matriz: (int) arrSize

{

float min;
int i;

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

} `

Si desea estar seguro, agregue una verificación de arrSize > 0.

Marco

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top