Releyendo el libro “Las Matemáticas de OZ” de Clifford A. Pickover he encontrado este acertijo: “Encontrar tres números diferentes cuya suma de cubos sea un cuadrado y la de sus cuadrados sea un cubo”. He visto que es una buena razón para practicar algoritmos.
Los
tres números iguales
Sin la exigencia de que sean
diferentes obtendríamos rápidamente el trío (3, 3, 3), pues 32+32+32=27=93
y 33+33+33=81=92.
También es válido (192,192,192): 1922+1922+1922=483
y 1923+1923+1923=46082
En este caso de que los tres sean
iguales se resuelve fácilmente por descomposición en factores primos, pues
ambas sumas se reducen a 3n3=p2, 3n2=q3.
Debemos buscar un número tal que si e3 es el exponente de 3 en el
mismo, se cumpla que 1+3e3 sea múltiplo de 2 y que 1+2e3
lo sea de 3. Claramente es válido en el 3, lo que daría la primera solución.
También se cumple en todos aquellos números en los que el exponente de 3 es 1,
como 192=3*26. En el resto de casos, el que 1+3e3 sea
múltiplo de 2 nos obliga a que e3 sea impar, y el que 1+2e3 sea
múltiplo de 3 a que e3 tenga la forma 3k+1 (es fácil razonarlo). Así
que los exponentes válidos para el 3 serán 1, 7,13,19,…tipo 6k+1.
En el resto de factores primos del
número no se ven afectados sus exponentes por el factor 3, luego deberán ser
tales que al multiplicarlos por 3, para formar los cubos, el resultado sea par,
luego serán múltiplos de 2. Igualmente, al multiplicarlos por 2, el resultado
ha de ser un cubo, luego sus exponentes serán múltiplos de 3. Los únicos
exponentes que cumplen esto son los múltiplos de 6, luego ya lo tenemos
resuelto:
Si
los tres números son iguales, el exponente de 3 ha de ser del tipo 6k+1 y los
del resto de factores primos, del tipo 6k.
Hemos realizado un búsqueda con
Excel, y las primeras soluciones son
Se observa que los exponentes (segundo número de cada corchete) cumplen lo establecido.
Esto nos permite encontrar más
soluciones y comprobar que existen infinitas.
Los tres números diferentes
En este caso nos vemos obligados a
usar algún algoritmo. No es difícil, pero sí lento. Para cada N recorremos
todos los pares de números menores que N, diferentes de N y entre sí. Les
aplicamos la condición de Pickover e imprimimos si es válida. Desgraciadamente,
es un proceso lento, pero se consiguen resultados.
Usamos una función dependiente de N:
Function tresnumeros$(n) ’ Es tipo
texto para un conjunto
Dim
i, j
Dim
s$
s =
""
For i
= 2 To n – 1 ‘Primer número, que no llega a n
For j
= 1 To i – 1’ Segundo número, inferior al primero
‘Aplicamos
el criterio
If
escuad(i ^ 3 + j ^ 3 + n ^ 3) And escubo(i ^ 2 + j ^ 2 + n ^ 2) Then s = s +
" # " + Str$(n) + " " + Str$(i) + " " + Str$(j) ‘Solución
Next
j
Next
i
tresnumeros
= s
End
Function
Si no
es solución, devuelve la cadena vacía “” y si lo es, un texto con los tres
números.
Al ser un algoritmo con dos bucles, se tarda mucho en encontrar soluciones. Las primeras son:
A partir de la siguiente, la hoja de cálculo deja de ser fiable para números enteros.
Podemos probar una versión para PARI:
is(n)={my(i=1,j=1,m=0,v=[0,0,0]);for(i=1,n-1,m=0;for(j=1,i-1,if(ispower(i^2+j^2+n^2,3)&&issquare(i^3+j^3+n^3),m=1;v[1]=n;v[2]=i;v[3]=j;print(v))));m}
for(i=1,10000,if(is(i),print(i)))
Es más complicada de seguir, pero nos da alguna solución más en un tiempo de proceso razonable:
252, 234, 198
464,
304, 256
2060,
1854, 1030
4046,
2600, 1122
4394,
4056, 1690
Comprobamos la última solución:
43942+40562+16902=3383
43943+40563+16903=
3954602
Sin restricción de ser diferentes
En ese caso, las variables i, j del algoritmo las dejaremos recorrer todo el rango entre 1 y N. Así se obtendrán todas las soluciones posibles, en la siguiente tabla, hasta un tope de 5000:
3, 3, 3
192,
192, 192
252,
234, 198
464,
304, 256
2060,
1854, 1030
2187,
2187, 2187
4046,
2600, 1122
He probado a comparar otras potencias con un exponente mayor, pero resultan cálculos muy lentos y sin resultado interesante. Sin embargo, al introducir la potencia de exponente 1, las soluciones se han multiplicado. Por ejemplo, este listado corresponde al caso de que los cubos y también la suma con exponente 1 sumen ambas un cuadrado:
6, 2,
1
14, 9,
2
15, 13,
8
16, 14,
6
19, 9,
8
20, 10,
6
20, 17,
12
24, 8,
4
27, 19,
3
28, 22,
14
29, 15,
5
29, 19,
16
35, 25,
4
36, 17,
11
Y siguen muchos más con frecuencia similar. Un ejemplo:
27+19+3=49=72
273+193+33=1632
Con ligeros retoques en los códigos se pueden abordar otros casos similares, pero contando con un equipo que no sea muy lento en los cálculos.
No hay comentarios:
Publicar un comentario