Matlab is inconsistent when raising numbers to the zero'th power:

1 visualización (últimos 30 días)
In matlab R2015a
-1^0
returns
-1
but
a = -1 ; a^0
returns
1
wolfram alpha agrees that -1^0 = -1, but I believe that everybody else says that x^0 = 1, for all x not equal to 0.
The -1^0 = -1 appears to be a bug? But it's hard to believe that Mathematica has exactly the same bug!

Respuesta aceptada

John D'Errico
John D'Errico el 8 de Mzo. de 2016
What you apparently misunderstand is the idea of operator precedence.
There is a difference between these two operations:
-1^0
ans =
-1
and
(-1)^0
ans =
1
What you need to recognize is that ^ operates before the unary minus operator. Once you recognize that, you recognize it is not a bug, but a design question, and one that makes some sense.
You are not the first person to trip over it though. I've seen this question asked before. :)
  2 comentarios
Leo Simon
Leo Simon el 8 de Mzo. de 2016
Thanks! Obvious ex post. Expected it had been asked before, but I searched the forum and found nothing.
Stephen23
Stephen23 el 8 de Mzo. de 2016
Editada: Stephen23 el 8 de Mzo. de 2016
Why search the forum? Once again actually reading the documentation would have been a good step:

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Get Started with MATLAB en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by