Трапеция. Часть 3

Очень рано проснулся и сразу приступил к расчетам. Формулы практически не изменились, просто добавились несколько вспомогательных операций. Программу на языке своем любимом написал буквально за десять минут:

n=28
 for a=1 to n
 for b=a+1 to n
 for d1=1 to n
 A=(a/2)^2
 H=d1^2-A
 c=d1
 d=sqrt(H+(b-a/2)^2)
 d2=sqrt(H+(b+a/2)^2)
 if d=int(d) then
 if d2=int(d2) then
 if c+d>b then
 if d1+d2>b then
 print a,b,c,d,d1,d2
 fi:fi:fi:fi
 next d1
 next b
 next a

Получил немало решений с повторами некоторых размеров элементов трапеции:


3 8 9 11 9 13
4 15 26 29 26 31
6 16 18 22 18 26
8 12 11 13 11 19
8 27 24 33 24 39
9 24 13 23 13 31
9 24 27 33 27 39
11 24 23 29 23 37
14 25 25 30 25 40
16 24 22 26 22 38
16 28 17 25 17 39
21 24 17 19 17 37
22 27 21 24 21 42

Последовательно колонки: a,b,c,d,d1,d2 .

Таким образом, стало ясно, что имеются бесконечное число целочисленных вариантов.
Причем, как видно из таблицы, первая строка попадает под габариты задаваемой трапеции. К сожалению, размер 9 повторяется. Этот вариант показан на рисунке.

Ну, что же - остался последний рывок. Нужно писать программу поиска уже всех возможных решений. После завтрака и должен это сделать!


Рецензии