AppleScript'i tam olarak nasıl sayırım?
AppleScript'e göre, aşağıdaki denklem gerçek olur:89723443578920345892 / 2 = 448617217894600000000
Ancak bu doğru değil. AppleScript'in daha sonra yuvarlanmadan sayılmasını sağlamak için ne yapabilirim?
AppleScript'i tam olarak nasıl sayırım?
AppleScript'e göre, aşağıdaki denklem gerçek olur:89723443578920345892 / 2 = 448617217894600000000
Ancak bu doğru değil. AppleScript'in daha sonra yuvarlanmadan sayılmasını sağlamak için ne yapabilirim?
Yanıtlar:
Komut satırı yardımcı programı bc
isteğe bağlı hassas matematik yeteneğine sahiptir ve AppleScript'ten bir komut satırı yardımcı programını çağırabilir ve ondan bir değer alabilirsiniz.
Örneğin:
set myVariable to do shell script "echo \"89723443578920345892 / 2\" | bc"
Bu sonucu verir: 44861721789460172946
Komut satırı değişkenlerini AppleScript değişkenleri olarak iletmek için:
set myNumber1 to "89723443578920345892"
set myNumber2 to "2"
set myVariable to do shell script "echo " & myNumber1 & " / " & myNumber2 & "| bc"
Fakat bu bizi asıl soruna geri götürüyor, AppleScript büyük sayıları kayan nokta olarak temsil ediyor, bu yüzden değeri bir dize olarak iletmek zorunda kaldım. Bu yüzden, çok fazla sayıyı nereden aldığınıza bağlı olarak, bu sorunlu veya çözüm dışı olabilir.