
Originariamente inviata da
WILEz
Salve... avrei una domanda.
Come da titolo, ho un array di 6 numeri float che variano costantemente.
Vorrei sapere quale di questi numeri è il più grande, ma sopratutto vorrei sapere come fare a determinare quale è il secondo più grande, quale il terzo ecc... fino all'ultimo.
Devo usare Array.Sort()?
Però...c'è un però.
Io non voglio che la posizione dell'elemento dell'array cambi!
Cioè, Numero[0] dovrà essere sempre Numero[0], non voglio che il suo id cambi.
Con Array.Sort(), se per esempio Numero[2] diventa il più grande mi viene posto sull'array con l'id 0 ovvero diventerebbe Numero[0] e questo non posso farlo.
Questo perché questi numeri sono abbinati ad una stringa (un nome)
su un altro array di tipo string.
Nome[0] ha il numero Numero[0], Nome[1] ha il numero Numero[1] ecc... E deve rimanere così.
Vorrei solo sapere in che posizione è Nome[0], in che posizione è Nome[1] ecc... in base al numero ad esso abbinato dallo stesso id.
Tipo:
codice:
if(Numero[0]>Numero[1]&&
Numero[0]>Numero[2]&&
Numero[0]>Numero[3]&&
Numero[0]>Numero[4]&&
Numero[0]>Numero[5])
print(Nome[0]+"E' primo");
//Ho determinato il numero più grande.
Ma come faccio a sapere quale di questi numeri è il secondo in ordine di grandezza, quale il terzo ecc..?
Questi numeri cambiano costantemente e potrebbe succedere che il numero che un istante prima era il più grande diventi secondo perché superato da un altro...
Ma come detto, non posso cambiare gli id dell'array, vorrei solo sapere quale in un determinato istante è il primo, il secondo ecc...
Come si può fare?