La "rana prima" es un animal extraño que salta entre enteros, hasta que llega el 3 o 19 ...
Su programa debe aceptar un nĂșmero entero ncomo entrada y salida del resultado del algoritmo siguiente ( 3o 19).
Para un entero dado n >= 2:
- Dejar
fser la posiciĂłn de la rana. Inicialmente se establece enn - if
f = 3orf = 19: la rana deja de saltar: detiene el programa y la salidaf. - si
fes primo: la rana salta a la posiciĂłn2Ăf-1. Regrese al paso 2. - si
fes compuesto: dejar quedseaf's divisor primo mayor. La rana salta a la posiciĂłnf-d. Regrese al paso 2.
Ejemplos:
Un ejemplo con n = 5:
5 > 9 > 6 > 3 stop
El programa deberĂa salir 3.
Otro ejemplo con n = 23:
23 > 45 > 40 > 35 > 28 > 21 > 14 > 7 > 13 > 25 > 20 > 15 > 10 > 5 > 9 > 6 > 3 stop
De nuevo, el programa deberĂa salir 3.
Casos de prueba:
10 => 3
74 => 19
94 => 3
417 => 3
991 => 19
9983 => 19
Puede suponer 1 < n < 1000000(he comprobado que el programa termina con estos valores).
3o 19, podrĂamos cambiar el elemento 2. en el algoritmo para decir que si la rana ha entrado en un bucle (ha encontrado una posiciĂłn que ha visto antes), entonces deja de saltar y devuelve el mĂĄs pequeño miembro de ese ciclo.
