Trova il valore più piccolo tra le variabili?
-
03-07-2019 - |
Domanda
Ho da 4 a 20 variabili che differiscono per dimensioni. Sono tutti di tipo float e valori numerici. C'è un modo semplice per trovare il valore più piccolo tra loro e assegnarlo a una variabile? Grazie
Soluzione 4
Grazie per tutte le vostre risposte e commenti .. Ho imparato molto da voi ragazzi :)
Ho finito per usare qualcosa come Martin ha suggerito.
if (segmentValueNumber == 11){
float min = 100000000;
if(game51 > 0, game51 < min){
min=game51;
}
if(game52 > 0, game52 < min){
min=game52;
}
}
...............................................
Non sono riuscito a capire come implementare tutto in un array poiché ogni risultato dipende da un controllo di segmento e penso che il programma sia più ottimizzato in questo modo poiché controlla solo le variabili rilevanti.
Ma grazie ancora, sei molto utile ..
Altri suggerimenti
Non sono sicuro di obiettivo-c ma la procedura è qualcosa del tipo:
float min = arrayofvalues[0];
foreach( float value in arrayofvalues)
{
if(value < min)
min=value;
}
Sono d'accordo con Davy8 - potresti provare a riscrivere il suo codice nell'Obiettivo C.
Ma ho trovato alcuni min () - come il codice - nell'Obiettivo C!
Guarda questo:
- (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;
}
Questo codice presuppone che confronterà sempre solo tre variabili, ma suppongo sia qualcosa che puoi affrontare;)
La migliore soluzione, senza foreach.
`- (float) minFromArray: (float *) dimensione array: (int) arrSize
{
float min;
int i;
min = array[0]
for(i=1;i<arrSize;i++)
if(array[i] < min)
min = array[i];
return min;
} `
Se vuoi essere sicuro, aggiungi un segno di spunta su arrSize > 0.
Marco