Spezielle Zahlen in Java sind solche, deren Summe der Fakultäten gleich der Zahl selbst ist. Es kann eine N-stellige Zahl sein. Das Programm muss zunächst die Zahl in ihre entsprechenden Ziffern zerlegen und deren Fakultäten berechnen. Sobald dies erledigt ist, sollte die Summe der einzelnen berechneten Fakultäten addiert werden. Wenn die Summe mit der ursprünglichen Zahl übereinstimmt, wird die Zahl als Sonderzahl bezeichnet. Wenn das Programm ausgeführt wird, werden die Ziffern und ihre Fakultäten mithilfe eines Modulkonzepts und Math.fact() berechnet, das die Fakultät jeder Zahl berechnet. In diesem Artikel werden wir prüfen, ob es sich bei bis zu 4-stelligen Zahlen um Sonderzahlen handelt oder nicht.
Starten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
Mathematisch müssen wir zeigen, wie die Summe der Fakultäten einzelner Ziffern einer Zahl mit der ursprünglichen Zahl übereinstimmt. Ein Beispiel für eine Zahl ist 145.
145= 1! +4! +5!
In diesem Artikel werden wir auch sehen, wie sie funktionieren, und andere Sondernummern, bei denen es sich entweder um zwei- oder dreistellige Zahlen handeln kann. Java verfügt über viele Plattformen, auf denen dieses Programm ausgeführt werden kann. In diesem Artikel werden wir die Funktionsweise des Programms auf der BlueJ-Plattform überprüfen. Es sind vier Sonderzahlen vorhanden, die uns bekannt sind. 1,2, 145 und 40585.
In diesem Programm geben wir eine Nummer ein und prüfen, ob die Nummer speziell ist oder nicht. Wir prüfen indirekt, ob die Summe der Fakultäten der Ziffern der ursprünglichen Zahl entspricht.
Code:
//Java program to check if a number // is a special number import java.util.*; import java.io.*; class Special { // function to calculate the factorial // of any number using while loop static int factorial(int n) { int fact = 1; while (n != 0) { fact = fact * n; n--; } return fact; } // function to Check if number is Special static boolean isSpecial(int n) { int sum = 0; int t = n; while (t != 0) { // calculate factorial of last digit // of temp and add it to sum sum += factorial(t % 10); // replace value of t by t/10 t = t / 10; } // Check if number is Special return (sum == n); } // Driver code public static void main(String[] args)throws IOException { BufferedReader br= new BufferedReader(new InputStreamReader(System.in)); System.out.println("Enter the number to check if it is Special"); int n = Integer.parseInt(br.readLine()); if (isSpecial(n)) System.out.println("YES- The number is a special number"); else System.out.println("NO- The number is not a special number"); } }
Jetzt prüfen wir 145 als Nummer und 40585 als andere Nummer. Mit diesem Codeteil prüfen wir die Zahlen 145, 1 und 2. Mit dem anderen Programm sehen wir die Zahl 40585 und verwenden eine andere Methode für eine Schleife, die im Programm installiert werden kann. Jetzt sehen wir verschiedene Ausgaben für das oben gezeigte Programm. Die Ausgaben erfolgen für die Nummern 1, 2, 25 und 145.
Ausgabe:
In diesem Codierungsbeispiel werden wir sehen, wie das Programm mithilfe einer for-Schleife erstellt werden kann. Das vorherige Programm verwendete eine While-Schleife, um die Fakultät der Zahl zu berechnen. Unten sehen wir uns das Codierungsbeispiel zur Berechnung der Fakultät mithilfe einer for-Schleife an.
Code:
//Java program to check if a number // is a special number import java.util.*; import java.io.*; class Special { // function to calculate the factorial // of any number using for loop static int factorial(int n) { int fact = 1; for (int i=1;i<=n;i++) { fact = fact * i; ; } return fact; } // function to Check if number is Special static boolean isSpecial(int n) { int sum = 0; int t = n; while (t != 0) { // calculate factorial of last digit // of temp and add it to sum sum += factorial(t % 10); // replace value of t by t/10 t = t / 10; } // Check if number is Special return (sum == n); } // Driver code public static void main(String[] args)throws IOException { BufferedReader br= new BufferedReader(new InputStreamReader(System.in)); System.out.println("Enter the number to check if it is Special"); int n = Integer.parseInt(br.readLine()); if (isSpecial(n)) System.out.println("YES- The number is a special number"); else System.out.println("NO- The number is not a special number"); } }
In dieser Zahl 145 und 40585 erfüllen beide Sonderzahlen die Voraussetzung, eins zu werden. Daher stellen wir fest, dass es sich bei den Zahlen um Sonderzahlen handelt, die in der Ausgabe angezeigt wurden.
Ausgabe:
Die Codes im Artikel sind sehr nützlich und können verwendet werden, um die gedruckte Anweisung von jemandem leicht auf der BlueJ-Plattform anzuzeigen. Da das Fakultätskonzept ins Spiel kommt, können wir ein Konzept haben, das sich auf eine Zahlenfakultät bezieht. Die letzte Ziffer einer Summe von Fakultäten der ersten N Terme, wobei N>5 immer 3 ist, da die letzte Ziffer danach immer Null ist. Auch wenn wir Fakultäten von Zahlen betrachten, werden sie im Allgemeinen nicht im Fall von Dezimalzahlen oder Brüchen in einer Zahl verwendet. Daher müssen wir für die Verwendung unserer Zahlen im Fakultätsprogramm nur eine positive ganze Zahl verwenden. Wenn ein Bruch in das Programm eingeht, wird das Programm beendet. Wir können die Anzahl der Zehner in bestimmten großen Fakultäten auch durch eine Berechnung berechnen. Das werden wir in einem anderen Artikel sehen.
In diesem Artikel haben wir hauptsächlich vier Zahlen gesehen: Sonderzahlen oder Krishnamurthy-Zahlen im Allgemeinen. Wir sehen also die grundlegende Struktur und das Verhalten der Zahlen in Bezug auf ihre Fakultäten. Wir überprüfen, ob die Nummern 1,2,4 und 40585 Sondernummern sind, die die gleichen Eigenschaften haben.
Das obige ist der detaillierte Inhalt vonSondernummer in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!