Нужно перебирать точки, и искать среди них паралелограмм, ну и периметр определять...
допустим есть массив точек:
Код
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;
такой перебор будет быстрее, чем если все комбинации перебирать
(ведь незачем брать одни и те-же точки).
Ну а проверка на паралелограмм такая:
у него паралельные стороны, значит надо проверить ,что вектора паралельны (скалярное произведение проверь, оно должно быть равно произведению длин вкторов.)
ЗЫ: Одноко, Нечаев видимо достал, что правила не читают
(угадал?)