Идея извлечения квадратного корня с помощью циркуля и линейки принадлежит древним грекам. Некто Гиппократ Хиосский – математик и астроном ещё в V в. до н.э. придумал способ извлечения квадратного корня из отрезка произвольной длины с помощью циркуля и линейки. Описываемый в статье алгоритм немного отличается от предложенного Гиппократом, но точно также основан на теореме Пифагора и позволяет построить отрезок, длина которого точно соответствует значению квадратного корня из длины исходного отрезка.
Сначала разбираемся, как это работает на уровне идеи.
Квадрат гипотенузы равен сумме квадратов катетов.
Хорошо известная нам со школы теорема Пифагора оперирует квадратными корнями сторон прямоугольного треугольника. Например, на приведённом ниже рисунке гипотенуза |с|, равная корню квадратному из суммы квадратов катетов |а| и |b|, может быть найдена простым геометрическим построением.
Таким образом, чисто теоретически, с помощью циркуля и линейки можно извлекать корни квадратные из любых отрезков, являющихся сторонами прямоугольных треугольников. Ниже представлен алгоритм извлечения квадратного корня из отрезка произвольной длины L с помощью циркуля и линейки:
1) Строим две оси координат X и Y;
2) Откладываем по оси Х на расстоянии L - 1 от начала координат точку B;
3) Строим окружность радиусом L + 1 с центром в точке B;
4) Половина отрезка |ОА|, отсекаемого окружностью на оси Y, это искомый квадратный корень из L.
Доказательство
Из построения имеем следующие значения сторон прямоугольного треугольника ОАВ:
Делаем подстановки и упрощаем подкоренное выражение:
Получаем следующее значение для катета |а|:
Следовательно, половина катета |а| равна корню квадратному из L. Что и требовалось доказать.
Переходим к реализации калькулятора. Будем делать это в MS Visio. Сначала строим две оси координат - X и Y. Для этого размещаем на листе документа Visio вертикальную и горизонтальную направляющие. Примерно так.
Бросаем на ось Х отрезок произвольной длины и определяем для него в «Данных фигуры» новое свойство - длина.
Это число должно определять длину отрезка, из которого будем извлекать корень.
Записываем в таблицу свойств фигуры, в раздел «Одномерные конечные точки», две формулы:
Формула для EndX вычисляет длину отрезка в зависимости от значения числа в «Данных фигуры» с коэффициентом масштабирования 10. Формула для EndY фиксирует отрезок в горизонтальном положении.
Чтобы длина отрезка была видна на чертеже, вставляем вычисляемое поле (Ctrl-F9) в текст отрезка. И добавляем следующую формулу:
Бросаем на лист эллипс, закрашиваем его в чёрный цвет, определяем высоту и ширину - 2 мм, вводим текст «В».
Получилась точка В – это центр будущей окружности на расстоянии L – 1 от начала координат. Определяем положение точки В на оси Х (горизонтальной направляющей) в соответствии с формулой L - 1. Для этого в таблице свойств фигуры в раздел «Преобразование фигуры» записываем формулы:
Формула для PinX вычисляет положение точки В на оси Х на расстоянии (L – 1) от оси Y, а формула для PinY «привязывает» точку В к оси Х по вертикали.
Бросаем ещё один эллипс, делаем из него окружность с радиусом R = L + 1 и привязываем его к точке В.
Для этого изменяем формулы в разделе «Преобразование фигуры» так как показано ниже:
Формулы Width и Height связывают диаметр окружности с длиной отрезка L. Формулы PinX и PinY привязывают центр окружности к точке В.
Строим отрезок |ОА|, привязываем его к началу координат осей Х и Y и вычисляем длину по теореме Пифагора для прямоугольного треугольника ОАВ. Из построения мы помним, что гипотенуза |AB| этого треугольника равна R = L + 1, а катет |ОВ| = L - 1. Следовательно, катет |ОА| равен корню квадратному из разности квадратов гипотенузы |AB|и катета |ОВ|.
Вот эти формулы в разделе «Одномерные конечные точки» таблицы свойств фигуры вычисляют длину катета |OA|.
Формулы BeginX и EndX привязывают отрезок к оси Y, а формулы BeginY и EndY определяют длину отрезка.
Делим точкой Q отрезок |ОА| пополам и фиксируем отрезок |ОQ| с длиной равной значению корня квадратного из длины L исходного отрезка.
Для размещения точки Q точно посередине отрезка |OA| в разделе «Преобразование фигуры» таблицы свойств фигуры используем следующие формулы:
ВСЁ! Калькулятор готов. Подставляем в «Данных фигуры» отрезка произвольное значение длины (L) и автоматически получаем отрезок |ОQ|с длиной равной корню квадратному из L.
PS Внимательный читатель вправе задать вопрос – если мы с помощью циркуля и линейки извлекли квадратный корень из Пи (3,141593), то что может помешать нам построить с помощью того же циркуля и линейки квадрат с площадью равной площади круга? На это имеется целых два возражения. Во-первых, в рассмотренном методе извлечения квадратного корня применяется линейка с делениями (иначе мы не сможем отложить отрезки длиной L - 1 и L + 1), а в знаменитой нерешаемой задаче разрешено использовать только линейку без делений. Во-вторых, значение числа Пи (3,141593) мы ввели руками в качестве длины отрезка, а в задаче о квадратуре круга необходимо геометрическое построение отрезка с длиной равной квадратному корню из Пи. Так что, квадратура круга пока остаётся нерешённой задачей.