Задать вопрос
2 июня, 01:49

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

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)

+4
Ответы (1)
  1. 2 июня, 04:57
    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 ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы