С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 12.01.2018
Сообщений: 3
1

Полином Лагранжа на C++

22.01.2022, 04:53. Показов 2865. Ответов 3

Author24 — интернет-сервис помощи студентам
Всем привет, долго искал (и так не нашёл) алгоритм поиска интерполяционного многочлена Лагранжа. Есть алгоритмы, которые находят его значение в определённой точке, но мне бы хотелось узнать как можно вывести именно коэффициенты этого полинома, и уже потом с ними работать самостоятельно.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.01.2022, 04:53
Ответы с готовыми решениями:

Полином Лагранжа
Написать программу для нахождения коэффициентов a, b и с функции g(x)=ax2+bx+c, используя формулу...

полином Лагранжа
Доброго времени суток! Нужно проинтегрировать полином Лагранжа. есть код на паскале, нужно...

Интерполяционный полином Лагранжа
Привет всем! ;)Такой вопрос, имею лабораториум по програмированию и получил несколько заданий, это...

Интерполяционный полином Лагранжа
Дана функция f(x) = xln(x) + 2xcos(x) a = 1; b = 2; Вычислить значение полинома Лагранжа. P.s....

Интерполяционный полином Лагранжа
Помогите пожалуйста есть программа когда нужно по заданному х=4 найти у Теперь мне нужно сделать...

3
Эксперт функциональных языков программированияЭксперт С++
4183 / 2034 / 961
Регистрация: 01.06.2021
Сообщений: 7,137
Записей в блоге: 7
22.01.2022, 12:02 2
Программа запрашивает ввести n - количество точек
например, если n = 3, то интерполяционная функция y(X) строится из списка известных точек:
{[x0, y0],[x1, y1],[x2, y2]}

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
 
int main()
{
    cout << "n = ";
    int n; cin >> n;
    for (int i=0; i<n; i++)
    {
        cout << "y[" << i << "]";
        for (int j=0;j<n;j++)
        {
            if (j!=i)
                cout << " * (X - x[" << j << "]) / (x[" << i << "] - x[" << j << "])";
        }
        cout << " +\n";
    }
}
1
Модератор
Эксперт функциональных языков программированияЭксперт Python
37413 / 20785 / 4278
Регистрация: 12.02.2012
Сообщений: 34,196
Записей в блоге: 14
22.01.2022, 19:36 3
Цитата Сообщение от landby Посмотреть сообщение
вывести именно коэффициенты этого полинома
- перед соответствующими степенями х?

Добавлено через 5 часов 42 минуты
Если что вот вполне годная функция:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
 
using namespace std;
 
double lagrange(double *arrx, double *arry, int n, double x)
{
    double q,num,den;
    q=0;
    
    for (int i=0; i<n; i++)
    {
        num=den=1.0;
        for (int j=0; j<n; j++)
        {
            if (j != i)
            {
                num=num*(x-arrx[j]);
                den=den*(arrx[i]-arrx[j]);
            }
        }
        q=q+arry[i]*num/den;
    }
    return q;
}
 
int main()
{
    double ax[]={1,2,3};
    double ay[]={0,5,-4};
 
    double x;
    
    for (x=0; x<5; x+=0.1)
    {
        cout << x << " " << lagrange(ax,ay,3,x) << endl;
    }
 
    return 0;
}
1
0 / 0 / 0
Регистрация: 12.01.2018
Сообщений: 3
22.01.2022, 20:25  [ТС] 4
Да! Именно коэффициент перед иксами, задача заключается в автоматическом выводе самого полинома, а не его значений. Как на сайте https://planetcalc.ru/8692/
0
22.01.2022, 20:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.01.2022, 20:25
Помогаю со студенческими работами здесь

Полином Лагранжа и Чебышева
Неправильно выводит погрешность #include &quot;iostream&quot; #include &quot;math.h&quot; using namespace std; ...

Вычислить интерполяционный полином Лагранжа
Здравствуйте! Помогите исправить ошибку в коде. Необходимо для индивидуальной функции вычислить...

Полином Лагранжа - Сделать интерполяцию по точкам
Необходимо сделать интерполяцию по точкам. Не могу найти ошибку(выдает неправильные значения в...

Пользуясь интерполяционный полином Лагранжа, вычислить приближенное значение функции
Здравствуйте! Помогите с заданием: Функция y=f(x) задана таблицей. Пользуясь интерполяционный...

Не могу исправить ошибку в программе вычисляющей интерполяционные полином Лагранжа
#include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;functional&gt; using namespace std; ...

Построить по имеющимся данным интерполяционный полином Лагранжа и вычислить значение функции в точке x
Построить по имеющимся данным интерполяционный полином Лагранжа и вычислить значение функции в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru