Задать вопрос
6 июля, 13:06

В чём ошибка (метод простых итераций) делает одну итерацию

import math

def fun (x) :

return (2-0.4*x**2) * * 0.5+math. cos (x)

x1=float (input ("Введите приближенное значение Х="))

e=float (input ("Введите точность e="))

a=float (input ("a="))

b=float (input ("b="))

a=abs ((fun (a+0.0001) - fun (a)) / 0.0001)

b=abs ((fun (b+0.0001) - fun (b)) / 0.0001)

q=max (a, b)

q = (1-q) / q

iters=0

x0=x1

x1=fun (x0)

while abs (x1-x0) < = abs (q*e) :

iters+=1

x0=x1

x1=fun (x0)

print ('Точное значение корня:',2.0926)

print ('Вычисленное значение корня:', x1)

print ('Число итераций:', iters)

+1
Ответы (1)
  1. 6 июля, 16:03
    0
    Где задается функция:

    def fun (x) :

    return ((2-0.4) * x**2**0.5) + math. cos (x)

    Поставьте в скобочки.

    Кстати, возможно, что вы хотели возвести (0.4*x) во вторую степень, а не 1.6:

    return (2 - (0.4*x) * * 2**0.5) + math. cos (x)

    Вот так вот. Одни скобочки поворачивают ответ вспять. Если бы вы написали, что вы хотели сделать, я, может, бы "допер". А так ...
Знаете ответ?
Сомневаетесь в ответе?
Найдите правильный ответ на вопрос ✅ «В чём ошибка (метод простых итераций) делает одну итерацию import math def fun (x) : return (2-0.4*x**2) * * 0.5+math. cos (x) x1=float ...» по предмету 📘 Информатика, а если вы сомневаетесь в правильности ответов или ответ отсутствует, то попробуйте воспользоваться умным поиском на сайте и найти ответы на похожие вопросы.
Смотреть другие ответы