Сформировать файл, содержащий натуральные числа - Free Pascal
Формулировка задачи:
Сформировать файл,содержащий натуральные числа.Дописать в файл после каждого нечетного числа сумму его цифр
Решение задачи: «Сформировать файл, содержащий натуральные числа»
textual
Листинг программы
uses crt;
const n=10;
var a,a1,i,j,endf:integer;
f:file of integer;
function sc(x:integer):integer;
var s:integer;
begin
s:=0;
while x>0 do
begin
s:=s+x mod 10;
x:=x div 10
end;
sc:=s
end;
begin
clrscr;
randomize;
assign(f,'chisla.dat');
rewrite(f);
for i:=1 to n do write(f,random(1001));
close(f);
reset(f);
writeln('сформированный файл:');
for i:=1 to filesize(f)do begin read(f,a);write(a,' ') end;
writeln;
endf:=filesize(f);
i:=0;
while i<endf do
begin
seek(f,i);
read(f,a);
if odd(a)
then
begin
j:=filesize(f);
while j>i do
begin
seek(f,j-1);
read(f,a1);
seek(f,j);
write(f,a1);
dec(j);
end;
inc(i);inc(endf);
seek(f,i);
write(f,sc(a))
end;
inc(i)
end;
close(f);
reset(f);
writeln('результат:');
for i:=1 to filesize(f) do begin read(f,a);write(a,' ') end;
readln
end.