![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 15.11.2020
Сообщений: 2
|
![]()
Не могу понять,как решаются задачи такого типа.
На конкретном примере сможет кто-то объяснить,что от меня требуется и как добиться результата. Язык Си. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,716
|
![]()
Могу пояснить.
Для решения этой супер-элементарнейшей задачи пишется программа в 5 строк. Когда i-й член суммы станет меньше епсилона, говорим: "Хана!" и сравниваем вычисленное значение с точным. Работы минут на 5 с перекурами. У меня на компе нет Си. Да Делфи хочешь ? |
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 15.11.2020
Сообщений: 2
|
![]()
Да,буду не против
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,716
|
![]() Код:
2,0 -0,125000 6,0 -0,020833 = 0,479167 4,0 0,031250 120,0 0,000260 = 0,479427 6,0 -0,007813 5040,0 -0,000002 = 0,479426 8,0 0,001953 362880,0 0,000000 = 0,479426 0,479426 Последний раз редактировалось digitalis; 16.11.2020 в 13:25. |
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,378
|
![]()
Моё предложение:
Найди в Сети Т.А. Павловская, ЯВУ Паскаль. Там хорошо изложен алгоритм решения подобных задач. Да, это Паскаль, но алгоритм от языка не зависит. В данном случае an+1 = k*an, где k = -x*x/(2*n+2)*(2*n+3)). В этом случае точность вычисления будет повыше. Т.е., в цикле по x (от xbeg до xfin - если это тоже есть в задании) организуешь вложенный цикл типа Код:
В цикле do: <вычисляем k>; a = a*k; sum = sum + a; n = n + 1; если abs(a) < eps то break. PS: Выражение dwn := dwn * n * (n+1); - это прямой счёт факториала, но факториал растёт очень быстро и получить достаточную точность будет сложно из-за переполнения значения переменной dwn.
Как-то так, ...
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,716
|
![]()
Вот именно - факт. (он же и знаменатель) растёт очень быстро, поэтому слагаемые тоже очень быстро стремятся к нулю а сумма - к сходимости. Потому моего варианта для ТС более чем достаточно, если сумеет перепереть его в Си. Тем более что up,dwn я взял для наглядности - как что изменяется. А так i+1е слагаемое получаем из i-го путём доумножения на -х^2 и деления на n,n+1, не беспокоя при этом по таким пустякам г-жу Павловскую, которой мне читать не довелось.
----------------------------- Или это совет был не мне, а ТСу ? ![]() Последний раз редактировалось digitalis; 16.11.2020 в 17:43. |
![]() |
![]() |
![]() |
#7 | |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,378
|
![]()
digitalis
Цитата:
"А, и так сойдёт!" - из мультика про зайчишку, который помогал строить и ещё чего-то там ... Это не катит. Не катет, а именно не катИт. ![]() Ваш вариант быстро "заткнётся", если поднять точность. На эту тему тут уже был разговор с newerow1989, который давал решения в аналогичном стиле. Просто сделайте вычисления в двух вариантах и сравните результат. PS: А Т.А. Павловскую я рекомендую всем начинающим изучать Паскаль, поскольку там изложен материал от А до я: от основ Паскаля, до уровня динамического программирования и ООП. И там много примеров.
Как-то так, ...
|
|
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,716
|
![]() Цитата:
![]() Повторю ещё раз: предлагаемый Вами вариант был (и есть) у меня изначально, а разделил для up - dwn я для наглядности - как одно стремительно растёт, слагаемоё - так же стремительно падает. Пожалуй, не сто'ит меня убеждать, что не надо делать "и так сойдёт", потому что это - не мой стиль. И закончим на этом обсуждение этой сверх-элементарнейшей мини-задачи. ТС , надеюсь, её уже переварил. Или нашёл на другом форуме готовое сишное решение. Последний раз редактировалось digitalis; 17.11.2020 в 12:03. |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Решение задачи на C# | PiterParkur | Помощь студентам | 0 | 26.01.2020 16:00 |
Решение задачи на c# | Vestet | Помощь студентам | 1 | 24.01.2020 12:11 |
Решение задачи. C++ | alucard115 | Помощь студентам | 24 | 16.02.2013 12:34 |
Решение задачи | zheka21 | Помощь студентам | 13 | 08.11.2012 12:06 |
решение задачи (C#) | Uimbldon | Помощь студентам | 0 | 02.10.2012 13:02 |