Question

J'ai entre 4 et 20 variables de taille différente. Ils sont tous de type float et number value. Existe-t-il un moyen facile de trouver la plus petite valeur parmi celles-ci et de l’affecter à une variable? Merci

Était-ce utile?

La solution 4

Merci pour toutes vos réponses et vos commentaires .. J'ai beaucoup appris de vous les gars:)

J'ai fini par utiliser quelque chose comme suggéré par Martin.

if (segmentValueNumber == 11){

    float min = 100000000;      


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

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

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

Je ne pouvais pas comprendre comment tout implémenter dans un tableau, car chaque résultat dépend d'un contrôle de segment, et je pense que le programme est plus optimisé de cette façon puisqu'il ne vérifie que les variables pertinentes.

Mais merci encore, vous êtes très utile.

Autres conseils

Vous n'êtes pas sûr de l'objectif-c, mais la procédure ressemble à quelque chose comme:

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

Je suis d'accord avec Davy8 - vous pouvez essayer de réécrire son code en Objective C.

Mais, j'ai trouvé du code min () - comme le code - dans Objective C!

Regardez ceci:

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

Ce code suppose qu'il ne comparera toujours que trois variables, mais je suppose que c'est quelque chose que vous pouvez gérer;)

La meilleure solution, sans foreach.

`- (float) minFromArray: (float *) taille du tableau: (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 vous voulez en être sûr, cochez la case arrSize > 0.

Marco

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top