Zastosuj całkę nieoznaczoną do danego ciągu. Jedyne reguły, których będziesz używać, są zdefiniowane jako takie:
∫cx ^ (n) dx = (c / (n + 1)) x ^ (n + 1) + C, n ≠ -1 c, C i n są stałymi.
Dane techniczne:
- Musisz być w stanie zintegrować wielomiany z dowolną z możliwych funkcji:
- Współczynnik, być może ułamek formatu
(numerator/denominator). - Rozpoznanie, że e i π są stałymi, a przy ich użyciu mogą być w stanie tworzyć ułamki lub wyrażenia je zawierające (mogą być przechowywane w ułamkach takich jak
(e/denominator)lub(numerator/e), lub w wykładnikachx^(e+1))- Oprócz tych dwóch specjalnych stałych wszystkie współczynniki będą liczbami wymiernymi, rzeczywistymi.
- Wykładnik, być może ułamek, w formacie
x^(exponent)- Wyrażenia z
elubπw nich, poza sobą, nie będą w wykładnikach. (nie będziesz musiał integrować takich rzeczyx^(e+1), ale możesz się zintegrowaćx^(e))
- Wyrażenia z
- Może używać zmiennych innych niż x 1-char (tj.
f)- Dotyczy to tylko zakresów ASCII 65–90 i 97–122.
- Nie musisz używać reguły łańcuchowej ani integracji
x^(-1).
- Współczynnik, być może ułamek formatu
- Dane wyjściowe muszą mieć wypełnienie (separacja między terminami, tj
x^2 + x + C. - Jeśli nie wiadomo, jak zintegrować się z powyższymi funkcjami, program powinien wydrukować
"Cannot integrate "+input. - To musi być pełny program.
Bonusy:
- -10%, jeśli wydrukujesz „ładne” wykładniki sformatowane dla markdown (zamiast
x^2,x<sup>2</sup>). - -10%, jeśli wydrukujesz równanie (tj.
∫xdx = (1/2)x^2 + C)
Przykłady:
Wkład:
x
Wydajność:
(1/2)x^(2) + C
Wkład:
-f^(-2)
Wydajność:
f^(-1) + C
Wkład:
(1/7)x^(1/7) + 5
Wydajność:
(1/56)x^(8/7) + 5x + C
Wkład:
πx^e
Wydajność:
(π/(e+1))x^(e+1) + C
Wkład:
(f+1)^(-1)
Wydajność:
Cannot integrate (f+1)^(-1)
ei πjedynymi wartościami współczynników będą liczby wymierne? Czyli nie jest konieczne obsługiwanie wielomianów wielowymiarowych? 2. Kiedy mówisz „ zmienne inne niż x 1-char ”, czy ograniczasz się, a-zA-Zczy zamierzasz uwzględnić inne zakresy Unicode?
ln(x) + Cdane wejściowe x^(-1)?
x^(e+1)nie będzie to integrand, ale może być wynikiem integracji. 2) Nie będzie wielu zmiennych literowych. 3) Tak. 4) Tak, ale powinno być (1/56)x^(1/7+1) + C(popełniłem błąd w przykładach).