Untitled
unknown
python
5 months ago
1.3 kB
3
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