Busqueda Binaria
program busbina; uses crt; type vector=array [1..10] of integer; var v:vector; encon:boolean; primero,ultimo,q,central,p:integer; begin clrscr; for q:=1 to 10 do begin write(q,' .- '); readln(v[q]) end; for q:=1 to 10 do begin primero:=q+1; for primero:=primero to 10 do begin if v[primero] < v[q] then begin ultimo:= v[primero]; v[primero]:=v[q]; v[q]:=ultimo end end end; encon:= false; primero:=1; ultimo:=10; clrscr; write('Introduce Elemento a buscar: '); readln(q); while (primero <= ultimo) and (encon = false) do {Busqueda } begin central:= (primero+ultimo) div 2; if q = v[central] then encon:= true else if q > v[central] then primero:=central+1 else ultimo:=central-1; end; if encon = true then p:=central else p:=0; writeln; writeln; writeln; if p=central then writeln('Elemento buscado en la posicion ',p) else writeln('Elemento no existente '); readln end.
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 [c]Código en C[/c]
- Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].
De esta manera el código coloreas el código.
Otro punto importante para muchos que sienten que se les ignora: 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 cambiar mis condiciones en el momento que así lo requiera.
¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)