Hace unas semanas tuve ocasión de estudiar la terna pitagórica (9, 40, 41) y me llamó la atención el hecho de que la medida del cateto 9 dividía al perímetro 9+40+41=90. Me pregunté si existían muchos números con esa propiedad. Aquí tenéis mis búsquedas y razonamientos.
Al principio creí que sería un hecho más bien
extraordinario, pero después de las primeras búsquedas me di cuenta de que
existen muchos casos de este tipo, aunque son más abundantes aquellos en los
que el perímetro no es múltiplo de ninguno de los catetos.
Solo tiene interés estudiar las ternas primitivas, en las
que los tres lados son primos entre sí, porque si se cumple en una primitiva,
también se cumplirá en sus derivadas, porque tanto el perímetro como los lados
se multiplican por el mismo número, con lo que el carácter de múltiplo se
conserva.
La primera terna en la que se cumple esto es la (3, 4, 5).
Su perímetro es 12, y es múltiplo de 3 y 4.
La siguiente es (5, 12, 13), porque P=5+12+13=30, que es
múltiplo de 5 (pero no de 12)
La primera terna en la que no se cumple es la (20, 21, 29),
ya que el perímetro es 70, que no es múltiplo ni de 20 ni de 21.
Sospechamos, pues, que ninguno de los dos casos contrarios
es excepcional.
Función de búsqueda
Hay dos formas de construir ternas primitivas. Una de ellas
es la tradicional de buscar expresiones del tipo (2mn, m2-n2, m2+n2) con m y n primos entre sí y paridad distinta. Esta forma la dejamos para
más adelante. Hemos visto que el algoritmo correspondiente no gana mucha
velocidad.
(Ver este procedimiento en
https://es.wikipedia.org/wiki/Terna_pitag%C3%B3rica)
La otra forma es la que no usa esa teoría. Para una posible
hipotenusa n, se descompone su
cuadrado, si es posible, en suma de otros dos cuadrados enteros, y si las bases
son primas entre sí y además el perímetro es múltiplo de uno al menos de los
catetos, se cumplirá lo exigido. Lo plasmaremos en VBasic de Excel y más tarde
en PARI.
Para Excel podemos usar la siguiente función de tipo texto.
Su nombre recuerda cómo iniciamos la entrada, con un cateto 9 que dividía al
perímetro 90.
Public Function cateto_div_terna$(n) 'n
es la hipotenusa de la terna estudiada
Dim a, b, c, p, j, k
Dim s$
Dim noes As Boolean
a = n ^ 2 ‘Descomponemos n^2 en dos
cuadrados
j = 1
b = 1: c = a - 1
s$ = ""
noes = True
j = 1 ‘Es la base del primer
cuadrado
While j < n And noes
b = j ^ 2: c = a - b
If escuad(c) Then ‘Segundo cuadrado
posible
k = Sqr(c)
p = n + j + k ‘Perímetro
If (p Mod j = 0 Or p Mod k = 0) And
mcd(mcd(j, k), n) = 1 Then noes = False: s$ = Str$(n) + Str$(j) + Str$(k) +
Str$(p)
‘La condiciones son que p sea múltiplo de j y de k
y que todos sean primos entre sí.
Si se cumplen se recoge la solución en s$.
End If
j = j + 1
Wend
cateto_div_terna = s
End Function
Con esta función no es difícil recorrer números, quedarnos
con la hipotenusa y reconstruir la terna. Aquí tienes las primeras soluciones:
5, 13, 17, 25, 37, 41, 61, 65, 85, 101, 113, 145, 181, 197,
221, 257, 265, 313, 325, 365, 401, 421, 481, 485, 545, 577, 613, 677, 685, 761,
785, 841, 901, 925, 1013, 1025, 1105, 1157, 1201, 1297, 1301, 1405, 1445, 1513,
1601, 1625, 1741, 1765, 1861, 1937, 1985, 2113, 2117, 2245, 2305, 2381, 2501, 2521,
2665, 2705, 2813, 2917, 2965, 3121, 3137,
ok(k)={my(a=k^2,j=1,b=1,c=a-1,l,p,
m=0);while(j<k&&m==0,b=j^2;c=a-b;if(issquare(c),l=sqrtint(c);p=k+j+l;if((p%j==0||p%l==0)&&gcd(gcd(j,l),k)==1,m=1));j+=1);m}
for(i=1,2000,if(ok(i),print1(i,", ")))
Su resultado coincide, como era de esperar, con el obtenido
en Excel:
Estudio teórico
Tras la búsqueda a ciegas podemos plantearnos un estudio más
profundo. Nos basaremos en la clásica fórmula de generación de ternas
primitivas:
(2mn, m2-n2,
m2+n2) con m
y n coprimos y de distinta paridad.
En ese caso el perímetro P tendrá la fórmula P=2mn+m2-n2+ m2+n2=2m(m+n)
Se pueden dar tres casos:
1) El perímetro es
múltiplo del cateto par
2m(m+n)/(2mn)=(m+n)/n=m/n+1
Al ser m y n coprimos y de distinta paridad, para que sea
múltiplo ha de ser n=1 y m=2r, con lo que hipotenusa será m2+n2=4r2+1.
El perímetro será 4r+4r2+1+4r2-1=8r2+4r=4r(2r+1)
y pertenecerá a http://oeis.org/A033586 y
la diferencia entre hipotenusa y cateto mayor será de dos unidades.
Puedes verificar que todas las soluciones en las que el
perímetro es múltiplo del cateto impar tienen esta forma. Así ocurre con el
ejemplo con el 17, que forma la terna (8, 15, 17), en la que 17=4*22+1,
el perímetro es 8+15+17=40, que es múltiplo de 8.
Por tener esta expresión, las hipotenusas correspondientes
pertenecerán a http://oeis.org/A053755 y
las primeras serán 5, 17, 37, 65, 101, 145, 197, 257, 325, 401,…
2) El perímetro es
múltiplo del cateto impar
En ese caso hay que estudiar el cociente 2m(m+n)/(m2-n2)=2m/(m-n)=2+2n/(m-n),
lo que obliga a que 2n/(m-n) sea entero. El denominador m-n ha de ser impar,
luego ha de dividir a n y n/(m-n)=t será entero. Se deduce que n=(m-n)t;
n(t+1)=m*t; n/t=m/(t+1)=k, lo que lleva a que k=1, pues en caso contrario, m y
n no serían primos entre sí. Por tanto queda que n=t y m=t+1, es decir, que m y
n son consecutivos. La hipotenusa quedaría como (n+1)^2+n^2.
Esto ocurre en el ejemplo del principio de esta entrada, (9,
40, 41): 41=52+42, 9=52-42; 40=2*4*5,
y 41+40+9=90 es múltiplo del cateto impar.
Las hipotenusas de este tipo pertenecen a http://oeis.org/A001844
La terna quedará: (2mn, m2-n2, m2+n2)=(2n2+2n,
2n+1, 2n2+2n+1) y serán consecutivos la hipotenusa y un cateto
El perímetro será 2(n+1)(2n+1) y pertenecerá a http://oeis.org/A002939
Estos dos casos cubren toda la sucesión de hipotenusas que
estamos estudiando.
Esto da lugar a otra función alternativa más
rápida:
Public Function cateto2_div_terna(n) 'Da la hipotenusa para que el perímetro sea divisible
Dim b, c, j, k, a
Dim es As Boolean
j = 1
a = j ^ 2
es = False
While a < n And Not es
b = n - a
If escuad(b) Then ‘Se descompone n en suma de dos cuadrados
c = Sqr(b)
If c < j And (c = 1 And a Mod 2 = 0 Or
Abs(j - c) = 1) Then es = True ‘Las dos condiciones
End If
j = j + 1: a = j ^ 2
Wend
cateto2_div_terna = es
End Function
Es interesante la intersección entre los dos casos:
3) El perímetro es
múltiplo de los dos catetos
Es el caso del 5 y del 145, que cumplen las dos condiciones
estudiadas. Es decir, en ellos se dará que
4r2+1=(n+1)^2+n^2
5=4*12+1=22+12
145=4*62+1=92+82
Desarrollando y despejando
4r2 tenemos: n2+2n+1+n2-1=2(n2+n)
ha de ser un cuadrado (que será par con seguridad) y la hipotenusa una unidad
mayor. Aquí tienes los primeros:
No hay comentarios:
Publicar un comentario