Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Марк86
3 / 3 / 0
Регистрация: 18.11.2011
Сообщений: 8
1

Лагранжевая интерполяция

18.11.2011, 15:37. Просмотров 984. Ответов 2
Метки нет (Все метки)

Составить программу...
0
Миниатюры
Лагранжевая интерполяция  
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2011, 15:37
Ответы с готовыми решениями:

Интерполяция заданной функции второй формулой Ньютона (обратная интерполяция)
Программа накапливает ошибку, да и первые значения совсем уже "приближённые"....

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

Квадратичная интерполяция
привет. можешь пожалуйста помочь из созданием программы для вычисления ...

Квадратичная интерполяция
Здравствуйте,не понимаю,что не так,все сделано по алгоритму ,алгоритм и пример...

Интерполяция Лагранжа
Добрый день! Помогите пожалуйста найти ошибку в программе, битый день делаю, я...

2
Jupiter
Каратель
Эксперт С++
6570 / 3991 / 400
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
18.11.2011, 16:05 2
Лучший ответ Сообщение было отмечено Марк86 как решение

Решение

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
#include <vector>
 
class LagrangePolynomial {
        std::vector< double > __x;
        std::vector< double > __y;
        double __fraction(const double, size_t) const;
public:
        LagrangePolynomial( const std::vector< double >& x,
                            const std::vector< double >& y
                          ) : __x(x), __y(y) {}
        double operator () (const double x) const;
};
 
double LagrangePolynomial::__fraction(const double x, size_t i) const
{
        double num(1), denum(1);
        for( size_t k = 0; k < __x.size(); k++ )
                if( k != i ) num *= ( x - __x[k] );
 
        for( size_t k = 0; k < __x.size(); k++ )
                if( k != i ) denum *= ( __x[i] - __x[k] );
 
        return num / denum;
}
 
double LagrangePolynomial::operator ()(const double x) const
{
        double sum(0);
        for( size_t i = 0; i < __y.size(); i++ )
                sum += __y[i] * __fraction(x, i);
 
        return sum;
}
1
Марк86
3 / 3 / 0
Регистрация: 18.11.2011
Сообщений: 8
18.11.2011, 18:40  [ТС] 3
Спасибо большое!!!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2011, 18:40

Интерполяция Лагранжем
Товарищи,очень прошу помочь не получается доделать задание((( сделал решение...

Линейная интерполяция
Как правильно написать программу линейной интерполяции? С чего начать...

Интерполяция изображения c++
Как сделать интерполяцию изображения если есть например диапазон от 30 до 110....


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru