miércoles, 6 de abril de 2022

Relaciones entre números con cifras simétricas

Efectuar comparaciones teóricas basadas en las cifras de un número en base diez no es muy matemático, por lo que consideraré este tema como un mero entretenimiento. Su objetivo principal será el de practicar funciones, búsquedas y algoritmos. Estudiaremos números simétricos en sus cifras, en los que las de uno sean iguales a las del otro, pero en orden inverso. Para evitar casos ambiguos o singulares, prescindiremos de los múltiplos de 10, para así no considerar el cero a la izquierda que supone, en realidad, que el número de cifras es distinto en ambos, el número y su simétrico. También, en algunas cuestiones no consideraremos los números capicúas o palindrómicos.

Recorreremos algunas propiedades que pueden presentar ambos, número y simétrico.

La diferencia es divisor de ambos

En Excel poseemos una función propia de autor, CIFRAINVER, que transforma un número en su simétrico en cifras. Como explicarla no es un objetivo de este texto, la incluimos en un Anexo al final de la entrada. El resultado de esta función se puede manejar como un número y operar con él normalmente. Así, la diferencia entre un número y su simétrico vendrá dada por d=n-CIFRAINVER(n) y si no es nulo (sería un capicúa) nos preguntaremos si ambos números simétricos son múltiplos de d. Buscamos esas condiciones y obtendremos las soluciones:

45, 54, 495, 594, 4356, 4545, 4995, 5454, 5994, 6534, 10890, 19602, 20691, 29403, 30492, 39204, 40293, 43956, 45045, 49005, 49995, …

Si la diferencia entre dos números es divisor de ambos, sabemos que será su máximo común divisor, lo que sería una definición alternativa de esta búsqueda.

Por ejemplo, 59994-49995=9999, que es M.C.D. de ambos, como puedes comprobar con la fórmula M.C.D(59994;49995).

Para confeccionar una lista podríamos exigir que cada término fuera menor que su simétrico, y así se evitarían duplicaciones en los pares de números, como ha ocurrido con 495 y 594.

Planteado así, resultan los siguientes términos de una sucesión:

45, 495, 4356, 4545, 4995, 19602, 29403, 39204, 43956, 45045, 49005, 49995, 68607, 197802, 296703, 395604, 439956, 450045, 454545, 494505, 495495, 499995, 593406, 692307, 791208, 890109, 1979802, 2969703, 3959604, 4399956, 4500045, 4549545, 4949505, 4950495, 4999995, 5939406, 6929307, 7919208, 8909109,…

Entre ellos figuran los números del tipo 4999..995. Es fácil encontrar la causa, ya que estos números equivalen a 5*(10k-1), y sus simétricos (del 5999…994) tienen la forma 6*(10k-1). Al restarlos resulta 6*10k-6-5*10k+5=10k-1=999…99, que divide a ambos. Cuando ocurre esto, sabemos por el algoritmo de Euclides, que la diferencia será el M.C.D.

Puedes efectuar razonamientos similares con 4545…45 y con 4500…045.

Con el lenguaje PARI se consigue el mismo resultado. Hemos usado el siguiente código:

ok(n)={my(k,d);k=eval(concat(Vecrev(Str(n))));d=abs(n-k);n%10<>0&&d==gcd(n,k)&&n<k}

for(i=1,100000,if(ok(i),print1(i,”, “)))

Con él se consigue la misma sucesión:


El cuadrado de uno es simétrico con el del otro

En esta serie de búsquedas estamos tratando con números simétricos en la base de numeración 10. Por eso viene bien un regreso a una de nuestras entradas de hace años, en la que proponíamos algunos retos.

https://hojaynumeros.blogspot.com/2009/03/cuadrado-del-simetrico-o-simetrico-del.html

En concreto,  se basaban en una mención de una propiedad publicada por Claudi Alsina, en su libro “Vitaminas matemáticas”, y es que el número 12 presenta la siguiente propiedad: 122 = 144 y 212 = 441, es decir, que el cuadrado de su número simétrico en cifras coincide con el simétrico de su cuadrado.

Con el uso de nuestra función CIFRAINVER podemos ampliar y resolver por algoritmo las propuestas que se efectuaban sobre esta situación. Usaremos una función con una sola línea, que devolverá si esta propiedad se verifica (VERDADERO) o no (valor FALSO). Es esta:

 

Function cuadsimetrico(n) As Boolean

Dim m

m = cifrainver(n)

cuadsimetrico = (n ^ 2 = (cifrainver(m ^ 2)) And n < m)

End Function

En ella se asigna como valor de salida la igualdad entre el cuadrado del número y el simétrico del cuadrado del simétrico. Se le añade la condición de que el número sea menor que su simétrico, para evitar palíndromos y repeticiones. Con ella se puede reproducir la lista de soluciones propuesta en esta antigua entrada:

12, 13, 102, 103, 112, 113, 122, 1002, 1003, 1011, 1012, 1013, 1021, 1022, 1031, 1102, 1103, 1112, 1113, 1121, 1122, 1202, 1212, 2012, 2022, 10002, 10003, 10011, 10012, 10013, 10021, 10022, 10031, 10102, 10103, 10111, 10112, 10113, 10121, 10122, 10202, 10211, 10212, 10221, 11002, 11003, 11012, 11013, 11021, 11022, 11031, 11102, 11103, 11112, 11113, 11121, 11122, 11202, 12002, 12012, 12102, 12202, 20012, 20022, 20112, 20122,

En http://oeis.org/A106323 figura una sucesión similar, y con casi todos los elementos comunes, pero no exige que las bases de los cuadrados sean simétricas. Por eso admite el 33 y el 3168.

En la entrada recordada se razonaba que en estos números no podían figurar las cifras comprendidas entre 4 y 9, porque producirían arrastres de cifras al calcular su cuadrado. Por una razón similar, no existen soluciones que terminen en 23, pues 2*3+3*2=12 y produce un arrastre de 1.

 

El producto de simétricos produce un capicúa

Para encontrar las soluciones usamos una función similar a la de la cuestión anterior:

Public Function producapicua(n) As Boolean

Dim m

m = cifrainver(n)

producapicua = escapicua(n * m) And n < m

End Function

En ella exigimos que el producto de simétricos sea capicúa y que el número devuelto por la función sea el menor del par.

La función escapicua se limita a exigir que cifrainver(n)=n

El listado obtenido con ella es:

12, 21, 102, 112, 122, 201, 211, 221, 1002, 1011, 1012, 1021, 1022, 1101, 1102, 1112, 1121, 1201, 1202, 1211, 2001, 2011, 2012, 2021, 2101, 2102, 2111, 2201, 10002, 10011, 10012, 10021, 10022, 10102, 10111, 10112, 10121,…

Vemos que aquí también existe restricción de cifras, por una cuestión de arrastres en las operaciones de multiplicar.

 Hemos tomado el menor. Si consideramos el par de simétricos, encontraremos la sucesión en http://oeis.org/A048344:

A048344              a(n) * a(n)_reversed is a palindrome (and a(n) is not palindromic).      

12, 21, 102, 112, 122, 201, 211, 221, 1002, 1011, 1012, 1021, 1022, 1101, 1102, 1112, 1121, 1201, 1202, 1211, 2001, 2011, 2012, 2021, 2101, 2102, 2111, 2201, 10002, 10011, 10012, 10021, 10022, 10102, 10111, 10112, 10121, 10202, 10211, 11001

No exige que el número sea menor que su simétrico. Por eso se obtiene el doble de soluciones.

Un ejemplo: 2102*2012=4229224

Los dos simétricos son del mismo tipo

Si usamos las funciones propias escuad, estriangular o esoblongo, por ejemplo (puedes buscarlas  en este blog) obtendremos los simétricos que coinciden en su tipo.

Primos

El caso de primos está muy estudiado, y se les llama omirp o emirp en inglés (ver http://oeis.org/A006567)

En este blog hemos estudiado los “palprimos”, o primos palindrómicos:

https://hojaynumeros.blogspot.com/2016/05/palprimos-primos-palindromicos.html

Triangulares

Para encontrar números triangulares simétricos y que no sean capicúas ni múltiplos de 10 (para que tengan igual número de cifras) podemos usar esta condición:

 a=cifrainver(i)

estriangular(i) And estriangular(a) And i < a And i / 10 <> i \ 10

Al exigir que i<a nos quedamos con los valores menores de cada par. Hay pocos, por lo que entre 1 y 20000 sólo hemos encontrado 153 y 17578. No hemos seguido, porque ya están publicados en

http://oeis.org/A066528:

153, 351, 17578, 87571, 185745, 547581, 1461195, 5911641, 12145056, 12517506, 60571521, 65054121, 304119453, 354911403,…

Con nuestra función Ordentriang (también la puedes buscar en este blog) podemos comprobar alguno de los pares:

12517506=5003*5004/2       

60571521=11006*11007/2

Ambos son triangulares.

No hay más que añadir, ya se indicó que este tema es poco matemático.

Cuadrados

Es la misma cuestión que planteamos antes, pero sin exigir que si los números son cuadrados, las bases también lo sean. Si seguimos exigiendo que no sean capicúas ni múltiplos de 10, queda como condición

a = cifrainver(i)

escuad(i) And escuad(a) And i < a And i / 10 <> i \ 10

Obtenemos:

Coinciden con los publicados en http://oeis.org/A156316

Oblongos

Hay pocos ejemplos. Hemos encontrado tres sin esfuerzo:

29756, 2150622, 2898506.

Aquí podemos comprobar que ambos son oblongos:

29756 =172*173

65792 =256*257

 

2150622 =1466*1467

2260512 =1503*1504

 

2898506 =1702*1703

6058982 =2461*2462

 

Cubos

No parecen existir soluciones con menores que 2*10^7

Si exigimos que ambos sean son suma de cubos, ahí sí existen soluciones (figuran los menores de cada par y no múltiplos de 10):

1008, 1332, 1339, 4608, 13895, 14364, 16263, 19773, 27027, 32535, 39528, 107136, 119853, 157248, 158184, 179513, 195237, 199143, 318968, 373464, 399665, 406224, 422218, 476379,

Por ejemplo, 27027=30^3+3^3 y 72072 =32^3+34^3

Esto no da más de sí. Ya se advirtió al principio que era un tema poco matemático, pero igual alguien que lea esta entrada le puede servir para que se le ocurran ideas similares.


ANEXO

Función CIFRAINVER

Convierte un número en su simétrico en cifras. Lo devuelve como tal número, por lo que se puede operar con él con las distintas operaciones matemáticas y funciones.

 

Public Function cifrainver(n)

Dim l, i

Dim c

Dim auxi$, auxi2$, ci$

' invierte el orden de las cifras para dar otro

If n < 10 Then cifrainver = n: Exit Function  ‘Número de una cifra

auxi = haztexto(n) ‘Convierte el número en texto

auxi2$ = ""

l = Len(auxi)

For i = l To 1 Step -1 ‘Va volcando las cifras en otro texto en orden inverso

ci$ = Mid(auxi, i, 1)

auxi2 = auxi2 + ci$

Next i

c = Val(auxi2$) ‘Convierte el nuevo texto en número

cifrainver = c

End Function

 

 

 

No hay comentarios: