Destek

Uygulamanın desteklediği ve yazılacak fonksiyon içerisinde kullanılabilinecek işlem, fonksiyon ve sabitler aşağıdaki tablolarda listelenmiştir.

İşlem Açıklama
+ Toplama
- Yazıldığı konuma göre; çıkarma veya -1 ile çarpma
* Çarpma
/ Bölme
^ Üs Alma
Sabitler Gösterimi Değeri
pi π 3.141592...
e e 2.718281...
Fonksiyon Alternatif
sin -
cos -
ln -
karekok sqrt
mutlak abs
yuvarla round
taban floor
tavan ceil

Yazılan Fonksiyonların Uygulama Tarafından Ayıklanması / Okunması

Uygulamanın fonksiyonları ayıklama işlemi sunucu tarafında yapılır ve etkileyici şekilde ayıklar.

Uygulama, gelişmiş hesap makinelerinden veya formuller üzerinden işlem yapan uygulamalara göre standart dışı yazımları da destekler. Örneğin çarpma işlemi konulmadan yapılan çarpmalar gibi, ve bu tür çarpmalara ben gizli çarpma demekteyim.

Uygulama, formulleri soldan sağa doğru okur ve öncelik sırasını göz önünde bulundurarak sayı, ortak fonksiyon, sabit, değişken (x gibi) ve parantezin tamamı gibi blokları (ben bunları blok diye adlandırıyorum) birbirine kombine eder. Uygulama için farklı işlemlerin farklı öncelikleri vardır. Özellikle uygulama, esnek şekilde bir çok yazımı kabul ettiğinden, açık şekilde yazılmamış fonksiyonları insanların düşünme şekline göre önceliklere ayırır ve kombine eder. İşlem öncelik sırası şöyledir;

  1. Ortak Fonksiyonun Parametresi
  2. Üsler
  3. Gizli Çarpmalar
  4. Çarpma ve Bölme İşlemleri
  5. Toplama İşlemleri

Bu listede çıkarma işlemi yoktur, çünkü uygulama için "-" işareti bir sonraki blokla çarpılacak -1 anlamın gelir, ve bu işaret parantezin başında da olabilir.

Bir daha tekrarlamak gerekirse, yukarıdaki listede belirtilen öncelik sırası, formul açık bir şekilde veya parantez kullanmadan yazılmamışsa uygulanır.

Açık Olmayan Fonksiyon Örneği

Açık olmayan ve tüm öncelikleri içeren bir fonksiyonun uygulama tarafından nasıl algılanacağını göstermek istiyorum. Örnek fonksiyonumuz şudur;

sincosx^2+2*-x/6*3pi

Bir çok ayıklayıcı için "Syntax Error" (Yazım/Grammer Hatası) verecektir ancak bu uygulama oldukça esnek olduğundan, bu tür ifadeleri kabul eder. Uygulama bu formulü şu şekilde anlayacaktır;

sin(cos(x))^2 + ((2*(-x))/6)*(3*pi)

Görüldüğü üzere uygulama bu tür fonksiyonları, insan gözünün ilk önce gördüğü yerleri baz alarak öncelik uygular.

Kullanıcı zaten parantez kullanıyorsa, uygulama ilk önce parantez içlerini hesaplayacağından kararsız durumlar veya tereddüt edilecek durumlar ortadan kaldırılmış olur.