
мне нужна ваша помощь в написании программы.
поверьте, прежде чем создать топик я перерыл много литературы на этом сайте, смотрел как работают те или иные процедуры- но у меня не получается

задали мне кароче, вот такую вот программу.
Нужно создать типизированны файл записей, содержащий следущюю информацию:
- фамилия
- год рождения
- номер телефона
В созданном файле нужно найти сведения о сотрудниках 1970-1980 годах рождения. как создавать файл, и вводит ьв него нужные данные, я понял. возможно выбрал не совсем лёгкий, возможно даже и глупый пут- но все создаётся

пожалуйста, исправьте ошибки если можете, пока у меня окончательно не рассплавился мозг

- Код: Выделить всё
program yeeeaah;
{$mode objfpc}{$H+}
uses crt;
const
n=4;
type
yeah = record
surname:string[30];
year:1900..2000;
telefon:111111..7999999;
end;
type
fail = text;
var
a:array[1..n] of yeah;
f:fail;
filename:string[20];
i:byte;
surname1:string[30];
year1:1900..2000;
telefon1:111111..7999999;
begin
writeln('Kakoje bi vi hoteli vibrat imja faila? ( <= 20 simvolov)');
readln(filename);
Assign(f,filename);
Rewrite(f);
writeln('Teper, zapolnite pojalusta fail zapisami po tipu:');
writeln(' - familia (do 30 simvolov)');
writeln(' - god rojdenia (zifra ot 1900 do 2000');
writeln(' - nomer telefona (zifra ot 111111 do 7999999');
writeln(' P.S.');
writeln('Na dannij moment programa podderjivaet ',n,' zapisej v fail');
for i:=1 to n Do
begin
with a[i] Do
begin
readln(surname);
readln(year);
readln(telefon);
end;
write(f,a[i].surname); write(f,' ');
write(f,a[i].year); write(f,' ');
writeln(f,a[i].telefon);
end;
Close(f);
Reset(f);
surname1:='';
while not EOF(f) Do
begin
readln(f,year1,telefon1,surname1);
if (year1 >= 1970) and (year1 <= 1980) then begin
writeln('Nashlos telo s datoj rojdenija 70-80');
writeln('Ego familia ',surname1);
writeln('Ego telefon - ',telefon1);
writeln('________________________________');
end;
end;
readkey;
end.