Guest
Новичок
|
Ребята, нужно решить уравнение методом ряда Тейлора. Помогите пожалуйста! Не оставляйте умирать меня! Картинку присоединяю к сообщению, так как попросту незнаю как ее набрать в ворде). Заранее благодарю! внешняя ссылка удалена - формула
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 26 мая 2008 21:33 | IP
|
|
Roman Osipov
Долгожитель
|
Где уравнение? На картинке просто e^(-x) разложена в ряд Тейлора.
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 26 мая 2008 21:37 | IP
|
|
Guest
Новичок
|
А что с ним делать??
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 26 мая 2008 21:55 | IP
|
|
Roman Osipov
Долгожитель
|
Смотря что Вам нужно, не знаю. Это просто тождество.
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 26 мая 2008 22:20 | IP
|
|
Guest
Новичок
|
Вычислить и вывести на экран в виде таблицы значения фунеции, заданой с помощью ряда Тейлора на интервале от икс(нач) до икс(кон) с шагом "ДХ" с точностью "е".
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 26 мая 2008 22:23 | IP
|
|
Roman Osipov
Долгожитель
|
Это что задача на программирование? Остаток ряда для данной функции не превышает выличины первого из отброшенных членов, это должно помочь.
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 26 мая 2008 22:36 | IP
|
|
Roman Osipov
Долгожитель
|
На VBA написал соответствующую процедуру: Sub Procedure1() Dim i, j, n As Integer Dim xn, xk, epsilon, delta, Massive(), str_zn_i As Double Dim a As Double Dim mast, str, str_i As String xn = 0 xk = 1 delta = 0.5 n = (xk - xn) / delta epsilon = 10 ^ (-4) ReDim Massive(n) For i = 0 To n j = 1 a = xn + i * delta s1 = 1 Do s2 = s1 + ((-1) ^ j) * (a ^ j) / (nf((j))) j = j + 1 s3 = s1 s1 = s2 Loop While Abs(s2 - s3) > epsilon * 10 ^ (-3) Massive(i) = s2 Next str = "" For i = 0 To n str_zn_i = xn + i * delta str_i = CStr(str_zn_i) mast = CStr(Massive(i)) str = str & "e^(-" & str_i & ")~" & mast & "|___|" Next MsgBox str End Sub Function nf(n As Double) Dim i As Double Dim fn As Double fn = 1 If n = 0 Then fn = 1 Else For i = 1 To n fn = fn * i Next End If nf = fn End Function
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 26 мая 2008 23:32 | IP
|
|
Guest
Новичок
|
Roman Osipov , Спасибо огромное! Но я VBA не знаю (у меня на Си), потому не могу понять что где
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 27 мая 2008 0:31 | IP
|
|
Roman Osipov
Долгожитель
|
Скопируйте в word в его макросы, и посмотрите как работает. Вообще ничего хитрого.
|
Всего сообщений: 2356 | Присоединился: май 2007 | Отправлено: 27 мая 2008 8:19 | IP
|
|
Guest
Новичок
|
внешняя ссылка удалена - Вот что вывело когда в макросе ворда запустил. Но я все-равно не могу понять как он делает ((( Помогите пожалуйста.
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 27 мая 2008 12:37 | IP
|
|