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

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

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

Помогите пожалуйста, ребят..
а да забыл сказать вычисление интеграла методом Симпсона
и вот я не пойму правильно ли я подставил H и 2H, потому что у одногрупников сходится с другими уравнениями, считает правильно, а у меня не сходится
ребяяят помогите, а.. завтра курсовую надо защищать а чо то не сходится с ответом, а фотошопом пользоваться не хочется

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

textual
Листинг программы
INPUT "a="; a
INPUT "b="; b
INPUT "e="; e
n = 2
DO
    h = (b - a) / n
    s = 0
    FOR x = a TO b - 2 * h STEP 2 * h
        y0 = (e ^ x - 1) / (e ^ x + 1)
        y1 = (e ^ (x + h) - 1) / (e ^ (x + h) + 1)
        y2 = (e ^ (x + 2 * h) - 1) / (e ^ (x + 2 * h) + 1)
        Si = h / 3 * (y0 + 4 * y1 + y2)
        s = s + Si
    NEXT x
    h = (b - a) / n
    p = 0
    n = 2 * n
    FOR x = a TO b - 2 * h STEP 2 * h
        y0 = (e ^ x - 1) / (e ^ x + 1)
        y1 = (e ^ (x + h) - 1) / (e ^ (x + h) + 1)
        y2 = (e ^ (x + 2 * h) - 1) / (e ^ (x + 2 * h) + 1)
        Si = h / 3 * (y0 + 4 * y1 + y2)
        p = p + Si
    NEXT x
    d = ABS(s - p)
    s = p
LOOP WHILE d > e
PRINT "integral"; p
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
Похожие ответы