![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 13.11.2012
Сообщений: 41
|
![]()
Программа высчитывает значение функции и значение этой функции через ряд в данной точке.
Вроде все высчитывается. Но при х>6 ну или где то около этого начинают огромные числа выводится. Вводил большую-маленькую точность. Уменьшал шаг. Все равно получается не то. Посмотрите пожалуйста в чем ошибка. Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
![]()
Почитайте про факториал: это очень быстро растущая функция, как раз от 7 и выше она обычно и выходит за пределы типа int. В дельфях есть типы longint И int64 (не знаю, как они в си), у них факториал можно считать до 12.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 13.11.2012
Сообщений: 41
|
![]()
Так даже если я представляю факториал с типом long double(3,4 * 10 в 4932) у меня все равно выходит то что изображено на картинке.
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
![]()
Это разложение косинуса в ряд тейлора, правильно понимаю?
Что-то мне кажется, что у Вас точность неправильно считается. Вроде текущий элемент должен быть больше эпсилон, а не разность текущего с предыдущим.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
![]() |
![]() |
![]() |
#5 | ||
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]() Цитата:
Цитата:
А вообще-то, следующее слагаемое нужно считать по предыдущему, а не с нуля. Также напоминаю, что pow() не гарантирует верного результата, если первый аргумент отрицателен (из-за того, что второй аргумент приводится к типу double, так что можете внезапно начать считать (-1)^(7.000000001), что не определено). |
||
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 13.11.2012
Сообщений: 41
|
![]()
у меня сейчас в другом проблема уже)
да, точность я считаю не так(просто здесь пробовал). этот ряд просто у меня используется в приложении Winapi. и если я указываю типом этой функции факториала long double (или даже double) приложение просто повисает и все. в простом консольном приложении все считается прекрасно. но в winapi проблема. Код:
Последний раз редактировалось Sorento2; 30.05.2013 в 11:02. |
![]() |
![]() |
![]() |
#7 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 13.11.2012
Сообщений: 41
|
![]()
Сразу при запуске приложения. То есть окно с приложением выводится, но дальше просто висит и все. Никакие действия далее не воспринимаются.
|
![]() |
![]() |
![]() |
#9 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]() Цитата:
То есть, никакой Ваш код не отрабатывает, вообще? Убедитесь в этом. Закомментируйте весь код. |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задана функция логарифмического синуса и ее разложение в ряд. Разработайте алгоритм вычисления разложения в ряд с погрешностью ξ | пышь-пышь | Помощь студентам | 4 | 17.05.2013 07:49 |
C# Разложение в ряд Тейлора | EvgeniyPR | Помощь студентам | 4 | 11.11.2012 23:39 |
Разложение функции в ряд | Dmitry333 | Помощь студентам | 10 | 23.01.2012 16:49 |
разложение в ряд фурье(С/С++) | Lyt | Помощь студентам | 2 | 19.12.2011 23:38 |
Разложение в ряд Маклорена | Mari | Помощь студентам | 2 | 03.02.2008 23:23 |