Форум программистов, компьютерный форум CyberForum.ru

написать программу вычисляющие ИМЛ с помощью узлов Чебышева - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
Александр "КАС"
 Аватар для Александр "КАС"
1 / 1 / 0
Регистрация: 19.01.2011
Сообщений: 134
08.10.2011, 13:07     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #1
помоги кто чем может а...
C++
1
cout<<"Help me"<<endl;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.10.2011, 13:07     написать программу вычисляющие ИМЛ с помощью узлов Чебышева
Посмотрите здесь:

C++ Написать программу,которая вычисляет значение арифметического выражения записанного в постфиксной форме,с помощью стека
C++ Написать программу с помощью цикла
Написать программу для нахождения значения функции с помощью ряда Тейлора C++
C++ Написать программу, вычисления площади фигуры Программа должна управляться с помощью меню из шести пунктов:
C++ Написать рекурсивную и не рекурсивную функции вычисления полинома Чебышева первого ряда:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
08.10.2011, 13:56     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #2
Цитата Сообщение от Александр "КАС" Посмотреть сообщение
ИМЛ
это что?
1-я ссылка гугла при запросе "ИМЛ" - Институт марксизма-ленинизма — Википедия
KuKu
 Аватар для KuKu
1538 / 1016 / 69
Регистрация: 17.04.2009
Сообщений: 2,946
08.10.2011, 16:04     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #3
C++
1
'cout' was not declared in this scope
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
08.10.2011, 23:20     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #4
ИМЛ - это интерполяционный полином Лагранжа?
Если да, то предположим функцию надо проинтерполировать на отрезке [a,b] в n+1 точке
Тогда узлы Чебышева вычисляешь по формуле http://www.cyberforum.ru/cgi-bin/latex.cgi?{x}_{k}=\frac{a+b}{2}+\frac{b-a}{2} {t}_{k},  {t}_{k}=cos( \frac{2k+1}{2n+2} \pi ), k=0,1...n
По ним строишь таблицу функции, а по полученной таблице строишь многочлен Лагранжа. Его формула есть в Википедии. Он представляет собой сумму произведений. т.е. реализуется в виде вложенных циклов
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
08.10.2011, 23:42     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #5
aeshes, вы так прекрасно описали алгоритм решения задачи. в чем же проблема?
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
09.10.2011, 00:13     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #6
alkagolik, а разве обязательно сразу писать код? Должны же мы стимулировать людей хоть немного подумать?

Ну и хотелось бы увидеть хотя бы вид функции, для которой выполняется интерполяция
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
09.10.2011, 00:40     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #7
Цитата Сообщение от aeshes Посмотреть сообщение
Должны же мы стимулировать людей хоть немного подумать?
я перепутал вас с ТС, простите
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
09.10.2011, 00:45     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #8
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
double X[4], Y[4]; //4 узла по Чебышеву
//полином Лагранжа
double fraction(double x, unsigned i)
{
  double num = 1.0, denum = 1.0;
  for(unsigned k = 0; k < 4; k++ )
     if( k != i ) num *= (x - X[k]);
  for(k = 0; k < 4; k++ )
     if( k != i ) denum *= ( X[i] - X[k] );
  return num / denum;
}
 
double Lagrange(double x)
{
  double sum = 0.0;
  for(unsigned i = 0; i < 4; i++ )
     sum += Y[i] * fraction(x, i);
  return sum;
}
 
const double a = -1.0;
const double b = 2.0;
 
int main()
{// формируем узлы Чебышева на [a, b] для функции f(x)
  for(unsigned i = 0; i < 4; i++)
  {
     X[3-i] = 0.5 * (a + b) + 0.5 * (b - a) * cos(M_PI*(2*i + 1)/8.0);
     Y[3-i] = f(X[3-i]);
  }
...
}
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
09.10.2011, 01:11     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #9
Jupiter, никогда не видела кода для Лагранжа с вынесением произведения в функцию, в университете нам говорили делать как вложенный цикл. Можете объяснить, в чем причина такого подхода - вам просто так удобнее или есть какие-то объективные причины типа быстродействия программы и т.п.?
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
09.10.2011, 01:56     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #10
aeshes, выносил для удобства восприятия кода, это упрощенный отрывок из моего проекта, который крупнее чем просто лабораторная, так что когда видишь внутри цикла два и более вложеных цикла, начинает напрягать
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.10.2011, 02:04     написать программу вычисляющие ИМЛ с помощью узлов Чебышева
Еще ссылки по теме:

C++ Написать программу что меняло слово "кукушка" на "груша", с помощью стека
Написать программу для вычисления выражения с помощью рекурсивной функции C++
C++ С помощью цикла написать программу вычисления числа Фибоначчи

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

Или воспользуйтесь поиском по форуму:
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
09.10.2011, 02:04     написать программу вычисляющие ИМЛ с помощью узлов Чебышева #11
Jupiter, спасибо за объяснение
Yandex
Объявления
09.10.2011, 02:04     написать программу вычисляющие ИМЛ с помощью узлов Чебышева
Ответ Создать тему
Опции темы

Текущее время: 17:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru