¿Cómo hacer que AppleScript cuente exactamente?

4

¿Cómo hago que AppleScript cuente exactamente?

Según AppleScript, la siguiente ecuación sería verdadera:
89723443578920345892 / 2 = 448617217894600000000

Eso, sin embargo, no es cierto. ¿Qué puedo hacer para que AppleScript realmente cuente sin redondearlo después?

    
pregunta Prokop Hanzl 02.11.2017 - 21:53

1 respuesta

7

La utilidad de línea de comandos bc es capaz de realizar matemáticas de precisión arbitraria, y puede llamar a una utilidad de línea de comandos de AppleScript y obtener un valor de ella.

Por ejemplo:

set myVariable to do shell script "echo \"89723443578920345892 / 2\" | bc"

Da este resultado: 44861721789460172946

Para pasar los argumentos de la línea de comando como variables de AppleScript:

set myNumber1 to "89723443578920345892"
set myNumber2 to "2"
set myVariable to do shell script "echo " & myNumber1 & " / " & myNumber2 & "| bc"

Pero esto nos lleva de vuelta al problema original, AppleScript representa grandes números como un flotante, por lo que tuve que pasar el valor como una cadena. Entonces, dependiendo de dónde obtengas el gran número, esto podría ser problemático o una no solución.

    
respondido por el David Rouse 02.11.2017 - 22:14

Lea otras preguntas en las etiquetas