то что сделано:
uses crt;
procedure WrRec(s:string; var f,i,k:string; var b:char);
var j,t,code:integer;
s1:string;
begin
for j:=1 to length(s) do
begin
if s[j]=' ' then begin t:=j+1; break; end
else f[j]:=s[j];
end;
for j:=t to length(s) do
begin
if s[j]=' ' then begin t:=j+1; break; end
else i[j-t+1]:=s[j];
end;
for j:=t to length(s) do
begin
if s[j]=' ' then begin t:=j+1; break; end
else k[j-t+1]:=s[j]
end;
b:=s[t];
end;
type pupil=record
fam:string;
ima:string;
klas:string;
bukva:char;
end;
var a:array[1..100] of pupil;
f:text;
i,j:integer;
s:string;
begin
clrscr;
i:=0;
assign(f,'d:\1234.dat');
reset(f);
while not eof(f) do
begin
writeln;
inc(i);
readln(f,s);
writeln(s);
WrRec(s,a[i].fam,a[i].ima,a[i].klas,a[i].bukva);
end;
close(f);
writeln(length(a[1].fam));
readkey;
end.
капитально не врубаюсь почему функция length неработает
writeln(length(a[1].fam));
Добавлено через 1 мин.
в принципе надо разобраться почему не раскладывает по массиву данные, дальше с подсчетом уж как-нить разберусь