Búsqueda lineal en un arreglo
[c]#include
#define TAMANIO 100
/* prototipo de la función */
int busquedaLineal( const int arreglo[], int llave, int tamanio );
/* la función main comienza la ejecución del programa */
int main()
{
int a[ TAMANIO ]; /* crea el arreglo a */
int x; /* contador para inicializar los elementos de 0 a 99 del arreglo a */
int llaveBusqueda; /* valor para localizar en el arreglo a */
int elemento; /* variable para almacenar la ubicación de llaveBusqueda o -1 */
/* crea los datos */
for ( x = 0; x < TAMANIO; x++ ) {
a[ x ] = 2 * x;
} /* fin de for */
printf( "Introduzca la llave de busqueda entera:n" );
scanf( "%d", &llaveBusqueda );
/* intenta localizar llaveBusqueda en el arreglo a */
elemento = busquedaLineal( a, llaveBusqueda, TAMANIO );
/* despliega los resultados */
if ( elemento != -1 ) {
printf( "Encontre el valor en el elemento %dn", elemento );
} /* fin de if */
else {
printf( "Valor no encontradon" );
} /* fin de else */
return 0; /* indica terminación exitosa */
} /* fin de main */
/* compara la llave con cada elemento del arreglo hasta que localiza el elemento
o hasta que alcanza el final del arreglo; devuelve el subÃÂndice del elemento
si lo encontró o -1 si no lo encontró */
int busquedaLineal( const int arreglo[], int llave, int tamanio )
{
int n; /* contador */
/* ciclo a través del arreglo */
for ( n = 0; n < tamanio; ++n ) {
if ( arreglo[ n ] == llave ) {
return n; /* devuelve la ubicación de la llave */
} /* fin de if */
} /* fin de for */
return -1; /* llave no encotrada */
} /* fin de la función busquedaLineal */[/c]
¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)
Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.
Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:
- Si es lenguaje C <code lang="c">Código en C</code>
- Si es lenguaje Pascal <code lang="pascal">Aquí dentro el código de Pascal</code>.
De esta manera el código coloreas el código.
Otro punto importante para muchos que crees que te he ignorado: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:Me reservo el derecho de alterar, publicar o no los comentarios así como también cambiar mis condiciones en el momento que yo lo requiera.
¿Si estas de acuerdo? Adelante! que ya te he quitado bastante tiempo leyendo esta basura :)