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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2013, 13:15   #1
boomboom
Новичок
Джуниор
 
Регистрация: 19.04.2013
Сообщений: 4
Восклицание Ряд тейлора.

Добрый день.
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на интервале Хнач до Хкон с шагом dx с погрешностью е. Таблицу снабдить заголовком и шапкой. Каждая строка таблицы должна содержать значение аргумента, значение функции и количество просуммированных членов ряда.
Изображения
Тип файла: png Снимок.PNG (4.4 Кб, 55 просмотров)
boomboom вне форума Ответить с цитированием
Старый 19.04.2013, 13:23   #2
ROD
Linux C++ Qt ARM
Старожил
 
Аватар для ROD
 
Регистрация: 30.11.2008
Сообщений: 3,030
По умолчанию

И что, вы предлагаете нам это сделать за вас?
Дилетант широкого профиля.

"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс
ROD вне форума Ответить с цитированием
Старый 19.04.2013, 13:31   #3
boomboom
Новичок
Джуниор
 
Регистрация: 19.04.2013
Сообщений: 4
По умолчанию

Цитата:
Сообщение от ROD Посмотреть сообщение
И что, вы предлагаете нам это сделать за вас?
#include <iostream>
#include <conio.h>
#include <math.h>
#include <iomanip>
#include <clocale>
using namespace std;
void validcin(double &ch);


int main(){
double Xstart,Xend,x,dx,e,f,realF;
int cnt;
setlocale(LC_ALL,"rus");

cout<<"Введите x начальное:"<<endl;
cin>>Xstart;
validcin(Xstart);

cout<<"Введите x конечное :"<<endl;
cin>>Xend;
validcin(Xend);

cout<<"Vvedite E"<<endl;
cin>>e;

cout<<"Vvedite shag"<<endl;
cin>>dx;
//------
cout<<"--------------------------\n";
cout<<" x | F | cnt | ln(1-x) ";
cout<<endl;

for(x=Xstart;x<=Xend; x+=dx)
{
f = 0;
realF = log(1-x);
cnt = 0;
while(fabs(realF-f)>e)
{
cnt++;
f -= pow(x,cnt)/cnt;
}
cout<<setw(6)<<setprecision(2)<<x<< " | "<<setw(10)<<setprecision(7)<<f <<" | ";
cout<<setw(3)<<cnt<<" | "<<setw(10)<<setprecision(7)<<realF <<endl;
}
return 0;
}

void validcin(double &ch){
while (cin.fail() || -1<ch<1)
{
cin.clear();
cin.ignore(numeric_limits<streamsiz e>::max() , '\n');
cout<<"Повторите ввод:";
cin>>ch;
}
}

Нет. я забыл влепить готовое моё. Я не пойму правильно работает лии. Я докачиваю эксель что бы тестовые данные проверить.
boomboom вне форума Ответить с цитированием
Старый 19.04.2013, 14:07   #4
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Я докачиваю эксель что бы тестовые данные проверить.
Калькулятора из стандартной поставки Windows вообще-то достаточно.

Более того, условие
Код:
while(fabs(realF-f)>e)
гарантирует Вам, что на выходе из цикла f будет достаточно близко к realF. Другое дело, что это, по-хорошему, жульничество (потому что для вычисления значения функции Вы пользуетесь уже вычисленным значением функции) - но если Ваш преподаватель этого не потрудился объяснить, то можно сдать и так.
Abstraction вне форума Ответить с цитированием
Старый 19.04.2013, 14:11   #5
boomboom
Новичок
Джуниор
 
Регистрация: 19.04.2013
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Abstraction Посмотреть сообщение
Калькулятора из стандартной поставки Windows вообще-то достаточно.

Более того, условие
Код:
while(fabs(realF-f)>e)
гарантирует Вам, что на выходе из цикла f будет достаточно близко к realF. Другое дело, что это, по-хорошему, жульничество (потому что для вычисления значения функции Вы пользуетесь уже вычисленным значением функции) - но если Ваш преподаватель этого не потрудился объяснить, то можно сдать и так.
Это описано у меня в условии. По заданию надо в экселе вбить формулы и проверить это все.
Изображения
Тип файла: jpg Снимок.jpg (7.4 Кб, 124 просмотров)
boomboom вне форума Ответить с цитированием
Старый 19.04.2013, 14:14   #6
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Это описано у меня в условии.
Не-а. Условие прочитайте ещё раз. Внимательно.
Abstraction вне форума Ответить с цитированием
Старый 19.04.2013, 14:36   #7
boomboom
Новичок
Джуниор
 
Регистрация: 19.04.2013
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Abstraction Посмотреть сообщение
Не-а. Условие прочитайте ещё раз. Внимательно.
Хм. Тогда как без жульничества это описать? Если вас не затруднит. Напишите мне.
boomboom вне форума Ответить с цитированием
Старый 19.04.2013, 15:09   #8
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Хм. Тогда как без жульничества это описать?
А я не знаю кто такой fi. Возможно, имеется в виду нечто вроде
Код:
f = 0;
double fNext = -x;
cnt = 1;
while(fabs(fNext-f)>e)
{
cnt++;
f = fNext;
fNext -= pow(x,cnt)/cnt;
}
Только необходимо понимать, что в этом случае e - нифига не точность вычислений.
Abstraction вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ряд Тейлора misery24-7 Паскаль, Turbo Pascal, PascalABC.NET 5 20.06.2012 19:57
Ряд Тейлора fpm.altyev Помощь студентам 0 19.06.2012 17:08
Ряд Тейлора Антон16 Помощь студентам 2 25.05.2012 00:26
вычислить функцию с по-щью разложения в ряд.(Ряд Тейлора) feelstor Помощь студентам 2 26.12.2011 03:44
ряд Тейлора Inkognito99 Помощь студентам 2 17.05.2010 22:03