только подправил чуть-чуть: uses crt; const n = 3; k = 0; type rec = record FIO: string [30]; marka: string [10]; colour: string [13]; number: integer; end; mas = array [1..n] of rec; var i, flag, kr, w: byte; f: file of rec; mashina: mas; auto: rec; procedure vvod; begin rewrite (f); for i:=1 to n do begin textcolor(15); write('FIO vladelca: '); readln(auto.FIO); textcolor(2); write(' marka avtomobilia: '); readln(auto.marka); textcolor(14); write(' cvet mashini: '); readln(auto.colour); textcolor(13); write(' nomer mashini: '); readln(auto.number); textcolor(4); write(f, auto); end; close (f); end; procedure vivod; begin reset(f); while not eof(f) do begin read(f, auto); writeln(auto.FIO:30, auto.marka:10, auto.colour:13, auto.number:8); end; close(f); readkey; end; procedure belii; begin; reset (f); w := 0; while not eof(f) do begin read(f, auto); if auto.colour = 'belii' then inc(w); end; write('kolichestvo belih mashin: ', w); close(f); writeln; end; procedure next1; begin reset (f); //типа перемещение по бд seek(f, 1); read(f, auto); writeln(auto.FIO:30, auto.marka:10, auto.colour:13, auto.number:8); seek(f, 0); read(f, auto); writeln(auto.FIO:30, auto.marka:10, auto.colour:13, auto.number:8); close(f); writeln; end; begin clrscr; assign(f, 'automoto.dat'); flag := 0; textbackground(1); clrscr; window(10, 5, 70, 20); textbackground(0); clrscr; repeat writeln('1. vvod'); writeln('2. vivod'); writeln('3. belii'); writeln('0. vihod'); write('vvedite nomer: '); readln(kr); case kr of 1: vvod; 2: vivod; 3: belii; 4: next1; 0: break; end; flag := 1; until flag = 0; end. program automoto; а вообще я не программист, а слесарь, поэтому меня не спрашивайте и на паскале не писал никогда, сперва на фокспро, потом на дельфи