Dentro de los diferentes idiomas, no es lo mismo para la división entera redondeo tratamiento.
-
C / Java se manejan
manejando la mayoría de los idiomas están relacionados con C / Java división truncado adoptada por unanimidad. Por lo tanto, el lenguaje C / Java:
Los resultados de 10 a 17% a continuación: R & lt = (-17) - (-17 / 10) X 10 = (-17) - (-1 X 10) = -7
. 17% - 10 los resultados son como sigue: r = 17 - (17 / -10) x (-10) = (17) - (-1 x -10) = 7
los resultados de 17% -10 sigue: r = (-17 ) - (-17 / -10) x (-10) = (-17) - (1 x -10) = -7 -
Python se maneja
lenguaje Python se utiliza en la división de un suelo de división, por lo que los términos de Python programador:
cálculo de 10% -17 sigue: r = (-17) - ( -17 / 10) x 10 = (-17) - (-2 x 10) = 3
los resultados de 17% -10 sigue:. R & lt = 17 - (. 17 / -10) X (-10) = (. 17) - (X -2 -10) -3 =
-17 -10% de los resultados son como sigue: r = (-17) - ( -17 / -10) x (-10) = (-17) - (1 x -10) = -7
según se informa, 3.x Python en " / significa "operador ha cambiado, el resultado de" / "no serán generados de redondeo, los correspondientes" resultados serán redondeado // "operador. -
El enfoque de Common Lisp
resulta operadores especiales de Common Lisp "/" es la puntuación, lo que no habrá ningún problema de truncamiento. Sin embargo, Common Lisp proporciona la función FLOOR TRUNCATE funciones y tanto de la división anterior correspondiente. Apropiarse, Common Lisp función similar a la operación de módulo REM lenguaje C / Java; función MOD es similar a la operación de módulo lenguaje Python.
Por ejemplo, el dialecto Lisp Clojure La puerta, (rem -17 10) == -7 , (mod -17 10) == 3
Autor: Feng Larry
enlace: https: //www.jianshu.com/p/452c1a5acd31
Fuente: libros de Jane
tienen derechos de autor por el autor. reimpresión comercial póngase en contacto con el autor autorizada, reimpresión no comercial por favor indique la fuente.