A mi si hago
round(nro**(float(1.0/3.0)))
me da como resultado 3
Saludos
Enrique


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 <pdlo...@uci.cu <mailto:pdlo...@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@python.org <mailto:Python-es@python.org>
    http://mail.python.org/mailman/listinfo/python-es
    FAQ: http://python-es-faq.wikidot.com/


------------------------------------------------------------------------

_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a