Hintergrund
Die Nummer 1729 ist die Hardy-Ramanujan-Nummer. Eine erstaunliche Eigenschaft davon wurde von S. Ramanujan (der weithin als der größte indische Mathematiker 1 gilt ) entdeckt, als GH Hardy ihn in einem Krankenhaus besuchte. In Hardys eigenen Worten:
Ich erinnere mich, dass ich ihn einmal besucht habe, als er in Putney krank war. Ich war mit dem Taxi Nummer 1729 gefahren und bemerkte, dass die Nummer mir ziemlich langweilig erschien und ich hoffte, dass es kein ungünstiges Omen war. "Nein", antwortete er, "es ist eine sehr interessante Zahl; es ist die kleinste Zahl, die auf zwei verschiedene Arten als Summe von zwei Würfeln ausgedrückt werden kann."
Abgesehen davon hat es viele andere erstaunliche Eigenschaften. Eine solche Eigenschaft ist, dass es sich um eine Harshad-Zahl handelt, dh die Summe ihrer Ziffern (1 + 7 + 2 + 9 = 19) ist ein Faktor dafür. Auch das ist etwas Besonderes. Wie Masahiko Fujiwara gezeigt hat, ist 1729 eine positive ganze Zahl, die, wenn ihre Ziffern addiert werden, eine Summe ergibt, die bei Multiplikation mit ihrer Umkehrung die ursprüngliche Zahl ergibt:
1 + 7 + 2 + 9 = 19
19 × 91 = 1729
Eine positive ganze Zahl mit einer solchen Eigenschaft ist das, was ich für den Zweck dieses Beitrags als Hardy-Ramanujan- ish- Harshad-Zahl definiere . (Es könnte einen Fachbegriff dafür geben, aber ich konnte ihn nicht finden, es sei denn, er ist Mitglied von A110921. )
Die Aufgabe
Bei einer positiven Ganzzahl n
als Eingabe wird ein Wahrheits- oder Falschwert ausgegeben, der davon abhängt, ob es sich bei der Eingabe n
um eine Hardy-Ramanujan- ish- Harshad-Zahl handelt. Ausgabe wahrheitsgetreu, wenn es ist. Andernfalls wird falsey ausgegeben.
Beachten Sie, dass nur vier Hardy-Ramanujan- ish Harshad Zahlen existieren ( 1
, 81
, 1458
und 1729
), und man kann mit ihnen Code, der prüft , ob die Gleichwertigkeit schreiben. Aber ich denke nicht, dass das Spaß machen wird.
Eingang
Ihr Programm sollte eine positive ganze Zahl haben (mit anderen Worten eine natürliche Zahl). Es kann in irgendeiner Weise verwendet werden, außer dass angenommen wird, dass es in einer Variablen vorhanden ist. Das Lesen aus einem modalen Fenster, einem Eingabefeld, einer Befehlszeile, einer Datei usw. ist zulässig. Eingaben als Funktionsargument sind ebenfalls zulässig.
Ausgabe
Ihr Programm sollte einen Wahrheitswert oder einen falschen Wert ausgeben. Sie müssen nicht konsistent sein. Ihr Programm kann auf irgendeine Weise ausgeben, außer die Ausgabe in eine Variable zu schreiben. Schreiben auf Bildschirm, Kommandozeile, Datei usw. ist erlaubt. Die Ausgabe mit Funktion return
ist ebenfalls erlaubt.
Zusätzliche Regeln
Sie müssen kein eingebautes Programm verwenden, um die Aufgabe zu erledigen (ich frage mich, dass eine Sprache ein solches eingebautes Programm haben wird, aber dann Mathematica ... )
Es gelten Standard-Regelungslücken .
Testfälle
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
Gewinnkriterium
Das ist Code-Golf , also gewinnt der kürzeste Code in Bytes!
1 Jedes Jahr am 22. nd Dezember Geburtstag von Srinivasa Ramanujan, Nationalen Tag der Mathematik ist in Indien beobachtet. Seine Kollegen in Cambridge verglichen ihn mit Jacobi, Euler und sogar Newton. Abgesehen davon, dass er so großartig war, hatte er fast keine formale Ausbildung in reiner Mathematik , aber dennoch leistete er wichtige Beiträge zur mathematischen Analyse , zur Zahlentheorie , zu unendlichen Reihen und zu weiteren Brüchen . Leider starb er im frühen Alter von 32 Jahren mit Tausenden mathematischen Entdeckungen im Kopf. Es wurde auch ein Film über ihn gedreht, der auf seiner Biografie beruhte .Der Mann, der die Unendlichkeit wusste .