Saltar al contenido

Raíz cuadrada a mano

Enunciado

Escribe una función que reciba un número entero mayor que 0 y regrese su raíz cuadrada: el número que multiplicado por sí mismo da ese número. La raíz de 25 es 5, porque 5 por 5 es 25.

El número que te llega siempre es un cuadrado perfecto, así que la raíz siempre es un entero. No tienes que pensar qué pasa con el 10.

No se vale usar la raíz que ya trae el lenguaje (math.sqrt, Math.sqrt, ** 0.5): el chiste del reto es buscarla tú.

Idea: prueba candidatos con un while. Arranca en 1 y sube de uno en uno mientras el candidato por sí mismo se quede corto. El primero que alcanza es la respuesta.

Ejemplos

  • Cuatro

    4 → 2

  • El ejemplo

    25 → 5

  • Tres dígitos

    196 → 14

Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.

Empiezas con esto

Python

def raiz_cuadrada(n):
    pass

JavaScript

function raizCuadrada(n) {
}
Resolver este reto

Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.

Más retos de O(n)

Ver todos los retos →