Applicare un integrale indefinito a una determinata stringa. Le uniche regole che userete sono definite come tali:
∫cx ^ (n) dx = (c / (n + 1)) x ^ (n + 1) + C, n ≠ -1 c, C e n sono tutte costanti.
specifiche tecniche:
- Devi essere in grado di integrare i polinomi con una delle possibili funzionalità:
- Un coefficiente, forse una frazione nel formato
(numerator/denominator)
. - Riconoscimento del fatto che e e π sono costanti e, nel loro uso, essere in grado di formare frazioni o espressioni che li contengono (possono essere mantenuti in una frazione come
(e/denominator)
o(numerator/e)
, o, se in esponente,x^(e+1)
)- A parte queste due costanti speciali, tutti i coefficienti saranno numeri razionali e reali.
- Un esponente, forse una frazione, nel formato
x^(exponent)
- Le espressioni con
e
oπ
in esse, a parte se stesse, non saranno in esponente. (non dovrai integrare cose del generex^(e+1)
, ma potresti integrarex^(e)
)
- Le espressioni con
- Può usare variabili non-x 1-char (es.
f
)- Questo è solo per gli intervalli ASCII 65-90 e 97-122.
- Non è necessario utilizzare la regola della catena o integrare
x^(-1)
.
- Un coefficiente, forse una frazione nel formato
- L'output deve avere il riempimento (separazione tra i termini, ad es
x^2 + x + C
. - Se non si sa come integrarsi con le funzionalità di cui sopra, il programma dovrebbe essere stampato
"Cannot integrate "+input
. - Deve essere un programma completo.
bonus:
- -10% se stampi gli esponenti "carini" formattati per il markdown (invece di
x^2
,x<sup>2</sup>
). - -10% se si stampa l'equazione (cioè
∫xdx = (1/2)x^2 + C
)
Esempi:
Ingresso:
x
Produzione:
(1/2)x^(2) + C
Ingresso:
-f^(-2)
Produzione:
f^(-1) + C
Ingresso:
(1/7)x^(1/7) + 5
Produzione:
(1/56)x^(8/7) + 5x + C
Ingresso:
πx^e
Produzione:
(π/(e+1))x^(e+1) + C
Ingresso:
(f+1)^(-1)
Produzione:
Cannot integrate (f+1)^(-1)
e
e π
, gli unici valori nei coefficienti saranno numeri razionali? Cioè non è necessario gestire polinomi multivariabili? 2. Quando dici " variabili non-x 1-char ", stai limitando a-zA-Z
o intendi includere altri intervalli Unicode?
ln(x) + C
per un input di x^(-1)
?
x^(e+1)
non sarà un integrando, ma potrebbe essere il risultato di un'integrazione. 2) Non ci saranno variabili con più lettere. 3) Sì 4) Sì, ma dovrebbe essere (1/56)x^(1/7+1) + C
(ho fatto un errore negli esempi).