Предмет: Информатика, автор: mihan456

Даны 4 точки A1(x1,y1), A2(x2,y2), A3(x3,y3), A4(x4,y4). Определить, будут ли они вершинами параллелограмма. Нужно решить на Pascal, но без использования мудренных команда.

Ответы

Автор ответа: archery
0
var
    x1, x2, x3, x4, y1, y2, y3, y4: real;

function VectorLength(x1, y1, x2, y2: real): real;
begin
    VectorLength := sqrt(sqr(x1 - x2) + sqr(y1 - y2));
end;

function VectorSlope(x1, y1, x2, y2: real): real;
begin
    VectorSlope := (y1 - y2) / (x1 - x2);
end;

begin
    readln(x1, y1);
    readln(x2, y2);
    readln(x3, y3);
    readln(x4, y4);
    
    if (VectorLength(x1, y1, x2, y2) = VectorLength(x4, y4, x3, y3))
    and (VectorSlope(x1, y1, x2, y2) = VectorSlope(x4, y4, x3, y3)) then
        writeln('Yes')
    else writeln('No');
end.
Автор ответа: Аноним
0
Жаль только, не описана идея, лежащая в основе программы.
Автор ответа: archery
0
проверка стандартных свойств. паралельность и равенство противоположных сторон
Автор ответа: Аноним
0
Т.е. Вы вы предположили, что точки расположены в порядке обхода вершин, а также, что прямоугольник и квадрат - тоже параллелограммы. Но тогда можно было и проще решить: в параллелограмме диагонали пересекаются в одной точке.... )))
Автор ответа: archery
0
проверяла по основным свойствам. и все остальное верно
Похожие вопросы
Предмет: Математика, автор: vdovchenko773388
Предмет: Математика, автор: 098765432121