Я пишу программу на python, которая будет решать нули с помощью метода ньютонов.Я закончил писать черновую версию, потом понял несколько разных вещей и подумал, нужно ли мне изменить / изменить это.(знание предмета может помочь)
def main():
dir(sympy)
print ("NEWTONS METHOD")
print ("Write your expression in terms of 'x' ")
e = sympy.sympify(raw_input("input expression here: "))
f = sympy.Symbol('x')
func1 = e
func1d = sympy.diff(e,f)
print ("the dirivative of your function = "), func1d
x = input("number to substitude for x: ")
func1sub = func1.subs({'x':x})
func1dsub = func1d.subs({'x':x})
n = x - float(func1sub/func1dsub)
while n != x:
func1sub = func1.subs({'x':x})
func1dsub = func1d.subs({'x':x})
n = x - float(func1sub/func1dsub)
print n
main()
1) Ну, сначала мне было интересно, так как значения n
и x
не всегда могут быть точно такими же, как при округлении с использованием округленияfunction.
2) Посмотрев на это, я чувствую, что мой цикл while не решает то, что он должен решать, он должен решать то, что является x
, к которому можно подключить его x
в функции и вывод будет x
.Могу ли я сделать это, добавив значения в массив и посмотрев, где они являются кратными экземплярами одного числа?