profile
Размещено 6 лет назад по предмету Информатика от zzzPhenomenalOnezzz

Составить программу (Python) вычисления приближенных значений определенного интеграла двумя предложенными методами, а также точного его значения по первообразной. Вычислить абсолютную и относительную ошибки для каждого приближенного метода. Пределы интегрирования a и b, а также число N подынтервалов задавать при вводе. Выполняя программы при вводимых N = 50 ∙ k, k = 1, 2, 3, …, 8, установить зависимость величины относительной погрешности от N.

  1. Ответ на вопрос
    Ответ на вопрос дан Аккаунт удален

    Python 3.7.0. Прикрепил текстовый файл с кодом.

    import math

    def fpod (x):           #значение подынтегральной функции

       F = 1 / x * math.log(x)

       return F

    def fperv (x):          #значение первообразной подынтегральной функции

       F = math.log(math.log(x))

       return F

    def metodtrap(N, a, b): # метод трапеций

       delx = (b - a) / N

       ind = a + delx

       sumfpod = 0

       sumfperv = 0

       while (ind < b):

           sumfpod += 2 * fpod(ind)

           sumfperv += 2 * fperv(ind)

           ind += delx

       sumfpod = ( sumfpod + fpod(a) + fpod(b) ) * delx / 2

       sumfperv = ( sumfperv + fperv(a) + fperv(b) ) * delx / 2

       print("Методом трапеции от подынтегральной функции: " + str(sumfpod))

       print("Методом трапеции от первообразной подынтегральной функции: " + str(sumfperv))

       return (sumfperv, sumfpod)

    def metodlevpr(N, a, b):    #метод левых прямоугольников

       delx = (b - a) / N

       ind = a

       sumprperv = 0

       sumprpod = 0

       while (ind < b):

           sumprperv += fperv(ind)

           sumprpod += fpod(ind)

           ind += delx

       sumprperv = delx * sumprperv

       sumprpod = delx * sumprpod

       print("Методом левых прямоугольников от подынтегральной функции: " + str(sumprpod))

       print("Методов левых прямоугольников от первообразной подынтегральной функции: " + str(sumprperv))

       return (sumprperv, sumprpod)

    N = int(input("N: "))

    a = int(input("a: "))

    b = int(input("b: "))

    trap = metodtrap(N, a, b) # кортеж (результат перв. подынт. функции, результат подынт. функции)

    pr = metodlevpr(N, a, b) # кортеж (результат перв. подынт. функции, результат подынт. функции)

    if (trap[0] < trap[1]):                     # нахождение абсолютной погрешности

       abs_pog_trap = trap[1] - trap[0]

       print("Абсолютная погрешность (метод трапеции): " + str(abs_pog_trap))

    else:

       abs_pog_trap = trap[0] - trap[1]

       print("Абсолютная погрешность (метод трапеции): " + str(abs_pog_trap))

    if (pr[0] < pr[1]):

       abs_pog_pr = pr[1] - pr[0]

       print("Абсолютная погрешность (метод л.прямоугольников): " + str(abs_pog_pr))

    else:

       abs_pog_pr = pr[0] - pr[1]

       print("Абсолютная погрешность (метод л.прямоугольников): " + str(abs_pog_pr))

    print("Относительная погрешность (метод трапеции): " + str(int(round(abs_pog_trap / trap[0], 2) * 100)) + "%")

    print("Относительная погрешность (метод л.прямоугольников): " + str(int(round(abs_pog_pr / pr[0], 2) * 100)) + "%")


Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 6 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.