![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Знающие люди, выручайте. Вообщем нужно подсчитать сумму ряда e^x=1+x+(x^2/2!)+(x^3/3!)+... (^ значит в степени)
x и точность вводяться с клавиатуры (точность это разница между последним и предпоследним) и еще нужно подсчитать кол-во просуммированых элементов. Очень надо, а сам не знаю как сделать. Если поможете буду очень благодарен!!! Заранее спасибо!!! |
#2
|
|||
|
|||
![]() Ну так в чем проблема?
у тебя Ai = x^i/i!, где i - номер элемента. Хотя можно схитрить. Можно считать Ai через Ai-1 (т.е. вычислять значение элемента через предыдущий). Тогда Ai = (Ai-1) * x / i (вроде так). Ну и т.к. кол-во элементов неизместно, то цикл While Что-то типа того: Код:
function SumA(X, E : Double; var ACount : Integer) : Double; var A : Double; begin Result := 1; A := 1; ACount := 1; While A >= E Do Begin A := A * x / ACount; Result := Result + A; Inc(ACount); End; end; |
#3
|
|||
|
|||
![]() а точность как используется? Если можно полный код для делфи, просто срочно надо, и вникать времени нет.
PS спасибо |
#4
|
|||
|
|||
![]() E - условие окончания цикла. смотри код внимательно.
|
#5
|
|||
|
|||
![]() Все, разобрался. Спасибо огромное!!!
|