Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
5 / 7 / 3
Регистрация: 05.11.2011
Сообщений: 97

Приближение функции многочленом Лагранжа

09.04.2013, 19:07. Показов 3523. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, нужно написать программу, которая вычисляет приближение функции многочленом Лагранжа.
Все реализовал, но возникла непонятка с результатом:

как я делаю:
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
const int n = 2;
double A[n+1][n+1] = {0};
double a = -2, b = 2;
const double h = (b - a)/n;
 
 
double pr(double x, int i)
{
    double temp =1;
    for ( int j = 0; j<=n; j++)
    {
        if ( j != i )
            temp *= (x - (a+j*h)) / ((a+i*h) - (a+j*h));
    }
    return temp;
 
}
double lag(double x)
{
    double temp = 0;
    for ( int i = 0; i<n+1; i++)
        temp += A[0][i] * pr(x,i); 
    return temp;
}
double func(double x)
{
    return abs(x*x+x);
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int k = 0;
    for ( double i = 0; i<n+1; i++)   //заполнили первый столбец
        {
            A[k][0] = func(a+i*h);
            k++;    
        }
    int l = n+1;
for ( int j = 1; j<n+1; j++)   // создали треугольную матрицу
        {
            for ( int i = 0; i<l-1; i++)
            {
                A[i][j] = A[i+1][j-1] - A[i][j-1];
            }
            l--;
        }
1. Создаю треугольную матрицу, потом беру первую строку матрицы и использую её в качестве y0...yn
2. Сама функция pr - она считает произведение частных разностей отрезка.
Проверил все на бумаге для n = 2, по идеи все сходится, но ответ отличается очень сильно между func(x) и lag(x) и на погрешность списать нельзя.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.04.2013, 19:07
Ответы с готовыми решениями:

Приближение функции многочленом с точностью до o(x^5)
Приблизить функцию y =1/7arctg (2/5х) многочленом с точностью до o(x5) при x → 0

Найти приближение функции, заданной в точках, многочленом, значения которого совпадают со значениями функции
1. Нужно чтобы на графике этой функции plot(5*x^2+2*x-4). На оси х были корни через которые проходит парабола. 2. Лабораторная работа...

Интерполяция функции двух переменных многочленом Лагранжа
Зосима, Написать программу в Matlab, тема: Интерполяция функции двух переменных...(функции любые). Не могу понять, что требуется от...

2
1255 / 705 / 359
Регистрация: 20.02.2010
Сообщений: 1,035
09.04.2013, 20:48
Если не ошибаюсь для применения интерполяционного многочлена Лагранжа необходимо, чтобы функция имела непрерывные производные на отрезке [a, b].
Или смените отрезок интерполирования или саму функцию.
0
5 / 7 / 3
Регистрация: 05.11.2011
Сообщений: 97
10.04.2013, 12:16  [ТС]
хм, саму функцию и отрезок не я выбирал, такое задание. По хорошему они должны отличаться совсем ненамного , чтобы построить график погрешности по нормальному, но при значении 2, к примеру, func(2) = 6, lag(2) = 8. Хоть многочлен 2 степени, но врятли такая погрешность.

Добавлено через 15 часов 17 минут
В общем разобрался в чем проблема, однако возникает вопрос.
Беру матрицу 11х11 - многочлен 10 степени.
Вывожу значения func(x) и lag(x) - и выходит, что значения абсолютно одинаковые ( нету погрешности ). И как с этим быть?
Потому что надо строить график погрешностей, а её и нету
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.04.2013, 12:16
Помогаю со студенческими работами здесь

Интерполяция функции двух переменных многочленом Лагранжа
Задача интерполяции функции двух переменных. Теория взята отсюда Расчет полинома на рис.3 В заданных точках решение верное (рис.4...

Интерполяция многочленом Лагранжа
Задание. Вычислить массив значений заданной функции y=f(x) на отрезке с шагом △x=(b-a)/n т.е. задать таблицу (xi,yj) для ...

Интерполяция многочленом Лагранжа
Добрый вечер. В программировании не разбираюсь абсолютно. Пытаюсь реализовать данный код в Матлабе: % задание узлов интерполяции ...

Интерполяция многочленом Лагранжа
Вычислить массив значений заданной функции y=f(x) на отрезке с шагом △x=(b-a)/n т.е. задать таблицу (xi,yj) для I = 0,1, 2, …, n. С...

Интерполяция многочленом Лагранжа
подскажите, есть ли стандартная реализация функции интерполирования методом Лагранжа, как, например, для мнк?


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru