TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Репетитор IT men

3 Sep, 12:27

Открыть в Telegram Поделиться Пожаловаться

⚙️ О способе вычисления корней n-ой степени 🌱

Наткнулся на интересную задачку. Решил реализовать алгоритм вычисления корня n-ой степени из произвольного положительного числа. Уже приводил возможную реализацию для нахождения квадратного корня. Но в этом случае решение получается более обобщенным. Это первый рабочий алгоритм, написанный на коленке. Нужно еще поразмышлять о сложности и возможностях ускорения.

В данном решении я использую идею относительно неплохого начального приближения. Затем последовательным делением находится второе приближение корня n-ой степени. Далее считается новое приближение с помощью усреднение двух текущих. Последовательно алгоритм сходится к нужному корню с наперед заданной погрешностью. Это немного похоже на метод последовательной релаксации ( численные методы решения ).

📝 Код программы 📄
https://pastebin.com/ztnz7g2E
https://ideone.com/OUEzGA

#include

double mabs(double x){ return (x < 0)? -x : x; }

int main(void) {
double num = 8;
int rootDegree = 3;

printf("Число а = %f\n", num);
printf("Степень n = %d\n", rootDegree);

double eps = 0.00001;
double root = num / rootDegree;
double rn = num;
int countiter = 0;
while(mabs(root - rn) >= eps){
rn = num;
for(int i = 1; i < rootDegree; i++){
rn = rn / root;
}
root = 0.5 * ( rn + root);
countiter++;
}
printf("root = %f\n", root);
printf("Число итераций = %i\n", countiter);

return 0;
}

#программирование #математика #информатика #численные_методы

👨🏻‍💻 Репетитор IT men // @mentor_it

18.9k 2 78 10
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot