raiz cuadrada

leo_r805
05 de Noviembre del 2005
buenas gente, como va???
yo acá, posteando mi primer mensajito :-)

mi problemita es que no puedo sacar la raiz cuadrada a un numero de 64 bits, o sea...
tengo un __int64 y quiero su raiz...

si alguien puede ayudarme se lo agradeceria mucho....

chuidiang
05 de Noviembre del 2005
Hola:

Puedes hacerle un cast a double. Luego caculas la raiz con sqrt. Finalmente, si lo quieres es una raiz entera, puedes ver si el resultado se asemeja a un entero.

__int64 valorRedondeado = (_int64)(raiz+0.5); // +0.5 para que quede redondeado al entero más próximo

if (abs(valorRedondeado-raiz) < 0.0001) // 0.0001 es un valor que tú consideres lo suficientemente pequeño

Se bueno