Другие языки программирования и технологии

Вычисление суммы ряда на c++

Вот задача. В принципе почти все понятно, кроме "t". Откуда его брать и как задать в коде. Может у кого будут идеи решения этой задачи?!
Чего там решать? Бери и складывай.

#include <math.h>
#include <iostream>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
double t = 7.5;
cout << "What is t ? ";
cin >> t;
cout << "\n";

double e = 1.0e-6;
printf("t = %g\te = %g\n\n", t, e);

int k = 1;
double x = pow(t, 2*k - 1);
double s = x;
printf("k = %d\ts = %.7f\n", k, s);

do
{
x *= t;
x *= t;
x /= 2*k;
x /= 2*k + 1;
s += x;
++k;
printf("k = %d\ts = %.7f\td = %.7f\n", k, s, x);
} while (abs(x) > e);

printf("\nsh(%g) = %.7f\n", t, (exp(t) - exp(-t)) / 2);

system("pause");
return 0;
}
АА
Артем Асеев
21 360
Лучший ответ
вввод с клавиатуры
Ну t это параметр функции. В функции для проверки вместо t написали, почему то, x. Я так думаю, надо t или вводить в программу, или забить несколько значений, для проверки, или потребовать ввода (вместе с эпсилон) интервала и шага для t. Просто выводите таблицу этих значений t, дальше, ваших вычислений, и, для проверки, гиперболического синуса. Вроде, так обычно делается в подобных заданиях.
Мне вот больше непонятно условие про эпсилон равное нулю. Разность частичных сумм ведь не станет равна нулю. Если в программе задать эпсилон равным нулю, то вычисление упрется в ограничения для действительных чисел в коммпьютере (надо смотреть таблицы типов данных) . Видимо, это ограничение и надо анализировать, да. А может, если факториал вычислять в целых, упрется в ограничение по целым, надо смотреть.