вот код:
uses crt;
var a:array[1..10] of real;
i:integer;
begin
for i:=1 to 10 do
begin
a[i]:=random*9 - 4;
end;
for i:=3 to 7 do
begin
writeln('a[',i,']=',a[i]:0:2);
end;
writeln('Press enter');
readln;
end.
Пояснения:
у тебя в условии промежуток [4,5) означает что 5 нельзя включать (скорее всего ошибка).
Есл это не ошибка переписывания условия , то добавляется еще одна линия, и программа получается:
uses crt;
var a:array[1..10] of real;
i:integer;
begin
randomize;
for i:=1 to 10 do
begin
a[i]:=random*9 - 4;
if(a[i]=5) then a[i]:=4.9999;
end;
for i:=3 to 7 do
begin
writeln('a[',i,']=',a[i]:0:2);
end;
writeln('Press enter');
readln;
end.
Обрати внимание, я еще добавил randomize; команду - она гарантирует, что случайные числа будут именно случайными