Найти корень уравнения методом Ньютона - VB (61387)
Формулировка задачи:
Доброго времени суток! Пожалуйста хелп ме с программой, сам я программу постарался написать, но она не работает.
Вот собственно говоря и программа: С использованием подпрограммы "Метод Ньютона" найти корень уравнения
e^x + ln x - 10x=0 на отрезке [3;4] с точностью 10^-4. Второе задание заключается в этом: сделать эту же программу, разбив на модули и используя юзерформ, что у меня не очень хорошо получается, а также одно из условий заключается в том, что нельзя использовать операторы ввода-вывода.
Буду очень вам благодарен!
Вот моя программка:
Листинг программы
- Private Sub Command1_Click()
- Dim x1!, x2!, x3!, n!, y1!, y2!, y3!
- Do Until Abs((x3 - x1)) <= n
- x2 = x1 - e ^ x + Lnx - 10 * x
- x3 = x1
- x1 = x2
- DoEvents
- Loop
- x1 = 3: x2 = 4
- Do Until Abs(x1 - x2) / 2 <= n
- x3 = x1 / 2 + x2 / 2
- y1 = s(x1)
- y2 = s(x2)
- y3 = s(x3)
- If y1 > 0 And y3 > 0 Then x1 = x3
- If y1 < 0 And y3 < 0 Then x1 = x3
- If y2 > 0 And y3 > 0 Then x2 = x3
- If y2 < 0 And y3 < 0 Then x2 = x3
- DoEvents
- Loop
- End Sub
- Function s(ByVal x!) As Single
- s = e ^ x + Lnx - 10 * x
- End Function
Решение задачи: «Найти корень уравнения методом Ньютона»
textual
Листинг программы
- Private Sub Command1_Click()
- Dim x!, x1!, e!
- e = 0.0001
- x = 3: x1 = 4
- Do While Abs(x1 - x) > e
- x = x1
- x1 = f(x)
- DoEvents
- Loop
- Form1.Caption = "ÊîðåГ*Гј ГіГ°Г*ГўГ*ГҐГ*ГЁГї = " & x1
- End Sub
- Function f(z As Single) As Single
- f = z - (Exp(z) + Log(z) - 10 * z) / (Exp(z) + 1 / z - 10)
- End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д