Matriz: Pesquisa Binária
algoritmo()
{
// pesquisa binaria (dados ordenados)
matriz inteiro V[10];
inteiro i;
inteiro P; // valor a ser pesquisado
inteiro inferior;
inteiro superior;
inteiro meio;
inteiro N;
// recebendo os valores para o vetor
para ( i := 1 ate 10 passo 1 )
{
leia ( "informe valor: ", V[i] );
}
leia ( "informe o valor a ser pesquisado: ", P );
N := 10;
inferior := 1;
superior := N;
enquanto ( inferior <= superior )
{
meio := ( (inferior + superior) / 2 ) + 1;
se ( V[meio] > P )
{
superior := meio - 1;
}
senao
{
se ( V[meio] == P )
{
inferior := superior + 1;
}
senao
{
inferior := meio + 1;
}
}
}
se ( V[meio] <> P )
{
escreva ( "valor nao encontrado" );
}
senao
{
escreva ( "valor encontrado na posicao ", meio );
}
}