Visual Basic - NUMERO APROXIMADO !!

Life is soft - evento anual de software empresarial
 
Vista:

NUMERO APROXIMADO !!

Publicado por Javier (50 intervenciones) el 25/06/2008 17:17:28
HOLA GENTE, NECESITO UNA AYUDA SI.
EN UNA LISTA INGRESO X CANTIDAD DE NUMEROS Y MEDIANTE UNA BARRA LE ELIJO EL NUMERO QUE NECESITO ENCONTRAR EN ESA LISTA, PERO SI NO LO ENCUENTRA EN LA LISTA QUIERO QUE ME TIRE EL MAS APROXIMADO A ESE NUMERO QUE ELEJI Y LA POSICION EN DONDE LO ENCUENTRA...ME ENTIENDEN NO?? MUCHAS GRACIAS COLEGAS.NOS VEMOS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:NUMERO APROXIMADO !!

Publicado por igor (633 intervenciones) el 25/06/2008 19:37:12
Hola javier, podrías empezar por NO GRITAR QUE NO ESTAMOS SORDOS!!!!!!!

Además, no por ser pesao te van a hacer más caso. Creo que si nadie te ha respondido es porque ni tu madre puede entender lo que necesitas. Si lo explicas un poco mejor a lo mejor puedo echarte una mano.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:NUMERO APROXIMADO !!

Publicado por javier (50 intervenciones) el 28/06/2008 02:31:17
Ok, mil disculpas para todos.
Lo que tengo es lo siguiente..
En una lista cargo 100 valores aleatorios positivos entre 0-999. En una scrolbar elijo un valor entre 1-256, le doy a un boton aceptar y luego necesito que dicho valor que elijí me lo busque en la lista y si no lo encuentra que me large el mas aproximado al numero que elejí y la posicion en la lista...si?
cualquier cosa que no se entienda se los tratare de explicar de otra forma..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:NUMERO APROXIMADO !!

Publicado por igor (633 intervenciones) el 28/06/2008 17:13:38
Pues se me ocurre que recorras toda la lista realizando en cada valor una resta con el valor elegido. El que más se aproxime será el que proporcione un resultado menor, siendo 0 en caso de ser el número exacto. Todo esto sin tener en cuenta el signo, por supuesto. Te pongo un ejemplo:

dim Diferencia as integer
dim Cercano as integer

Diferencia=1.000 ' La Diferencia máxima posible es 998

for i=1 to 100 ' Rango de valores aleatorios
if Diferencia > abs(Elegido - Aleatorio(i)) ' Las anteriores son mayores?
Diferencia = abs(Elegido - Aleatorio(i)) ' Almacenamos nueva diferencia
Cercano = Aleatorio(i) ' Almacenamos el número más cercano
end if
next i

Después de esto tendrás el número que más se aproxima en la variable Cercano. Aunque tienes que tener en cuenta que si se da un caso como el siguiente:

Aleatorios 1, 2, 5, 7, 9, ..........
Elegido 6
Diferencia = 5 - 6 = -1
Diferencia = 7 - 6 = 1

Los 2 valores son los mismos con lo que se quedaría con el primero que ha encontrado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:NUMERO APROXIMADO !!

Publicado por javier (50 intervenciones) el 28/06/2008 20:41:51
si, te entiendo..no se me habia ocurrido. Lo voy a intentar, cualquier cosita vuelvo ok?
Un saludo.Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar