Помощь - Поиск - Пользователи - Календарь
Полная версия: Точки на плоскости и паралелограмм
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Slack
Ребята!!! помогите!!! уже про задолбался писать прогу...сделайте её плизззз.....дано N точек на плоскости...найти параллелограм на этих точках так чтобы его периметр был максимальным
Altair
Нужно перебирать точки, и искать среди них паралелограмм, ну и периметр определять...
допустим есть массив точек:
Код
type
koords=record
           x:real;
           y:real;
        end;

array[1..n]  of koords;


Тогда перебрать точки можно так:
Код
for i:=1 to n-3 do
for j:=i+1 to n-2 do
 for k:=j+1 to n-1 do
  for m:=j+1 to n do
begin
{проверяем паралелограмм ли это,
если да, вычисляем периметр, ....}
end;


такой перебор будет быстрее, чем если все комбинации перебирать

(ведь незачем брать одни и те-же точки).


Ну а проверка на паралелограмм такая:
у него паралельные стороны, значит надо проверить ,что вектора паралельны (скалярное произведение проверь, оно должно быть равно произведению длин вкторов.)

ЗЫ: Одноко, Нечаев видимо достал, что правила не читают smile.gif
(угадал?)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.