Tecnología y Electrónica, pregunta formulada por saragb20002, hace 3 meses

diseñe un algoritmo que lea un numero cualquiera y lo busque en el vector X, el cual tiene almacenados 5 elementos. Escribir la posición donde se encuentra almacenado el número en el vector o el mensaje "NO" si no lo encuentra. Búsqueda secuencial



Por favor necesito ese programa en visual Basic, si alguien me puede ayudar le pagaría y le agradecería demasiado


gbteo2003: Alguien me puede pasar solo el codigo del ejercicio

Respuestas a la pregunta

Contestado por MaranthonyHC
1

Respuesta:

- Algoritmos de Búsqueda

• Los procesos de búsqueda involucran recorrer un

arreglo completo con el fin de encontrar algo. Lo

más común es buscar el menor o mayor elemento

(cuando es puede establecer un orden), o buscar el

índice de un elemento determinado.

• Para buscar el menor o mayor elemento de un

arreglo, podemos usar la estrategia, de suponer que el

primero o el último es el menor (mayor), para luego

ir comparando con cada uno de los elementos, e ir

actualizando el menor (mayor). A esto se le llama

Búsqueda Lineal.

  • Búsqueda Secuencial

• Consiste en ir comparando el elemento que se

busca con cada elemento del arreglo hasta

cuando se encuentra.

• Busquemos el elementos ‘u’

C o m p u t a c i o n

u u u u u

0 1 2 3 4 5 6 7 8 9 10

Resultad

  • Búsqueda Secuencial

• Búsqueda del menor

menor = a[0];

for (i=1;i<n;i++)

if ( a[i]<menor )

menor=a[i];

• Búsqueda del mayor

mayor= a[n-1];

for (i=0;i<n-1;i++)

if ( a[i]>mayor )

mayor=a[i];

• Búsqueda de elemento

encontrado=-1;

for (i=0;i<n;i++)

if ( a[i]==elemento_buscado )

encontrado=i;

Ejemplo:

• Desarrollar un programa que

posea una función que reciba

como parámetro un arreglo de

10 enteros, y un entero, y

retorne la posición del entero

si es que se encuentra, de lo

contrario devolver –1.

#include <stdio.h>

int encuentra(int A[], int b) {

int k=1, result=-1;

do{

if (A[k]== b)

result =k;

else

k++;

}while ((result==-1)&&(k<10));

return result;

}

int main() {

int i, x[10];

for(i=0;i<10;i++)

scanf("%d",&x[i]);

i = encuentra( x, 10);

printf("resultado %d\n",i);

return 0;

  • Eficiencia y Complejidad

• Considerando la Cantidad de Comparaciones

– Mejor Caso:

• El elemento buscado está en la primera posición. Es decir, se

hace una sola comparación

– Peor Caso:

• El elemento buscado está en la última posición. Necesitando

igual cantidad de comparaciones que de elementos el arreglo

– En Promedio:

• El elemento buscado estará cerca de la mitad. Necesitando en

promedio, la mitad de comparaciones que de elementos

• Por lo tanto, la velocidad de ejecución depende

linealmente del tamaño del arreglo

Explicación:

DAME CORONA Y CORAZÓN

ESPERO AYUDARTE

Contestado por angel1465853
0

mmm pueddes explicarl mejor xfa para ayudarte

Respuesta:

Explicación:

Otras preguntas