Antecedentes
El número 1729 es el número Hardy-Ramanujan. S. Ramanujan (quien es ampliamente considerado como el mejor matemático indio 1 ) descubrió una propiedad sorprendente cuando GH Hardy lo visitó en un hospital. En las propias palabras de Hardy:
Recuerdo que una vez lo vi cuando estaba enfermo en Putney. Había viajado en el taxi número 1729 y comentó que el número me parecía bastante aburrido, y que esperaba que no fuera un presagio desfavorable. "No", respondió, "es un número muy interesante; es el número más pequeño expresable como la suma de dos cubos de dos maneras diferentes".
Además de eso, tiene muchas otras propiedades increíbles. Una de esas propiedades es que es un número Harshad, es decir, la suma de sus dígitos (1 + 7 + 2 + 9 = 19) es un factor de ello. Eso también, uno especial. Como demostró Masahiko Fujiwara, 1729 es un número entero positivo que, cuando se suman sus dígitos, produce una suma que, cuando se multiplica por su inversión, produce el número original:
1 + 7 + 2 + 9 = 19
19 × 91 = 1729
Un número entero positivo que tiene dicha propiedad es lo que defino como Hardy-Ramanujan- ish Número Harshad, para el propósito de este post. (Puede haber un término técnico para ello, pero no podría encontrarlo, a menos que sea miembro de A110921 )
La tarea
Dado un número entero positivo n
como entrada, la salida de un valor Truthy o Falsey en función de si la entrada n
es una de Hardy-Ramanujan- ish Número Harshad. Salida de verdad, si es así. De lo contrario, salida falsey.
Tenga en cuenta que sólo cuatro de Hardy-Ramanujan- ish existen número de harshad ( 1
, 81
, 1458
y 1729
), y se puede escribir código que comprueba la equivalencia con ellos. Pero no creo que sea divertido.
Entrada
Su programa debe tomar un número entero positivo (un número natural, en otras palabras). Puede tomarlo de cualquier manera, excepto suponiendo que esté presente en una variable. Se permite la lectura desde la ventana modal, cuadro de entrada, línea de comando, archivo, etc. Tomar entrada como argumento de función también está permitido.
Salida
Su programa debe generar un valor verdadero o falso. No necesitan ser consistentes. Su programa puede generar cualquier salida, excepto escribir la salida en una variable. Se permite escribir en la pantalla, línea de comando, archivo, etc. La salida con función también return
está permitida.
Reglas Adicionales
No debe utilizar una función integrada para realizar la tarea (me pregunto si algún idioma tendrá esa función, pero luego Mathematica ... )
Se aplican lagunas estándar .
Casos de prueba
Input Output
1 Truthy (because 1 × 1 (reverse of 1) = 1)
2 Falsey
3 Falsey
4 Falsey
5 Falsey
81 Truthy (because 9 (8 + 1) × 9 (reverse of 9) = 81)
1458 Truthy (because 18 (1 + 4 + 5 + 8) × 81 (reverse of 18) = 1458)
1729 Truthy (because 19 (1 + 7 + 2 + 9) × 91 (reverse of 19) = 1729)
1730 Falsey
2017 Falsey
Criterio ganador
Este es el código de golf , por lo que gana el código más corto en bytes.
1 Cada año, el 22 º de diciembre, el cumpleaños de Srinivasa Ramanujan, Día Nacional de Matemáticas se observa en la India. Sus colegas, los de Cambridge, lo compararon con Jacobi, Euler e incluso Newton. Además de ser tan bueno, casi no tenía entrenamiento formal en Matemática Pura , pero aun así, hizo importantes contribuciones al análisis matemático , la teoría de números , las series infinitas y las fracciones continuas . Desafortunadamente, murió a la temprana edad de 32 años con miles de descubrimientos matemáticos en su mente. También se hizo una película sobre él, que se basó en su biografía ,El hombre que conocía el infinito .