Перезапись символов из одного файла в другой


Из символьного файла переписать в новый файл все символы, предшествующие первому пробелу в исходном файле. Закончить результирующий файл восклицательным знаком.

program iz-v;
var f,g: file of char;
ch: char;
n: word;
begin
assign(f,’z1.txt’); reset(f);
assign(g,’z2.txt’); rewrite(g);
n:=filepos(f);
seek(f,n);
while ch<>’ ‘ do
begin
seek(f,n);
read(f,ch);
write(g,ch);
inc(n);
end;
ch:=’!';
write(g,ch);
readln;
close(f); close(g);
end.

Теги: , ,

Создание файла и извлечение информации по фильтру


Создать файл, содержащий сведения об абитуриентах: фамилия, средний балл аттестата, какое учебное заведение окончил, год окончания. Получить список абитуриентов, окончивших в текущем году техникум, средний балл аттестата которых не ниже 4.

program fayl_student;
type student=record
fam,uch:string[15];
sbal:real;
year:integer;
end;
var f:file of student;
st:student;
n,i:integer;
BEGIN
assign(f,’Student.dat’); rewrite(f);
writeln(’Vvedite kol-vo studentov’);
readln(n);
writeln(’Vvedite INFO o studentah’);
for i:=1 to n do
Begin
writeln;
write(’Familiya studenta:’);
readln(st.fam);
write(’Sredniy bal attestata (4i5-kruto):’);
readln(st.sbal);
write(’Uchebnoe zavedenie okonchil (tehnikum-kruto):’);
readln(st.uch);
write(’God okonchaniya (2006-kruto):’);
readln(st.year);
write(f,st);
End;
writeln;
Writeln(’Poluchen Fail!!! (Press Enter to continue)’);
close(f);
readln;
writeln(’Studenti, kotorie v 2006 godu okonchili TEHNIKUM,’);
writeln(’(sredniy bal ne nige 4)’);
reset(f);
While not eof(f) do
Begin
read(f,st);
if (st.year)=2006 then
begin
if (st.uch)=’tehnikum’ then
begin
if (st.sbal)>=4 then writeln(st.fam);
end;
end;
end;
writeln;
close(f);
readln;
end.

Теги: , , , ,