Skip to content

Instantly share code, notes, and snippets.

@DeividSaenz
Created December 9, 2012 11:45
Show Gist options
  • Save DeividSaenz/4244408 to your computer and use it in GitHub Desktop.
Save DeividSaenz/4244408 to your computer and use it in GitHub Desktop.
Encontrar numero entre X y Y
function buscarDesdeHasta(desde,hasta,x) //Tres parámetros: desde qué número, hasta qué número, y a qué
{ //número le quieres encontrar su posición.
var arr = new Array(); //Crea un nuevo arreglo a definir.
var longitud= hasta-desde+1; //Crea una variable que calcula la cantidad de elementos que
//tendrá el arreglo.
for (var i=0; i<=longitud; i++) //Un iterador para generar el arreglo.
{
if (desde<=hasta)
{
arr[i]=desde;
desde++; //Va incrementando el valor desde, hasta que sea igual a hasta.
};
};
for (var i = 0; i <= longitud; i++) //Hace un nuevo iterador, esta vez para buscar X en el arreglo.
{
if (arr[i]==x)
{
return i; //Re regresa el valor de i, que es la posición en el arreglo de X.
};
};
}
@anademata
Copy link

¿Pero y si el número y el índice no coinciden?
Es decir, tienes un array que el índice 0 =200 y llega hasta el 456, [i] nunca va a ser == a x

@DeividSaenz
Copy link
Author

Es que el índice 'i' indica el lugar en el arreglo, entonces primero se crea el arreglo en el primer for, y pues tiene que empezar por la posición 0 para arriba ¿no? Ya luego en el segundo for, va comparando cada posición con el valor X hasta que coincida, y si no coincide es por que no existe el valor que buscas dentro de los parámetros que le diste.

@massimilianop7
Copy link

Y si incluimos el segundo if en el primer for?

function buscarDesdeHasta(desde,hasta,x)
{
var arr = new Array();
var longitud= hasta;

for (var i=0; i<=longitud; i+=1) 
{
    if (desde<=hasta) 
    {
        arr[i]=desde;
        desde++;
    };

    if (arr[i]==x) 
    {
        return i;
    };
};

}

@anademata
Copy link

Sigo sin entender por qué tiene que coincidir.
Es decir si yo tengo un array de 2 números
a[0]=234;
a[1]=235;

Nunca va a coincidir el índice con el número. No se si estoy entendiéndolo todo mal.. jajaja

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment