Advertisement
Guest User

bkjbsgkjbkbksggkjb

a guest
Dec 18th, 2014
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.19 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. ## Zadanie 10
  3. ## Imie i nazwisko: Grzegorz Klauza
  4. ## Czas pracy nad zadaniem: 50m
  5.  
  6. def wartosc_wielomianu(wielo, x):
  7.     """
  8.    Oblicza wartosc wielomianu w zadanym punkcie x. Zwraca ta wartosc.
  9.    """
  10.     s=0.0
  11.     p=0
  12.     for i in range (0,len(wielo)):
  13.         s+=wielo[i]*(x**p)
  14.         p+=1
  15.     return s
  16.  
  17. def pochodna_wielomianu(wielo):
  18.     pochodna=[]
  19.     for i in range (1,len(wielo)):
  20.         pochodna.append(wielo[i]*i)
  21.     if pochodna.count(0.0)==len(pochodna):
  22.         for i in range (1,len(pochodna)):                
  23.             pochodna.remove(0.0)
  24.            
  25.     return pochodna
  26. def oblicz_pierwiastek(wielo,x,e):
  27.     """
  28.    oblicza pierwiastek wileomianu z dokładnością e
  29.    """
  30.     i=0
  31.     s=wartosc_wielomianu(wielo, x[0])
  32.     while abs(0-s)>e:
  33.         i+=1
  34.         x.append(x[i-1]-(wartosc_wielomianu(wielo, x[i-1])/wartosc_wielomianu(pochodna_wielomianu(wielo), x[i-1])))
  35.         s=wartosc_wielomianu(wielo, x[i])
  36.     pierwiastek=(x[i],i)
  37.     return pierwiastek
  38.  
  39. wielo = (0.0, 0.0, 17.5, 3.0, 1.0)
  40. x=[]
  41. x.append(float(raw_input('zgadnij x: ')))
  42. e=float(raw_input('podaj epsilon: '))
  43.  
  44. print oblicz_pierwiastek(wielo,x,e)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement