[Python-es] cubo perfecto

Pepe Aracil pepe en diselpro.com
Lun Mar 15 18:01:37 CET 2010


Tambien puedes poner la precision en la llamada a round()

 >>>round(64**(1./3),5).is_integer()
 >>>True

 >>>round(65**(1./3),5).is_integer()
 >>>False

Saludos.


marmolro escribió:
> Para estos casos yo suelo sustituir el is_integer() por:
>
> >>> round(64**(1./3),0) - 64**(1./3) < 10**-15
> True
>
> El valor de la aproximación ya lo fijas en función de la precisión que 
> quieres. No lo conozco en detalle, pero supongo que se podría dar el 
> caso de "falsos positivos".... ¿alguien conoce una técnica mejor?
>
>
>
> 2010/3/15 Pavel Daniel Lopez Castillo <pdlopez en uci.cu 
> <mailto:pdlopez en uci.cu>>
>
>     Exacto ese es el problema que tengo, pero se puede resolver con
>     round(numero ** (1.0 / 3))
>
>     pero para 26 por ejempo me da 3 y necesito que sea 2, me hace
>     falta que si es un cubo perfecto me de la raiz exacta pero si no
>     lo es me de la parte entera del flotante
>
>     raiz cubica de 26 = 2.96249606841  parte entera = 2
>
>     _______________________________________________
>     Python-es mailing list
>     Python-es en python.org <mailto:Python-es en python.org>
>     http://mail.python.org/mailman/listinfo/python-es
>     FAQ: http://python-es-faq.wikidot.com/
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>   




Más información sobre la lista de distribución Python-es