Program fact; var
i: Integer;
x, z, a, b, c:real;
begin
z:=0;
i:=0;
repeat
writeln ('Введите результаты спортсменов a, b, c');
readln (a, b, c);
x:=(a+b+c)/3;
writeln(x);
If x>z then z:=z else z:=x;
i:=i+1;
until i=3; writeln(z);
end. Ребят нужно в подпрограмму добавить ещё одну подпрограмму чтобы в ответе z сохранял своё значение чтоб в ответе z не был равен нулю
var
a: array of longint;
size, i, j: longint;
begin
randomize;
writeln('Колво элементов: ');
readln(size);
setLength(a, size);
write('Исходный случайный массив: ');
for i:=0 to size-1 do
begin
a[i]:=random(201)-100;
write(a[i], ' ');
end;
writeln;
for i:=0 to size-2 do
for j:=0 to size-i-2 do
if a[j]>a[j+1] then
begin
a[j]:=a[j] xor a[j+1];
a[j+1]:=a[j] xor a[j+1];
a[j]:=a[j] xor a[j+1];
end;
writeln('Отсортированный массив: ');
for i:=0 to size-1 do write(a[i], ' ');
writeln;
end.
begin
// вычисляем площадь треугольника с
// векторного произведения
sq:=abs((x2-x1)*(y3-y1)-(x3-x1)*(y2-y1))/2;
end;
// основная программа
var x,y,x1,y1,x2,y2,x3,y3,x4,y4,st,sp:real;
begin
write('координаты 4 вершин x1 y1 x2 y2 x3 y3 x4 y4 через пробел: ');
readln(x1,y1,x2,y2,x3,y3,x4,y4);
sp:=2*sq(x1,y1,x2,y2,x3,y3);
write('координаты точки x y через пробел: '); readln(x,y);
st:=sq(x1,y1,x2,y2,x,y) + sq(x2,y2,x3,y3,x,y) +
sq(x3,y3,x4,y4,x,y) + sq(x4,y4,x1,y1,x,y);
if abs(sp-st)<1.0e-9 then
writeln('точка принадлежит прямоугольнику')
else writeln('точка не принадлежит прямоугольнику');
end.
координаты 4 вершин x1 y1 x2 y2 x3 y3 x4 y4 через пробел: 1 4 6 9 9 6 4 1
координаты точки x y через пробел: 4 7
точка принадлежит прямоугольнику
координаты 4 вершин x1 y1 x2 y2 x3 y3 x4 y4 через пробел: 1 4 6 9 9 6 4 1
координаты точки x y через пробел: 1.5 1.6
точка не принадлежит прямоугольнику