Tracks
/
Roc
Roc
/
Ejercicios
/
Raíz cuadrada
Raíz cuadrada

Raíz cuadrada

Fácil

Introducción

Estamos lanzando un cohete de exploración del espacio profundo y necesitamos una manera de asegurarnos de que el sistema de navegación no se desvíe.

Como primer paso de nuestro cálculo, tomamos un número objetivo y le hallamos su raíz cuadrada (es decir, el número que, multiplicado por sí mismo, da como resultado el número objetivo).

El viaje será muy largo. Para que las baterías duren lo máximo posible, tuvimos que hacer que la computadora de a bordo de nuestro cohete fuera muy eficiente en el consumo de energía. Lamentablemente, eso significa que no podemos depender de bibliotecas y funciones matemáticas sofisticadas, ya que consumen más energía. En su lugar, queremos implementar nuestro propio cálculo de raíz cuadrada.

Instrucciones

Tu tarea es calcular la raíz cuadrada de un número dado.

  • Intenta no usar las bibliotecas matemáticas que ya existen en tu lenguaje.
  • Como entrada vas a recibir un número entero positivo, es decir, 1, 2, 3, 4…
  • Solo necesitas manejar los casos en los que el resultado es un número entero positivo.

Algunos enfoques posibles:

  • Una búsqueda lineal o binaria del número que, elevado al cuadrado, dé el número de entrada.
  • Aproximaciones sucesivas con el método de Newton o el de Herón.
  • Calcular un dígito a la vez o un bit a la vez.

Puedes consultar las páginas de Wikipedia sobre la raíz cuadrada entera y los métodos para calcular raíces cuadradas para que te ayuden a elegir un método de cálculo.

Implementación

Este problema se puede resolver fácilmente con la función sqrt integrada de Roc.

Sin embargo, nos gustaría que consideres el reto de resolver este ejercicio sin usar funciones integradas ni módulos.

Aunque existe una fórmula matemática que permite hallar la raíz cuadrada de cualquier número, hemos optado por aceptar como soluciones solo los números naturales (enteros positivos).


Fuente

wolf99El enlace se abre en una ventana o pestaña nueva
Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
Roc Exercism

¿Todo listo para empezar Raíz cuadrada?

Regístrate en Exercism para aprender y dominar Roc con 135 ejercicios y mentoría humana real, todo gratis.