Este programa permite excluir lógicamente um registro de um arquivo de dados contendo informações de veículos, alterando o campo "ativo" para 0 ao invés de remover fisicamente o registro, e informando ao usuário se o veículo foi encontrado ou não.
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Exclusão lógica de registros em arquivo
1. EXCLUSÃO LÓGICA
program exclui_logico;
uses crt;
type carro = record
placa : string;
marca : string;
ano : integer;
ativo : integer;
end;
frota = file of carro;
var
detran : frota;
carros : carro;
placa : string;
marca : string;
ano, k : integer;
achou : boolean;
begin
clrscr;
assign(detran, ‘carros.dat’);
reset(detran);
k := filisize(detran);
writeln(‘Digite a placa do carro a ser excluído’);
readln(placa);
achou := false;
read(detran, carros);
while((achou=false) and (not eof(detran))) do
begin
if(carro.placa = placa) then
begin
achou := true;
k := (filepos(detran)-1);
end; //fim do if
read(detran, carros);
read(detran, carros);
end;
if(achou = true)then
begin
seek(detran, k);
carro.ativo := 0;
write(detran, carros);
writeln(‘Carro excluído’);
end
else
begin