All pastes #168461 Raw Edit

Chank

public text v1 · immutable
·published 2006-09-13 00:31 UTC
rendered paste body
Program pesquisa_binaria;
uses crt;
var
    n,i : integer;
    v : array[1..30] of integer;
function PesquisaBinaria (chave : integer; vetor : array of integer; tamanho : integer): integer;
    var
    inicio, fim, meio : integer;
begin
  inicio := 1;
  fim := tamanho;
  while (inicio <= fim) do
  begin
    meio := (inicio + fim) div 2;
    if (chave = vetor[meio]) then
    begin
      PesquisaBinaria := meio; {retorna o valor do índice}
    end
    else
    if (chave < vetor[meio]) then
      fim := meio - 1
    else
      inicio := meio + 1;
  end;
  PesquisaBinaria := -1; {não encontrado}
end;
begin
    For i := 1 to 10 do
        Begin
        WriteLn('Digite o valor da posicao', i);
        ReadLn(v[i]);
        clrscr;
    end;

    Writeln('Digite o numero a ser buscado');
    ReadLN(n);
    pesquisabinaria(n,v,10);
    if (pesquisabinaria(n,v,10) = -1) then
        WriteLN('Numero nao encontrado')
    else
        WriteLN('Numero encontrado');
end.