Busqueda Binara y Secuencial de una matriz

10.03.2023

Funcion LLENARVEC(vec,n)

para i <-1 Hasta n Hacer

vec(i) <- azar(1000)+1

FinPara

Fin Funcion

Funcion p<-busqueda_secuencial(vec,n,D)

p<-1

Mientras p<=n y (vec(p)<>D) Hacer

P<-P+1

Fin Mientras

Fin Funcion

Funcion pos <- busq_binaria(vec, n, D)

Definir encontrar como logica

encontrar = falso

p_inicial <- 1 + 1

p_final <- n

pos <- 1

mientras (encontrar = falso) y (p_inicial < p_final) hacer

p_medio <- trunc((p_inicial + p_final)/2)

si vec(p_medio) = D entonces

encontrar <- Verdadero

pos <- p_medio

Sino

si vec(p_medio) < D Entonces

p_inicial <- p_medio + 1

SiNo

p_final <- p_medio - 1

FinSi

FinSi

FinMientras

Fin Funcion

Algoritmo tarea

definir r como entero

Escribir "Digitar 1 para la busqueda secuencial o 2 para la busqueda binaria: "

Leer r

si r = 1

Dimension vec(1000)

Definir a Como Entero

escribir "Ingrese cantidad de posiciones "

leer n

LLENARVEC(vec,n)

Para i<-1 Hasta n Con Paso 1 Hacer

si i<>1 Entonces

Para j<-1 Hasta n Con Paso 1 Hacer

si vec(j) = vec(i) Entonces

elementoRepetido = Verdadero

FinSi

FinPara

FinSi

si elementoRepetido=Falso Entonces

vec(i) = vec(i)

FinSi

elementoRepetido = Falso

Fin Para

para i <- 1 hasta n con paso 1 Hacer

min <- i;

Para j<-i+1 Hasta n Con Paso 1 Hacer

Si vec[j] < vec[min] Entonces

min <- j;

Fin Si

FinPara

aux <- vec[i];

vec[i] <- vec[min];

vec[min] <- aux;

FinPara

para a <- 1 hasta n Hacer

Escribir vec(a)

FinPara

escribir "Ingrese dato que desea buscar "

leer D

p<-busqueda_secuencial(vec,n,D)

si p > n Entonces

Escribir "el dato no se encontro"

SiNo

Escribir "el dato se encontro en la posicion: ",p

FinSi

SiNo

Dimension vec(1000)

Definir a, D, vec Como Entero

escribir "Ingrese cantidad de posiciones "

leer n

LLENARVEC(vec,n)

para a <- 1 hasta n Hacer

Escribir vec(a)

FinPara

escribir "Ingrese dato que desea buscar "

leer D

p <- busq_binaria(vec, n, D)

si p > n Entonces

Escribir "El elemento no se encuentra"

SiNo

Escribir "El dato existe y esta en la posicion: ", p

FinSi

Fin si

FinAlgoritmo

2023 Asociación
Arte emergente | Todos los derechos reservados.
Creado con Webnode Cookies
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar