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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2014, 11:52   #1
dima2308
Пользователь
 
Регистрация: 03.10.2014
Сообщений: 29
По умолчанию Вычисление значения функции с помощью ряда тейлора

Здравствуйте!
Написал код программы, которая вычисляет значение такой функции:
Проблема в том, что программа не считает значение при x=1, хотя по области определения оно должно существовать.
Помогите разобраться, в чём проблема.
Сам код вот:

Код:
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <conio.h>

using namespace std;
long double Sum(long double x, long  double n)
{
	long double a, b, c = 0;
	a = 0; b = 1; int i = 0;
	while (1)
	{
		b = 0;
		for (int j = 1; j <= i; j++)
		{
			b++;
		}
		a = pow((double)-1, i)*pow(x, i+1) / (b+1);
		c += a;
		i++;
		if (fabs(a)<n)
		{
			break;
		}
	}
	return c;
}
int main()
{
	long double x;
	long double a, b, c;
	long double e = 1e-6;
	cout << "Vvedite x na intervale (-1;1]: ";
	cin >> x;
	cout <<"Taylor: " << Sum(x, e)<<'\n'<<"Proverka: " <<log(x+1);
	getch();
	return 0;
}
Изображения
Тип файла: jpg Безымянный.jpg (16.8 Кб, 138 просмотров)
dima2308 вне форума Ответить с цитированием
Старый 16.11.2014, 11:54   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Напиши в начале а = х и начинай цикл с двойки.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.11.2014, 12:52   #3
dima2308
Пользователь
 
Регистрация: 03.10.2014
Сообщений: 29
По умолчанию

Начал цикл с двойки - программа вообще неправильно считать стала, да и при x=1 снова ничего не происходит.
dima2308 вне форума Ответить с цитированием
Старый 16.11.2014, 13:25   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Не понимаю, что вообще тут происходит?
Не понимаю... Ну да ладно.
Вот пример похожего ряда: http://www.programmersforum.ru/showp...1&postcount=35
Только тут факториал еще прилеплен. Думаю тебе стоит оторвать оттуда идею в свою пользу.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.11.2014, 09:18   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Я так понял, прогнать прогу под дебаггером религия не позволяет, да? Или сексуальная ориентация?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Таблица значинений функции, заданной с помощью ряда Тейлора deekey063 Паскаль, Turbo Pascal, PascalABC.NET 4 27.10.2014 14:35
Значения функции, ряд Тейлора ildar28 C# (си шарп) 0 05.05.2013 20:36
Вычисление функции с разложением в ряд Тейлора gulllak Общие вопросы C/C++ 0 27.12.2012 20:11
Вычисление функции с помощью ряда Тейлора Wast Общие вопросы C/C++ 6 25.12.2011 19:42
вычисление значения функции и переменных, вычисление площади треугольника, определение расстояния между точками на турбо паскале _4Alex4_ Помощь студентам 2 14.12.2011 01:43