Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from numpy import poly1d
- import numpy
- import math
- def vmdk(coef):
- k = -1
- a = 0
- for i in range(len(coef)):
- if coef[i] < 0:
- k = i
- break
- for i in range(len(coef)):
- if coef[i] < 0 and abs(coef[i]) > a:
- a = abs(coef[i])
- if k == 0:
- return False
- return numpy.around((a/coef[0])**(1/k), 0) + 1
- def printT(tabl):
- for r in tabl:
- print(r)
- def zchange(arr, i):
- c = 0
- z = arr[0][i]
- for k in range(len(arr)):
- if z == -arr[k][i]:
- z = arr[k][i]
- c += 1
- return c
- coef = input("Input coef: ").split()
- for i in range(len(coef)):
- coef[i] = float(coef[i])
- f = []
- f.append(poly1d(coef))
- f.append(poly1d(coef).deriv())
- while len(f[-1]) > 0:
- tmp, ft = f[-2]/f[-1]
- f.append(-ft)
- tabl = []
- for fp in f:
- row = []
- row.append(fp(-10000)/abs(fp(-10000)))
- row.append(fp(0)/abs(fp(0)))
- row.append(fp(10000)/abs(fp(10000)))
- tabl.append(row)
- printT(tabl)
- for i in range(len(tabl)):
- print(zchange(tabl, i))
Advertisement
Add Comment
Please, Sign In to add comment