Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как калькулятор находит корень заданного числа?

ТехнологииМатематика+3
Дима Гричанюк
  · 82,9 K
Первый
аналитик в Fuzzy Logic Labs, преподаватель департамента Механики и мехатроники РУДН  · 12 авг 2016

Реалистичнее всего в условиях крайне ограниченного объема вычислительной мощности калькулятора – использование метода Ньютона. Для квадратного корня он, если коротко и просто, заключается в следующем.

Пусть, например, ищется корень числа 13. Берем в качестве ответа любое число. Например, единицу. Считаем полусумму значений этого возможного ответа и исходного числа, делённого на этот «ответ»: 

(1 + 13/1) / 2 = 7

Теперь вероятным ответом будет 7. Повторяем приём ещё несколько раз:

(7 + 13/7) / 2 = 4,4286

(4,4286 + 13/4,4286) / 2 = 3,682

(3,682 + 13/3,682) / 2 = 3,606

И так далее. Уже сейчас ошибка очень маленькая: если проверить и возвести 3,606 в квадрат, получится 13,0057. Калькулятору очень легко делать сложения и чуть сложнее деления, но цепочку таких операций он может провести довольно быстро.

Увы, но этот вариант нахождения корня не будет действовать для единицы

Привет. После лекций по мат.анализу я помню такую интересную штуку: компьютер наш владеет лишь операциями сложения (вычитания), умножения и деления. Соответственно, может решать многочлены. Но вот наши замечательные функции вроде корня из X, SinX, CosX, e^X (и т.д.) многочленами не являются (для каждого случая есть доказательство, мол, почему не являются. Ну, например... Читать далее

Компьютер умеет только складывать. Все остальное так же делается через сложение )

Что-то связанное с компьютерами  · 28 окт 2016

Может использоваться алгоритм быстрого обратного квадратного корня, вычисляющий по данному x число 1/sqrt(x) исключительно при помощи магии.