Получаете координаты трех вершин: (x1, y1) (x2, y2) (x3, y3)
Выясняете, какой угол - прямой:
(x2-x1)*(x3-x1)+(y2-y1)*(y3-y1) = 0, значит, прямой угол - при вершине (x1, y1)
тогда координаты четвертой вершины равны:
x = x1 + (x2-x1) + (x3-x1)
y = y1 + (y2-y1) + (y3-y1)
(x1-x2)*(x3-x2)+(y1-y2)*(y3-y2) = 0, значит, прямой угол - при вершине (x2, y2)
тогда координаты четвертой вершины равны:
x = x2 + (x1-x2) + (x3-x2)
y = y2 + (y1-y2) + (y3-y2)
(x1-x3)*(x2-x3)+(y1-y3)*(y2-y3) = 0, значит, прямой угол - при вершине (x3, y3)
тогда координаты четвертой вершины равны:
x = x3 + (x1-x3) + (x2-x3)
y = y3 + (y1-y3) + (y2-y3)
????
PROFIT!
Другие языки программирования и технологии
Даны координаты 3-ёх вершин прямоугольника. Найти координаты 4-ой вершины.
это же элементарно
просишь в вести координаты вершины (их всего три)
это значит по два числа на вершину (Х и У) - создаешь при этом масив двух мерный
и загоняешь туда последовательно 3 отданых числа х и у
далее создаем некую логику
нас интересует всего лишь введенные первые координаты и третие
проверяем что бы х1 не равнялся x3 (тоесть проверяем что бы х первого числа не ровнялся х терьего числа ) - если не ровняется тогда х ровняется первому введеному чеслу х - а у третьему введенному числу Y - далее если все же Х третьего числа равняется Х первого числа тогда Х ровняется второго введенного числа Х а У третьего !
вот и вся логика
просишь в вести координаты вершины (их всего три)
это значит по два числа на вершину (Х и У) - создаешь при этом масив двух мерный
и загоняешь туда последовательно 3 отданых числа х и у
далее создаем некую логику
нас интересует всего лишь введенные первые координаты и третие
проверяем что бы х1 не равнялся x3 (тоесть проверяем что бы х первого числа не ровнялся х терьего числа ) - если не ровняется тогда х ровняется первому введеному чеслу х - а у третьему введенному числу Y - далее если все же Х третьего числа равняется Х первого числа тогда Х ровняется второго введенного числа Х а У третьего !
вот и вся логика
Иван Серебряков
Что-то не сходится.
Если нам вводят координаты
1; 1
1; 3
3; 3
то, следуя вашей логике, мы получаем координаты 1; 3. Правильно я считаю? Но неизвестная вершина находится в координатах 3; 1
Если нам вводят координаты
1; 1
1; 3
3; 3
то, следуя вашей логике, мы получаем координаты 1; 3. Правильно я считаю? Но неизвестная вершина находится в координатах 3; 1
Добрый день.
Немного теории.
Исходя из свойств прямоугольника в общем виде координаты вершин (обозначим их А, B, C, D) можно представить в таком виде:
A(x, y); B(x+a,y)
C(x. y+b); D(x+a, y+b)
Можно видеть, что множество значений x имеет значения {x, x+a, x, x+a}, и множество значений y имеет значения {y, y, y+b, y+b}
Теперь представим, что мы получаем в произвольном порядке значения координат трех вершин, и если они принадлежат прямоугольнику, то они будут принадлежать указанным выше множествам и подчиняться их свойствам. Другими словами, из трех значений x - два значения обязательно будут равны, то же самое со значениями y.
Теперь дело техники.
Немного практики.
На Паскале это можно реализовать, например так:

Исходные значения координат я задал в программе, Вы же можете использовать команду ввода с клавиатуры, но тогда необходимо задать проверку координат на принадлежность их прямоугольнику.
Успехов.
Немного теории.
Исходя из свойств прямоугольника в общем виде координаты вершин (обозначим их А, B, C, D) можно представить в таком виде:
A(x, y); B(x+a,y)
C(x. y+b); D(x+a, y+b)
Можно видеть, что множество значений x имеет значения {x, x+a, x, x+a}, и множество значений y имеет значения {y, y, y+b, y+b}
Теперь представим, что мы получаем в произвольном порядке значения координат трех вершин, и если они принадлежат прямоугольнику, то они будут принадлежать указанным выше множествам и подчиняться их свойствам. Другими словами, из трех значений x - два значения обязательно будут равны, то же самое со значениями y.
Теперь дело техники.
Немного практики.
На Паскале это можно реализовать, например так:

Исходные значения координат я задал в программе, Вы же можете использовать команду ввода с клавиатуры, но тогда необходимо задать проверку координат на принадлежность их прямоугольнику.
Успехов.
Иван Серебряков
"из трех значений x - два значения обязательно будут равны, то же самое со значениями y."
Вот здесь вы наверно ошибаетесь. Если прямоугольник будет наклонен? Что-то типа этого)
Вот здесь вы наверно ошибаетесь. Если прямоугольник будет наклонен? Что-то типа этого)

Похожие вопросы
- Pascal. Даны координаты начала и конца отрезка. Определить координаты всех точек этого отрезка.
- Почему компоненты современных компьютеров не производятся на базе 3-ой, 4-ой и др. систем счисления?
- Как по координатам трех точек треугольника определить - начало координат находится внутри него или за его пределами?
- Как поставить нумерацию начиная с 4-ой страницы в Word 2003?
- Дан двумерный массив C(m,n). Найти произведение элементов, больших среднего значения. Помогите пожалуйста!!!
- Дан двумерный массив C(m,n). Найти произведение элементов, больших среднего значения. Помогите пожалуйста!!! На паскале
- Помогите :) Дан массив из n целых чисел. Найти количество встречающихся равных чисел.
- Pascal. Дан натуральный отрезок чисел [A,B]. Найти те числа этого отрезка, которые являются степенью двойки.
- Дана матрица размером n x m. Найти наибольший положительный и наименьший отрицательный элементы матрицы.
- Создать программу по турбопаскаль вывести ответ желтым цветом даны три A,B,C числа найти максимальное
Вот честно даже читать дальше не стала.. . я же написала ПРЯМОУГОЛьник