Procedure Del_N(var f:fail); var n,i:integer; c:char; x:stud; begin write('Удалить запись № '); readln(n); reset(f); if (filesize(f)<n)or(n<0) then begin writeln('В файле нет такой записи'); close(f); write('Press Enter...'); readln; exit; end; if n=filesize(f)then begin seek(f,filesize(f)-1); truncate(f); close(f); write('Press Enter...'); readln; exit; end; seek(f,n-1); for i:=n-1 to filesize(f)-2 do begin seek(f,i+1); read(f,x); seek(f,i); write(f,x); end; seek(f,filesize(f)-1); truncate(f); close(f); write('Press Enter...'); readln end;
// PascalABC.NET 3.1, сборка 1201 от 18.03.2016 begin var k:=0; var n:=ReadInteger(); var nmax:=0; while n<>0 do begin Inc(k); if n mod 10 = 0 then if n>nmax then nmax:=n; n:=ReadInteger() end; var cntrl:=ReadInteger(); Writeln('Получено ',k,' чисел'); Writeln('Полученное контрольное значение: ',cntrl); Writeln('Вычисленное контрольное значение: ',nmax); if cntrl=nmax then Writeln('Контроль пройден') else Writeln('Контроль не пройден') end.
// с циклом while var s,i:integer; begin i:=100; while i<=999 do begin if i mod 77 = 0 then s:=s+i; i:=i+1; end; writeln('Сумма трехзначных кратных 77: ',s); end.
var n,i:integer;
c:char;
x:stud;
begin
write('Удалить запись № ');
readln(n);
reset(f);
if (filesize(f)<n)or(n<0) then
begin
writeln('В файле нет такой записи');
close(f);
write('Press Enter...');
readln;
exit;
end;
if n=filesize(f)then
begin
seek(f,filesize(f)-1);
truncate(f);
close(f);
write('Press Enter...');
readln;
exit;
end;
seek(f,n-1);
for i:=n-1 to filesize(f)-2 do
begin
seek(f,i+1);
read(f,x);
seek(f,i);
write(f,x);
end;
seek(f,filesize(f)-1);
truncate(f);
close(f);
write('Press Enter...');
readln
end;