Не работает программа вычисления интеграла - QBasic

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

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

Листинг программы
  1. INPUT "a="; a
  2. INPUT "b="; b
  3. INPUT "e="; e
  4. INPUT "n="; n
  5. H = (b - a) / n
  6. s = 0
  7. FOR z = a TO b - 2 * H STEP 2 * H
  8. y0 = (e ^ x - 1) / (e ^ x + 1)
  9. y1 = (e ^ (x + H) - 1) / (e ^ (x + H) + 1)
  10. y2 = (e ^ (x + 2 * H) - 1) / (e ^ (x + 2 * H) + 1)
  11. Si = H / 3 * (y0 + 4 * y1 + y2)
  12. s = s + Si
  13. NEXT z
  14. DO
  15. n = n * 2
  16. H = (b - a) / n
  17. p = 0
  18. FOR z = a TO b - 2 * H STEP 2 * H
  19. y0 = (e ^ x - 1) / (e ^ x + 1)
  20. y1 = (e ^ (x + H) - 1) / (e ^ (x + H) + 1)
  21. y2 = (e ^ (x + 2 * H) - 1) / (e ^ (x + 2 * H) + 1)
  22. Si = H / 3 * (y0 + 4 * y1 + y2)
  23. p = p + Si
  24. NEXT z
  25. d = ABS(s - p)
  26. s = p
  27. LOOP WHILE d > e
  28. PRINT "integral"; p
  29. END
Помогите пожалуйста, ребят..
а да забыл сказать вычисление интеграла методом Симпсона
и вот я не пойму правильно ли я подставил H и 2H, потому что у одногрупников сходится с другими уравнениями, считает правильно, а у меня не сходится
ребяяят помогите, а.. завтра курсовую надо защищать а чо то не сходится с ответом, а фотошопом пользоваться не хочется

Решение задачи: «Не работает программа вычисления интеграла»

textual
Листинг программы
  1. INPUT "a="; a
  2. INPUT "b="; b
  3. INPUT "e="; e
  4. n = 2
  5. DO
  6.     h = (b - a) / n
  7.     s = 0
  8.     FOR x = a TO b - 2 * h STEP 2 * h
  9.         y0 = (e ^ x - 1) / (e ^ x + 1)
  10.         y1 = (e ^ (x + h) - 1) / (e ^ (x + h) + 1)
  11.         y2 = (e ^ (x + 2 * h) - 1) / (e ^ (x + 2 * h) + 1)
  12.         Si = h / 3 * (y0 + 4 * y1 + y2)
  13.         s = s + Si
  14.     NEXT x
  15.     h = (b - a) / n
  16.     p = 0
  17.     n = 2 * n
  18.     FOR x = a TO b - 2 * h STEP 2 * h
  19.         y0 = (e ^ x - 1) / (e ^ x + 1)
  20.         y1 = (e ^ (x + h) - 1) / (e ^ (x + h) + 1)
  21.         y2 = (e ^ (x + 2 * h) - 1) / (e ^ (x + 2 * h) + 1)
  22.         Si = h / 3 * (y0 + 4 * y1 + y2)
  23.         p = p + Si
  24.     NEXT x
  25.     d = ABS(s - p)
  26.     s = p
  27. LOOP WHILE d > e
  28. PRINT "integral"; p
  29. END

Объяснение кода листинга программы

В этом коде выполняется вычисление интеграла от функции e в пределах от a до b с помощью метода трапеций. Вот список ключевых шагов:

  1. Ввод начальных значений a, b и e с помощью функции INPUT.
  2. Инициализация переменной n со значением 2.
  3. Начало цикла DO, который повторяется до тех пор, пока изменение интеграла d больше заданной точности e.
  4. Вычисление размера трапеции h с помощью формулы (b-a)/n.
  5. Инициализация переменных s и p с начальным значением 0.
  6. Два вложенных цикла FOR, которые вычисляют значения функции e в точках x, x+h, x+2h и вычисляют соответствующие значения интеграла Si с помощью формулы (h/3)(y0+4y1+y2).
  7. Значения интеграла Si добавляются к переменным s и p.
  8. Вычисляется разница d между s и p.
  9. Если d больше e, то цикл продолжается, иначе он завершается и выводится значение интеграла p с помощью функции PRINT.
  10. Код завершается с помощью ключевого слова END.

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


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

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

11   голосов , оценка 3.545 из 5

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

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

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