{Elabore um programa para cadastrar 10 nomes. Este programa deverá ter uma rotina de pesquisa a qual
terá que mostrar o nome cadastrado e a posição deste nome dentro do vetor de 10 posições. Caso o nome não seja enctrado, deverá exibir uma mensagem dizendo que o nome não foi encontrado.
Ao final deverá listado todos os nomes ordenados em ordem crescente. }
program pesquisa_sequencial;
uses crt;
var
nome : array [1..10] of string[120];
i,j : integer;
pesq,aux_nome : string[120];
resp : char;
acha : boolean;
begin
clrscr;
writeln ('Pesquisa Sequencial');
writeln;
{**** ROTINA DE CADASTRAMENTO ****}
writeln ('Cadastramento: ');
writeln;
for i:= 1 to 10 do
begin
write ('Digite o ',i,'o. nome: '); readln (nome[i]);
end;
{**** ROTINA DE LISTAGEM DOS NOMES CADASTRADOS - NAO ORDENADOS ****}
writeln;
writeln ('Listagem dos nomes cadastrados: ');
writeln;
for i:= 1 to 10 do
writeln (i,'o.: ',nome[i]);
{**** PESQUISA SEQUENCIAL NAO ORDENADA****}
writeln;
resp:= 'S';
while (resp = 'S') or (resp = 's') do
begin
{**** ROTINA DE PESQUISA ****}
writeln;
write ('Entre com o nome a ser pesquisado: '); readln (pesq);
i:=1;
acha:=false;
while (i<=10) and (acha = false) do
if (pesq = nome[i]) then
acha:= true
else
i:= i + 1;
if (acha = true) then
writeln (pesq,' foi localizado na posicao ',i)
else
writeln (pesq,' nao foi localizado');
{**** FIM DA ROTINA DE PESQUISA ****}
writeln;
write ('Deseja continuar pesquisando: S/N: ');
readln(resp);
end;
{**** ORDENANDO OS VALORES ARMAZENADOS DENTRO DO VETOR ****}
for i:= 1 to 9 do
for j:= i+1 to 10 do
if nome[i] > nome[j] then
begin
aux_nome := nome[i];
nome[i] := nome[j];
nome[j] := aux_nome;
end;
{**** ROTINA DE LISTAGEM DOS NOMES CADASTRADOS - ORDENADOS ****}
writeln;
writeln ('Listagem dos nomes cadastrados - ORDENADOS : ');
writeln;
for i:= 1 to 10 do
writeln (i,'o.: ',nome[i]);
writeln;
write ('Tecle <ENTER> para sair...'); readln;
end.
Nenhum comentário:
Postar um comentário