1. Сумма чисел
Хотел научить свою программу самостоятельно вычислять квадратные корни. Но оказалось, что ни какой формулы не существует. Лишь только тупой подбор чисел! Меня заинтересовала эта проблема и я обнаружил несколько интересных закономерностей, одна из которых ускорит процесс вычисления квадратных корней. Хотя, возможно о некоторых из них уже известно.
Для начала мы договоримся, число из которого нужно извлечь корень это площадь квадрата. Первое, что я сделал - составил таблицу:
x | x^2 | x^2-(x-1)^2 |
1 | 1^2=1 | 1-0=1 |
2 | 2^2=4 | 4-1=3 |
3 | 3^2=9 | 9-4=5 |
4 | 4^2=16 | 16-9=7 |
5 | 5^2=25 | 25-16=9 |
6 | 6^2=36 | 36-25=11 |
7 | 7^2=49 | 49-36=13 |
8 | 8^2=64 | 64-49=15 |
9 | 9^2=81 | 81-64=17 |
10 | 10^2=100 | 100-81=19 |
Обратите внимание на правую часть таблицы, например 25-16=9. Если к результату прибавить 1 и разделить на 2, то получим квадрат из 25 (9+1):2=5. А если отнять 1 и снова разделить на 2, то получим квадратт из 16 (9-1):2=4!!!
Теперь напишем формулу. Пусть a - площадь малого квадрата, b - площадь большого квадрата, c - разность сторон, x - сторона большого квадрата, x=(b-a-c^2):2c
Пример: a=9, b=2809, c=50, x=(2809-9+50^2):2*50, x=(2800+2500):100, x=5300:100, корень из 2809 это 53!
Снова обратимся к правой части таблицы. Числа постоянно увеличиваются на два - 1; 3; 5... Очевидно, что это арифметическая прогрессия. К тому же, если складывать эти числа, то рано или поздно получим число, из которого нужно извлечь корень. Тогда к последнему слагаемому прибавить 1 и разделить на 2, корень будет найден!
Пример №1: Нужно извлечь корень из 16. 1+3+5+7=16 16=16! Последнее слагаемое было 7, пишем (7+1):2=4. Корень из 16 равен 4. А можно просто сосчитать, сколько чисел мы сложили, это и будет ответом! 1 - первое число, 3 - второе число, 5 - третье число, 7 - четвертое число, значит ответ 4! Но если сумма чисел окажется больше чем число из которого извлекаете корень, тогда последнее слагаемое считать не надо, вам останется лишь подобрать десятые, сотые доли.
Пример №2: Нужно извлечь корень из 30. 1+3+5+7+9+11=36 36>30. Последнее слагаемое было 11 и так как сумма чисел больше 30, то вычитаем 1, пишем (11-1):2=5. Корень из 30 больше 5, вам осталось лишь подобрать десятые, сотые доли.
2. Количество знаков
Есть некое число из которого нужно извлечь корень. В нем 7 знаков до запятой. Наша задача сократить количество попыток для нахождения корня. Для этого 7 делим на 2 без остатка 7:2=3, затем полученный результат вписываем вместо степени 3,2*103=3200. Корень из семизначного числа меньше чем 3200. Это можно проверить 3200^2=10240000. В результате 8 знаков.
3. Не много геометрии
И так, формула не найдена, поскольку нельзя производить вычисление только с одним числом. Поэтому квадрат нужно «привязать» к чему-нибудь, например к кругу.
Начертим круг с диаметром равным 10, а также впишем квадрат рис. 1
http://starcat.nm.ru/img/koren1.jpg Обратите внимание, что в квадрате два треугольника. Чтобы вычислить площадь квадрата, возводим диаметр в квадрат и делим его двумя чертами по диагонали рис. 2
http://starcat.nm.ru/img/koren1.jpg Получаем четыре треугольника, в два раза больше чем нужно, поэтому результат делим попалам. Мы получили формулу для вычисления площади квадрата d^2:2; 10^2:2=50. Вычисляем площадь круга 3,14*(10:2)^2=78,5
Давайте узнаем во сколько раз площадь круга больше площади квадрата 78,5:50=1,57. На что по вашему похоже число 1,57? Оно похоже на ПИ деленное на два. Забавно, правда?
Например, нужно извлечь корень из 16. Мы можем вычислить площадь круга 16*3,14:2=25,12. Теперь у нас два числа 16 и 25,12. Но что делать дальше я не знаю. Все что осталось вычислить это длину окружности или хотя бы диаметр, без использования корней конечно. Тогда можно считать, что формула готова!!!