Решение уравнения методом простых итераций - VB

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста найти ошибку в программе
Листинг программы
  1. Sub отделение_корней()
  2. Dim a As Single, b As Single, h As Single, y2 As Single, x As Single, y1 As Single
  3. a = -2: b = 2: h = 0.5: y2 = f(a)
  4. For x = a To b Step h
  5. y1 = y2: y2 = f(x + h)
  6. If y1 * y2 <= 0 Then метод_итераций x, x + h
  7. Next x
  8. End Sub
  9. Function f(x As Single) As Single
  10. f = (1 + Cos(x)) / (3 - Sin(x)) - 0.5
  11. End Function
  12. Function f1(x As Single) As Single
  13. f1 = 1 / (2 * Sqr(x)) * 2 * x
  14. End Function
  15. Sub метод_итераций()
  16. Const e = 0.0001
  17. Dim x As Single, x1 As Single, q As Single, e0 As Single
  18. x = 0.3
  19. Do
  20. x1 = x: x = f(x)
  21. Loop While Abs(x - x1) > e
  22. q = f1(x)
  23. If q > 0 Then e0 = e * q / (1 - q) Else e0 = e
  24. Debug.Print x, e0
  25. End Sub

Решение задачи: «Решение уравнения методом простых итераций»

textual
Листинг программы
  1. Function f(x As Single) As Single
  2.   f = (1 + Cos(x)) / (3 - Sin(x)) - 0.5
  3. End Function
  4. Function f1(x As Single) As Single
  5.   f1 = 1 / (2 * Sqr(x)) * 2 * x
  6. End Function
  7. Sub метод_итераций()
  8.   Const e = 0.0001
  9.   Dim x As Single, x1 As Single, q As Single, e0 As Single
  10.   x = 0.3
  11. Do
  12.   x1 = x: x = f(x)
  13.   Loop While Abs(x - x1) > e
  14.   q = f1(x)
  15.   If q > 0 Then e0 = e * q / (1 - q) Else e0 = e
  16.   Debug.Print x, e0
  17. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы