. Надо перед циклом задать ненулевое значение переменной из условия.
var
n,i: integer;
a,b,S: double;
function square(a,b:double):double;
begin
square:=a*b;
end;
begin
S:=0;
while a<>0 do
write('Введите длину: ');
readln(a);
Write('Введите ширину: ');
readln(b);
S:=S+square(a,b);
write('Общая площадь: ', S:5:5);
end.
a: = 1;
Объяснение:
var
n,i: integer;
a,b,S: double;
function square(a,b:double):double;
begin
square:=a*b;
end;
begin
S:=0;
a:=1;
while a<>0 do
write('Введите длину: ');
readln(a);
Write('Введите ширину: ');
readln(b);
S:=S+square(a,b);
write('Общая площадь: ', S:5:5);
end.