Застосуйте невизначений інтеграл до заданого рядка. Єдині правила, якими ви будете користуватися, визначені як такі:
∫cx ^ (n) dx = (c / (n + 1)) x ^ (n + 1) + C, n ≠ -1 c, C і n - всі постійні.
Технічні умови:
- Ви повинні мати можливість інтегрувати поліноми з будь-якою з можливих особливостей:
- Коефіцієнт, можливо, частка у форматі
(numerator/denominator). - Визнання того, що e і π - константи, і при їх використанні вміти утворювати дроби або вирази, що містять їх (можна утримувати у дробі на зразок
(e/denominator)або(numerator/e), або, якщо в експонентахx^(e+1))- Крім цих двох спеціальних констант, всі коефіцієнти будуть раціональними, реальними числами.
- Експонент, можливо, частка, у форматі
x^(exponent)- Вирази з ними
eчиπв них, окрім самих себе, не будуть виражені. (вам не доведеться інтегрувати такі речі, якx^(e+1), але ви можете інтегруватисяx^(e))
- Вирази з ними
- Може використовувати не-х 1-змінних змінних (тобто
f)- Це лише для діапазонів 65-90 та 97-122 ASCII.
- Вам не потрібно використовувати правила ланцюга або інтегрувати
x^(-1).
- Коефіцієнт, можливо, частка у форматі
- Вихід повинен мати відступи (поділ між термінами, тобто
x^2 + x + C. - Якщо невідомо, як інтегруватися з перерахованими вище функціями, програма повинна роздрукуватись
"Cannot integrate "+input. - Це повинна бути повна програма.
Бонуси:
- -10%, якщо ви надрукуєте "гарні" експоненти, відформатовані для розмітки (замість
x^2,x<sup>2</sup>). - -10%, якщо ви роздрукуєте рівняння (тобто
∫xdx = (1/2)x^2 + C)
Приклади:
Вхід:
x
Вихід:
(1/2)x^(2) + C
Вхід:
-f^(-2)
Вихід:
f^(-1) + C
Вхід:
(1/7)x^(1/7) + 5
Вихід:
(1/56)x^(8/7) + 5x + C
Вхід:
πx^e
Вихід:
(π/(e+1))x^(e+1) + C
Вхід:
(f+1)^(-1)
Вихід:
Cannot integrate (f+1)^(-1)
eта π, єдиними значеннями коефіцієнтів будуть раціональні числа? Тобто не потрібно обробляти багатовимірні многочлени? 2. Коли ви говорите " non-x 1-char змінних ", ви обмежуєтесь a-zA-Zчи маєте намір включити інші діапазони Unicode?
ln(x) + Cна вклад x^(-1)?
x^(e+1)це не буде інтеграндом, але це може бути результатом інтеграції. 2) Не буде багато змінних літер. 3) Так. 4) Так, але так і має бути (1/56)x^(1/7+1) + C(я помилився в прикладах).