8. По данным массива постройте диаграмму в виде ломаной линии. Соответствуют ли ординаты вершин ломаной значениям массива?
Ординаты вершин ломаной не соответствуют значениям массива, т.к. координаты в Pascal отсчитываются сверху, а не снизу.
uses graphABC;
var a: array[1..20] of integer;
n, max, h, x, y1, y2: integer;
m: real;
begin
write('Количество n =');
readln(n);
writeln(n);
writeln('Элементы массива');
for var i := 1 to n do
begin
read(a[i]);
write(a[i], ' ');
end;
max := a[1];
for var i := 2 to n do
if a[i] > max then
max := a[i];
h := trunc(WindowWidth/(2*n+1));
m := WindowHeight/max;
x := h;
SetPenColor(clRed);
MoveTo(a[1], a[1]+100);
for var i := 1 to n do
begin
LineTo(x, a[i]+100);
x := x + 2*h;
end;
end.
Для решения задачи воспользуемся процедурами MoveTo(x, y)
, с помощью которой установим начальное положение пера, и LineTo(x, y)
, с помощью которого будем рисовать линию.