İyi bir denklem düzenleyicisinin yokluğunda denklemlerle uğraşmak dağınık ve tatsızdır. Örneğin, bir integral ve çözümünü ifade etmek istersem, şöyle görünebilir:
İntegral [x ^ 3 e ^ (- mx ^ 2 b / 2), dx] = - ((2 + b m x ^ 2) / (b ^ 2 * e ^ ((b m x ^ 2) / 2) * m ^ 2))
At integrals.wolfram.com , bu "Giriş formu" adı verilir. Hiç kimse "giriş formunda" bir denklem görmeyi sevmez. Bu denklemi görselleştirmenin ideal yolu:
(Wolfram buna "geleneksel form" diyor)
Bu codegolf için, girdi olarak "girdi formu" nda bazı denklemleri alacak bir program yazın ve bu denklemi "geleneksel biçim" in ascii temsili ile görselleştirin. Yani, bu örnek için şöyle bir şey alabiliriz:
/\ 3
| x
| ------------ dx =
| 2
\/ (m x b)/2
e
2
2 + b m x
-(-----------------)
2
2 (b m x )/2 2
b e m
Gereksinimler:
- Girişi herhangi bir şekilde karıştırmayın, basitleştirmeyin veya yeniden düzenlemeyin. Giriş tarafından açıklananla aynı şekilde işleyin.
- Dört temel matematik işlemini (+, -, *, /) destekleyin. İki bitişik sayıyı çarpmadığınızda * sembolü ima edilir ve atlanmalıdır.
- Entegrasyon desteği (yukarıdaki örnekte gösterildiği gibi) gerekli değildir . Integrate [...] veya Sqrt [...] gibi işlevlerle girişi destekleyebilmek bir bonus.
- Yukarıdaki örnekte gösterildiği gibi destek güçleri (n'inci kök, 1'inci güce yükseltilerek modellenebilir).
- Fazlalıklı parantez (yukarıdaki örnekte büyük payın paydası ve payının etrafındaki gibi) atlanmalıdır.
- Bir kesirin payda ve payındaki ifade, yatay bölme çizgisinin üstünde ve altında ortalanmalıdır.
- Eşittir işaretinden sonra yeni bir satıra başlayıp başlamayacağınızı seçebilirsiniz. Yukarıdaki örnekte, yeni bir satır başlatılır.
- İşlem sırası, çıktıda giriş ile aynı olmalıdır.
Çözümünüzü test etmek için bazı girdi ve ilişkili çıktı örnekleri:
Giriş:
1/2 + 1/3 + 1/4
Çıktı:
1 1 1
- + - + -
2 3 4
Giriş:
3x^2 / 2 + x^3^3
Çıktı:
2 3
3 x 3
---- + x
2
Giriş:
(2 / x) / (5 / 4^2)
Çıktı:
2
-
x
--
5
--
2
4
Giriş:
(3x^2)^(1/2)
Çıktı:
2 1/2
(3 x )