Gestire le equazioni in assenza di un buon editor di equazioni è disordinato e spiacevole. Ad esempio, se volessi esprimere un integrale e la sua soluzione, potrebbe assomigliare a questo:
Integrale [x ^ 3 e ^ (- mx ^ 2 b / 2), dx] = - ((2 + b m x ^ 2) / (b ^ 2 * e ^ ((b m x ^ 2) / 2) * m ^ 2))
A integrals.wolfram.com , questo si chiama "modulo di input". A nessuno piace vedere un'equazione in "forma di input". Il modo ideale di visualizzare questa equazione sarebbe:

(Wolfram chiama questa "forma tradizionale")
Per questo codegolf, scrivi un programma che prenderà alcune equazioni in "forma di input" come input e visualizzi quell'equazione in una rappresentazione ascii di "forma tradizionale". Quindi, per questo esempio, potremmo ottenere qualcosa del genere:
/\ 3
| x
| ------------ dx =
| 2
\/ (m x b)/2
e
2
2 + b m x
-(-----------------)
2
2 (b m x )/2 2
b e m
Requisiti:
- Non mescolare, semplificare o riorganizzare l'input in alcun modo. Renderlo esattamente nella stessa forma che è stata descritta dall'input.
- Supporta le quattro operazioni matematiche di base (+, -, *, /). Quando non si moltiplicano due numeri adiacenti, il simbolo * è implicito e deve essere omesso.
- Il supporto per l'integrazione (come mostrato nell'esempio sopra) non è richiesto. Essere in grado di supportare input con funzioni come Integrate [...] o Sqrt [...] è un vantaggio.
- Supporta i poteri come mostrato nell'esempio sopra (l'ennesima radice può essere modellata aumentando all'1 / ennesima potenza).
- Le parentesi ridondanti (come quelle attorno al denomentatore e al numeratore della grande frazione nell'esempio sopra) dovrebbero essere omesse.
- L'espressione nel denominatore e nel numeratore di una frazione deve essere centrata sopra e sotto la linea di divisione orizzontale.
- Puoi scegliere se iniziare o meno una nuova riga dopo un segno di uguale. Nell'esempio sopra, viene avviata una nuova riga.
- L'ordine delle operazioni deve essere esattamente lo stesso nell'output come nell'input.
Alcuni esempi di input e output associati per testare la tua soluzione:
Ingresso:
1/2 + 1/3 + 1/4
Produzione:
1 1 1
- + - + -
2 3 4
Ingresso:
3x^2 / 2 + x^3^3
Produzione:
2 3
3 x 3
---- + x
2
Ingresso:
(2 / x) / (5 / 4^2)
Produzione:
2
-
x
--
5
--
2
4
Ingresso:
(3x^2)^(1/2)
Produzione:
2 1/2
(3 x )