Посмотрите что не правильно







program Project2;

{$APPTYPE CONSOLE}

uses
SysUtils;
type plist=^list;
list=record
info:real;
next:plist;
end;
ff=file of real;
str=string[30];
var pstart:plist;
n:integer;
p:char;
f:ff;
procedure spisok(var pstart:plist;n:integer);
var lp,lb,ls:plist;
i:integer;
begin
lb:=nil;
for i:=1 to n do
begin
if lb=nil then
begin
new(lb);
writeln('enter chislo');
readln(lb^.info);
lb^.next:=nil;
lp:=lb;
pstart:=lb;
end
else
begin
new(ls);
writeln('enter chislo');
readln(ls^.info);
ls^.next:=nil;
lp^.next:=ls;
lp:=ls;
end;
begin
new(ls);
read(f,ls^.info);
ls^.next:=nil;
lp^.next:=ls;
lp:=ls;
end;
end;
close(f);


writeln('file not found');
end;
procedure dlina(pstart:plist;var n:integer);
var lp:plist;
begin
lp:=pstart;
n:=0;
while lp<>nil do
begin
inc(n);
lp:=lp^.next;
end;
end;
procedure vyvod(pstart:plist);
var lp:plist;
begin
lp:=pstart;
while lp<>nil do
begin
writeln(lp^.info);
lp:=lp^.next;
end;
end;



begin
{ TODO -oUser -cConsole Main : Insert code here }
repeat
writeln('1-sozdat spisok');
writeln('2-soxranit spisok in file');
writeln('3-htenie from file');
writeln('4-ydalit 5 element');
writeln('5-vivesti spisok');
writeln('6-dlina');
writeln('7-vixod');
writeln('vvedite chto xotite vipolnit');
readln(p);
case p of
'1':begin
writeln('entr kol-vo elem');
readln(n);
spisok(pstart,n);
end;
'2':save(f,pstart);
'3':chtenie(f,pstart);
'4':
begin
writeln('enter nomer');
readln(n);
udalenie(pstart,n);
end;
'5':vyvod(pstart);
'6':
begin
dlina(pstart,n);
writeln(n);
end;
end;
until p='7';


end;


end.