Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
Вернуться
Тема: Как в С++ квадратный корень находить, если библиотеку math.h использовать нельзя?
1
  1  Бормотов Виталий Борисович (3-я школа), 25 января 2009 г. 19:54:19
      Берите x=1, затем n раз x:=(a+x*x)/(2*x); где a - число, из которого извлекаете корень. При больших n (n->+бескон.) x -> sqrt(a). (Метод последовательных приближений.) Для корня k-й степени формула приближения такова: x:=(a+(k-1)*st(x,k))/(k*st(x,k-1)), где st(a,b) - a в степени b. При b<<a sqrt(a+b) прибл. = sqrt(a)+b/(2*sqrt(a)) (можно использовать, если a - полный квадрат)
  2  Степанов Егор Владимирович, 29 ноября 2008 г. 1:27:56
      на самом деле для небольших чисел (ну там в double если помещается), то подойдет дихотомия (бинарный поиск).
  3  Афзали Б. ТРГИ, 23 ноября 2008 г. 12:42:22
      http://acmp.ru/index.asp?main=solution&id_task=146
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru