| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Вычисление суммы ряда sh(x) |
| Автор: cuore 22.11.2012, 00:21 | ||
| Необходимо вычислить с помощью ряда значение гиперболического синуса sh(x), в задаваемом интервале, с задаваемым шагом изменением х, и начальным значением х (данные вводим с клавиатуры). Ряд разложения: (x^(2n+1)) / (2n+1)! Пишу так:
Выводит что-то совершенно невнятное. Где ошибка? |
| Автор: feodorv 22.11.2012, 02:52 | ||||
Если это вычисление (2n+1)!, то оно не верное:
Никакого множителя (2*n-1) здесь нет. Потом при n=0 у Вас f обращается в 0, на которое Вы потом делите, странно, что вообще хоть что-то выводит, пусть и невразумительное. При n=0 факториал имеет значение 1 и рекурсивно не вычисляется:
Далее, перед циклом по n у Вас переменная sh не обнуляется (обнулить можно и сразу после печати), абсорбируя в себя значения, вычисленные на каждом шаге (интеграл от sh получается). Аналогично f нужно передёрнуть в 1. y, кстати, тоже (чтобы условие y > eps удовлетворить). |