Iteraciones while

Se piden los códigos de varias funciones. Atención, no uséis el módulo
math.

1.  Programad una función entera @int_root(n)@ que dado un número
    natural n retorne $\lfloor\sqrt{n}\rfloor$.

2.  Programad una función @int_log(a, b)@ que dados los números
    naturales a mayor que uno y b mayor que cero retorne el natural k
    tal que a^(k) ≤ b < a^(k + 1).

3.  Programad una función @gcd_lcm(a, b)@ que dados los números
    naturales a and b tales que a ≠ 0 o b ≠ 0 retorna el máximo común
    divisor y el mínimo común múltiplo. Vuestro código ha de implementar
    el algoritmo de Euclides.

4.  Programad una función @is_prime(n)@ que dado un número natural n
    retorna True si y sólo si n es primo.

5.  Para poder participar en los juegos de mesa del casino se necesita
    adquirir fichas (tokens). Lo tokens rojos cuestan 7 euros y los
    amarillos 4 euros. Programad una función @buy_tokens(n)@ que dado un
    número n de euros (n ≥ 20), retorna la equivalencia en tokens.
    Cuando varias equivalencias son posibles la función retorna la que
    minimiza el número total de tokens.

6.  Programad una función @inv_factorial(n)@ que dado un entero n > 1
    retorna el número m tal que (m − 1)! < n ≤ m!.

Puntuación

La primera función vale 15 puntos. El resto vale 17 puntos cada una.

Ejemplo de sessión

Información del problema

Autoría: Jorge Castro

Generación: 2026-01-25T15:48:41.181Z

© Jutge.org, 2006–2026.
https://jutge.org
