el ejercicio es el siguiente:
Código C:
Ver original
/*Se cargará aleatoriamente un vector numérico entero de 22 elementos con valores positivos en orden ascendente. Pedir por teclado el valor a buscar en el vector y realizar una búsqueda dicotómica. Antes de finalizar se visualizará el vector y si el elemento se encontró la posición que ocupa y en caso contrario se visualizará mediante un mensaje adecuado que el elemento no se encontró en el vector.*/ #include<stdio.h> #include<time.h> #include<stdlib.h> int main(){ int i=0,vect[22],j,aux,valor,izq,drcha,centro; char basura; /*generacion de vector aleatorio*/ for(i=0;i<22;i++){ } /*ordenamiento por el metodo de la burbuja*/ for(i=0;i<22;i++){ for(j=i+1;j<22;j++){ if(vect[j]<vect[i]){ aux=vect[j]; vect[j]=vect[i]; vect[i]=aux; } } } for(i=0;i<22;i++){ } /*busqueda dicotomica*/ izq=0; drcha=21; while(drcha<=izq){ centro=drcha+izq/2; if(vect[centro]==valor){ return centro; } else{ if(valor <vect[centro]){ izq=centro-1; } else{ drcha=centro+1; } } } if(vect[i]==valor){ } else{ } return 0; }
si me podeis explicar un pokito mas este tipo de busqueda me ayudariais un monton.Salu2