Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.10.2011, 20:34   #1
anton6262906
Пользователь
 
Регистрация: 13.10.2011
Сообщений: 23
Счастье

вот задание:
Вычислить и вывести на экран в виде таблицы значение функции,
заданной с помощью ряда Тейлора, на интервале от Хнач до Хкон с шагом dX с
точностью ε. Таблицу снабдить заголовком и шапкой. Каждая строка таблицы
должна содержать значение аргумента, значение функции и количество
просуммированных членов ряда. Для вычисления последующего члена ряда
использовать рекуррентную формулу.
вот формула думаю правильно:
arth x=∑(n=0-внизуба вверху знак безконечности)1/((2*n)+1)*pow(x,((2*n)+1))=1-pow(x,2)/1!+pow(x,4)/2!...
|x|<безконечности

вот что я нагуглил:
Код:
#include <iostream>
#include <conio.h>
#include <math.h>
#include <iomanip>
#include <locale>
#include <windows.h>
using namespace std;
//
int main()
 
{//начало кода функции main
        
setlocale (0,"rus");
double Xsrt, Xend, x, dx, t, elem, p,test=0;//объявление пременных
int n;
 
//do
//{
SetConsoleOutputCP(1251);
cout<<"Введите Xнач. и Xкон."<<endl;
cin>>Xsrt>>Xend;
while ( (Xsrt<=0) || (Xsrt>=Xend) || (Xend<1))
{
cout << "Введенные значения не удовлетворяют условию!"<<endl;
cout << "Попытайтесть еще !"<<endl;
cin>>Xsrt>>Xend;
}
getchar();
getchar();
 
cout<<"Введите точность"<<endl;
cin>>t;
while (t<0.00001)
{
cout<<"не правильное значение! попытайтесь еще!"<<endl;
cin>>t;
}
getchar();
getchar();
 
cout<<"Введите Шаг"<<endl;
cin>>dx;
//Шапка для таблицы
cout<<"------------------------------\n";
cout<<" x | F | n | arth(x) ";
cout<<endl;
//досюда все правильно!!!!!!!!!!!!!!!!!
for(x=Xsrt;x<=Xend; x+=dx)
{
n=0;
elem=((2*n)+1);
p=0;
while(fabs(elem)<t)//пока ряд тайлора меньше точности выполнять действия
{
if(x!=1)
elem=1/((2*n)+1)*pow(x,(2*n)+1);//общая формула
else
elem=0;
if ((n % 2)==0)
p=p-elem;// если n четная то прибавляем
else
p=p+elem;//иначе вычитаем из общей формулы
n++;//приращение n на единицу тоже самое что n=n+1 или n+=1
}
cout << setw(6)<<setprecision(3)<<x
<<" | "<<setw(10)<<setprecision(3)<<elem<<" | ";//setw(длина) setprecision(количество знаков после запятой
cout << setw(6)<<n<<" | "<<setw(6)<<setprecision(3)<<p<<endl;
}
//стоп до нажатия клавиши
//while(test> 9);
getch();
//system("pause");
return 0;
}//конец кода функции main/code
если можно обьясните мне что такое рекурентная формула и как ее написать)))

Последний раз редактировалось Stilet; 14.10.2011 в 08:22.
anton6262906 вне форума Ответить с цитированием
Старый 14.10.2011, 07:18   #2
Бинари
Пользователь
 
Регистрация: 23.09.2011
Сообщений: 17
По умолчанию

Рекуррентная формула - это формула, где каждый член выражается через предыдущий. На приведённом рисунке вверху твоя формула, внизу - рекуррентная формула для этой функции.
Изображения
Тип файла: gif rek.gif (2.6 Кб, 156 просмотров)
Бинари вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать программу с рекурсивной функцией, вычисляющей: S по формуле. Figushkin Помощь студентам 8 04.06.2010 14:58
Составить программу для вычисления величины у при заданном х по формуле: Dj Malinovsky Помощь студентам 4 25.03.2010 21:16
8. Составить программу для расчета выражения ivil19 Помощь студентам 4 11.03.2010 18:25
Помогите написать программу! Печать значений элементарных функций по формуле Тейлора Utah_jazz Общие вопросы C/C++ 2 06.12.2009 22:08