Untitled
unknown
python
a year ago
1.3 kB
6
Indexable
def wartosc_wielomianu(wspolczynniki:list[int], x):
# obliczanie wartości wielomianu metodą hornera dla x
wartosc = wspolczynniki[0]
for wspolczynnik in wspolczynniki[1:]:
wartosc = wartosc * x + wspolczynnik
return wartosc
def metoda_prostokatow(start:float, stop:float, probki:int, wspolczynniki:list[int]):
pole = 0
dystans = stop - start
podstawa_prostokata = dystans / probki
# wersja intuicyjna
x = start
for _ in range(probki):
x += podstawa_prostokata
h = wartosc_wielomianu(wspolczynniki, x)
pole += podstawa_prostokata * h
# wersja zoptymalizowana
x = start
h = 0
for _ in range(probki):
x += podstawa_prostokata
h += wartosc_wielomianu(wspolczynniki, x)
pole = podstawa_prostokata * h
return pole
if __name__ == '__main__':
# list[int, int] - kolejnych współczynników
wspolczynniki = [int(elem) for elem in input('Współczynniki wielomianu: ').split()]
start = int(input('Początek przedziału: '))
end = int(input('Koniec przedziału: '))
probki = int(input('Podaj ilość podziałów (idk jak to inaczej nazwać) funkcji: '))
print(f'Pole pod wykresem dla funkcji, wynosi: {metoda_prostokatow(start, end, probki, wspolczynniki)}')Editor is loading...
Leave a Comment