Pregunta

A medida que X va a 0, los límites de x^0 y 0^x van a 1 y 0, respectivamente. Algunos dicen que el mejor valor para 0^0 depende del contexto, otros dicen que el valor de 0^0 debería ser 1. Estoy interesado en saber lo que dicen sus implementadores de lenguaje. No parece haber un consenso. Por ejemplo, en activestate perl 5.12.0:

C:\>perl -e "print 0**0"
1

Mientras que en Mathematica 6.0:

In[1]:= 0^0
        During evaluation of In[1]:= Power::indet:
        Indeterminate expression 0^0 encountered. >>
Out[1]= Indeterminate

También estoy interesado en conocer su opinión sobre el asunto: ¿Qué debe ser 0^0? ¿Y también si alguna vez ha introducido un error en un programa que estaba escribiendo (o le cuesta depurar un programa) debido a la forma en que su lenguaje maneja formularios indeterminados?

¿Fue útil?

Solución

De acuerdo a este Artículo de Wikipedia,

"La mayoría del lenguaje de programación con una función de potencia se implementan utilizando la función IEEE POW y, por lo tanto, evalúa 0^0 como 1. Los estándares posteriores de C y C ++ describen esto como el comportamiento normativo. El estándar Java exige este comportamiento. El sistema de método de marco .NET. .Math.Pow también trata 0^0 como 1. "

Otros consejos

Pitón:

>>> for t in [int, float, complex, fractions.Fraction, decimal.Decimal]:
...     print(t, t(0)**0)
... 
<type 'int'> 1
<type 'float'> 1.0
<type 'complex'> (1+0j)
<class 'fractions.Fraction'> 1
Traceback (most recent call last):
  ...
decimal.InvalidOperation: 0 ** 0

Google dice:

0^0 = 1

Delphi tiene 2 valores flotantes: NaN y Infinity. Que se devuelven en caso de rareza.

Pero no tiene una función de exponencia incorporada.

^ es para punteros, como en "¡Hola, estás allí, te estoy señalando!"

Licenciado bajo: CC-BY-SA con atribución
scroll top