Menos tres al cuadrado

Esta es una referencia de los resultados que dan diferentes lenguajes y herramientas ante las expresiones -3^2 y 2^2^3, sin paréntesis. En el primer renglón está la referencia de lo que dictan las matemáticas.

No significa que los lenguajes estén mal. Simplemente su algoritmo de parseo es diferente. Lo que importa es que el comportamiento esté debidamente documentado.

Esto salió tras una discusión sobre LibreOffice Calc.

Nota: algunos lenguajes tienen un operador ^ que no corresponde a la exponenciación sino a la operación binaria XOR; otros lenguajes manejan la exponenciación por medio de la función pow(), lo cual elimina cualquier posibilidad de ambigüedad.

-3^2 2^2^3 Notas Documentación
Álgebra -9 256 La notación es -32 y 223 ?
Python 2 y 3 -9 256 El operador es **. https://docs.python.org/3/reference/expressions.html#operator-precedence
LibreOffice Writer (tablas) -9 256 https://help.libreoffice.org/latest/es/text/swriter/02/14020000.html
PHP -9 256 El operador es **. https://www.php.net/manual/es/language.operators.precedence.php
PostgreSQL 9 64 https://www.postgresql.org/docs/current/functions-math.html
LibreOffice Calc 9 64 https://help.libreoffice.org/latest/es/text/scalc/01/04060199.html
Microsoft Excel 9 64 https://support.microsoft.com/en-us/office/the-order-in-which-excel-performs-operations-in-formulas-28eaf0d7-7058-4eff-a8ea-0a835fafadb8
LibreOffice Basic 9 64 https://help.libreoffice.org/latest/en-US/text/sbasic/shared/03070500.html
Bash  9  256 El operador es **. https://www.gnu.org/software/bash/manual/html_node/Shell-Arithmetic.html

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *