ПРЕДИСЛОВИЕ
x² - 2x*dx + dx² = (x - dx)²
При x >> dx, значением dx² можно пренебречь и считать его равным нулю.
Тогда x² - 2x*dx = (x - dx)²
АЛГОРИТМ использующий указанное округление
например посчитаем корень квадратный числа 563453.
1. Найдём квадрат больше 563453. Нам подойдёт 640000 = 800²
2. 640000 - 563453 = 76547
3. 76547 / (800*2) = 47.84 ~ 48
4. 800 - 48 = 752
Проверяем 752 * 752 = 565504
Если нужно более точное значение, то можем повторить предыдущих 4 шага, но вместо 800² уже можем взять 752² (ведь оно ближе к исходному)
1. 752² = 565504 больше, чем 563453 (подходит)
2. 565504 - 563453 = 2051
3. 2051 / (752 * 2) = 1.36
4. 752 - 1.36 = 750,64
750.64 * 750.64 = 563460.4096
Как видим результат стал значительно точнее, а уже на следующей итерации получится число
750.635065² = 563453.000808
Как видим точность, которой могли бы позавидовать некоторые калькуляторы :)
Естественные науки
Существует ли формула, по которой можно найти приближённый квадратный корень числа?
1. есть алгоритм вычисления "уголком", не знаю, как сейчас, раньше в школе проходили, 8-й класс, не сложнее деления уголком.
2. есть древний сверхбыстрый алгоритм (в самом деле - метод Ньютона, он же - касательных).
Хотим извлечь корень из А, обозначим точный корень как r.
Возьмем какое-то начальное приближение r0. Вообще-то можно взять какое попало положительное число, но быстрее будет, если мы возьмем r0 больше, чем r, но не намного больше.
Например, если надо извлечь из А=123456, можно взять 400 - знаков вдвое меньше, первая цифра 4 в начале - что-то около корня из 12. Если лень - можно взять просто r0=A.
А теперь посмотрим на число A/r0: если у нас r0 < r, то A/r0 > r, и наоборот, если у нас r0 > r, то A/r0 < r.
Значит неизвестный нам точный корень r лежит где-то между r0 и A/r0. Давайте возьмем в качестве нового приближения середину этого отрезка, то есть r1=(r0 + A/r0) / 2. Потом так же получим следующее приближение итд.
Такой метод удваивает число точных знаков на каждом шаге, так что долго считать не придется.
Например:
400.00000000000000
354.32000000000000
351.37539850982200
351.36306031259300
351.36306009596400
351.36306009596400
- все сошлось на 15 знаков точности
2. есть древний сверхбыстрый алгоритм (в самом деле - метод Ньютона, он же - касательных).
Хотим извлечь корень из А, обозначим точный корень как r.
Возьмем какое-то начальное приближение r0. Вообще-то можно взять какое попало положительное число, но быстрее будет, если мы возьмем r0 больше, чем r, но не намного больше.
Например, если надо извлечь из А=123456, можно взять 400 - знаков вдвое меньше, первая цифра 4 в начале - что-то около корня из 12. Если лень - можно взять просто r0=A.
А теперь посмотрим на число A/r0: если у нас r0 < r, то A/r0 > r, и наоборот, если у нас r0 > r, то A/r0 < r.
Значит неизвестный нам точный корень r лежит где-то между r0 и A/r0. Давайте возьмем в качестве нового приближения середину этого отрезка, то есть r1=(r0 + A/r0) / 2. Потом так же получим следующее приближение итд.
Такой метод удваивает число точных знаков на каждом шаге, так что долго считать не придется.
Например:
400.00000000000000
354.32000000000000
351.37539850982200
351.36306031259300
351.36306009596400
351.36306009596400
- все сошлось на 15 знаков точности
Не формула, а алгоритм.
http://hijos.ru/2010/12/22/izvlechenie-kvadratnogo-kornya-v-stolbik/
http://hijos.ru/2010/12/22/izvlechenie-kvadratnogo-kornya-v-stolbik/
a^b=e^b*ln(a)
где b любое чилсо в данном случае 1/2
экспонента и натуральный логарифм можно найти в таблице
или расчитать через сумму ряда Тейлора но это слишком трудозатратно будет
Другой способ это Метод Хорд
где b любое чилсо в данном случае 1/2
экспонента и натуральный логарифм можно найти в таблице
или расчитать через сумму ряда Тейлора но это слишком трудозатратно будет
Другой способ это Метод Хорд
Денис Ишмухаметов
нафиг метод хорд, когда есть более простой и понятный метод касательных, сходящийся несравнимо быстрее!
sqrt(1 + a) примерно равно 1 + a/2. если а намного меньше 1
пользование поясню на примере.
предположим нужно оценить квадратный корень из 5. выносим 4 за скобки и получаем, что 2*sqrt(1 + 1/4) что примерно равно 2*1.125 = 2.25
точное значение: 2,236067977...
Не так плохо. Согласитесь.
пользование поясню на примере.
предположим нужно оценить квадратный корень из 5. выносим 4 за скобки и получаем, что 2*sqrt(1 + 1/4) что примерно равно 2*1.125 = 2.25
точное значение: 2,236067977...
Не так плохо. Согласитесь.
есть-такая!
Похожие вопросы
- Дайте, плз, формулу, по которой непрограммируемый калькулятор вычисляет квадратные корни?
- Почему число пи не равно квадратному корню из десяти?
- как ДОКАЗАТЕЛЬНО(!) расставить в порядке возрастания ряд следующих чисел: квадратный корень из 2....
- как найти квадратный корень из десятичного числа?
- Можно ли найти последующий квадрат числа, зная только сам квадрат и не зная ни корня числа, ни его предыдущего квадрата?
- как без калькулятора вычислит 5 в степени квадратный корень из 2( то есть квадратный корень а под ним 2) спасибо
- Почему не может получится число "-2" при изъятии квадратного корня из "4"(прошу обяснить)?
- Как на бумаге, без калькулятора вычислить квадратный корень какого-либо числа?
- Квадратный корень из числа в столбик. Как вычисляется? Именно так, карандашом на бумаге интересует
- Можно ли начать изучать физику, если я не знаю математику Я вот не знаю что такое квадратный корень, десятичные дроби