OberonCore
https://forum.oberoncore.ru/

задача, дробные ряды
https://forum.oberoncore.ru/viewtopic.php?f=35&t=4542
Страница 1 из 1

Автор:  bill [ Вторник, 15 Октябрь, 2013 20:50 ]
Заголовок сообщения:  задача, дробные ряды

s=(1/(sin1))+(2/(sin1+sin2))+...+(x/(sin1+...+sinx))
Искал решения сам, но что-то постоянно ускользает от меня, искал примеры на разных сайтах они есть но они не похожи на мою задачу.

Автор:  Madzi [ Вторник, 15 Октябрь, 2013 23:41 ]
Заголовок сообщения:  Re: задача, дробные ряды

Что в этой задаче создаёт для вас трудность?

Тут сумма от 1 до x выражения вида i / sumSin(i) ;

Соответственно шаги такие:
1. реализуете функцию sin (x)
2. реализуете функцию суммы функций sin(x) от 1 до x sumSin (x) = sin (1) + ... + sin (x)
3. реализуете функцию xDixSumSin(x) = x / sumSin(x)
4. реализуете функцию суммы функций xDivSumSin(x)

Автор:  Роман М. [ Вторник, 15 Октябрь, 2013 23:56 ]
Заголовок сообщения:  Re: задача, дробные ряды

Ну, ничего сложного:

1. У дроби есть две части: числитель и знаменатель. В числителе - просто номер итерации, вычислять не нужно. В знаменателе идёт накопление суммы синусов: с каждой итерацией к предыдущей сумме синусов добавляется новый синус. Вот только не понял что такое 1, 2, x в sin1, sin2, sinx. Это аргументы синусов: sin(1),...,sin(x) ?

2. Каждая следующая дробь прибавляется к накопителю дробей.

3. Для каждой итерации нужно хранить промежуточные значения накопителей предыдущих итераций.

Накопители имеют форму a := f(a, v) где v - это новой значение, a - накопитель. Допустим, может f(a, v) = a + v; f(a, v) = a * v; и другие варианты.
В твоём случае это f(a, v) = a + v. То есть на КП накопление суммы - это INC(накопитель, новое_значение) .

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/