16/11/2022 ; 6:30 PM

This commit is contained in:
2022-11-16 18:28:01 -04:00
parent 77bcc9e8f9
commit 764066a5a9
17 changed files with 878 additions and 0 deletions

View File

@@ -0,0 +1,60 @@
#include <stdio.h>
/* B<>squeda secuencial en arreglos desordenados. */
#define MAX 100
void Lectura(int, int); /* Prototipos de funciones. */
int Busca(int*, int, int);
void main(void)
{
int RES, ELE, TAM, VEC[MAX];
do
{
printf("Ingrese el tama<6D>o del arreglo: ");
scanf("%d", &TAM);
} while (TAM > MAX || TAM < 1); /* Se verifica que el tama<6D>o del arreglo sea correcto. */
Lectura(VEC, TAM);
printf("\nIngrese el elemento a buscar: ");
scanf("%d", &ELE);
RES = Busca(VEC, TAM, ELE); /* Se llama a la funci<63>n que busca en el arreglo. */
if (RES)
/* Si RES tiene un valor verdadero <20>diferente de 0<>, se escribe la posici<63>n en la que se encontr<74> el elemento. */
printf("\nEl elemento se encuentra en la posicion %d", RES);
else
printf("\nEl elemento no se encuentra en el arreglo");
}
void Lectura(int A[], int T)
/* La funci<63>n Lectura se utiliza para leer un arreglo unidimensional de T elementos de tipo entero. */
{
int I;
for (I = 0; I < T; I++)
{
printf("Ingrese el elemento %d: ", I + 1);
scanf("%d", &A[I]);
}
}
int Busca(int A[], int T, int K)
/* Esta funci<63>n localiza en el arreglo un elemento determinado. Si el elemento es encontrado, regresa la posici<63>n correspondiente. En caso contrario, regresa 0. */
{
int I = 0, BAN = 0, RES;
while (I < T && !BAN)
if (A[I] == K)
BAN++;
else
I++;
if (BAN)
RES = I + 1;
/* Se asigna I+1 dado que las posiciones en el arreglo comienzan desde cero. */
else
RES = BAN;
return (RES);
}