search
HomeJavajavaTutorialSpecial Number in Java

Special Numbers in Java are ones whose sum of factorials of digits is equal to the number itself. It can be an N digit number. The program has first to break the number into its corresponding digits and calculate their factorials. Once that is done, the sum of the individual calculated factorials should be added. If the sum matches the original number, then the number is called to be a Special number. When the program is running, the digits and their factorials are calculated using a modulus concept and Math.fact(), which calculates each number’s factorial. In this article, we are going to check up till 4 digit numbers which are Special Numbers or not.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

Mathematically, we have to show how the sum of factorials of individual digits of a number matches the original number. One such example of a number is 145.

145= 1! +4! +5!

In this article, we will also be going to see them working and other such Special numbers, which can be either 2 or 3 digit numbers. Java has many platforms on which this program can be run. In this article, we are going to check the working of the program on the BlueJ platform. There are four special numbers which are present which are known to us. 1,2, 145 and 40585.

Examples of Special Number in Java

In this program, we are going to enter a number and check if the number is Special or not. We indirectly check the sum of factorials of the digits as equal to the original number.

Example #1

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");
}
}

Now, we are going to check 145 as the number and 40585 as the other number. Using this piece of code, we are going to check the numbers 145, 1 and 2. With the other program, we are going to see the number 40585 and use a different methodology for a loop that can be installed in the program. Now we are going to see different outputs for the program that has been shown above. The outputs are produced for numbers 1, 2, 25 and 145.

Output:

Special Number in Java

Special Number in Java

Special Number in Java

Special Number in Java

Example #2

In this coding example, we are going to see how the program can be done using for- loop. The previous program was using a while loop to calculate the factorial of the number. We will see the coding example below of how to calculate the factorial using a for a loop.

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
<p>In this number 145 and 40585, both Special numbers satisfy the prerequisite condition of becoming one. Hence we find that the numbers are both Special numbers that have been shown in the output.</p>


<p><strong>Output:</strong></p>
<p><img  src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/172500641454498.png?x-oss-process=image/resize,p_40" class="lazy" alt="Special Number in Java" ></p>
<p><img  src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/172500641557500.png?x-oss-process=image/resize,p_40" class="lazy" alt="Special Number in Java" ></p>
<p>In the article’s codes are very useful, and they can be used to see the print statement by someone easily on the BlueJ platform. Since the factorial concept comes into the picture, we can have a concept related to a number factorial. The last digit of a sum of factorials of the first N terms where N>5 is always 3 because the last digit is always zero after that. Also, whenever we are considering factorial of numbers, they are not generally used in the case of decimals or fractions in a number. So, we have to only use a positive integer for the use of our numbers in the factorial program. If a fraction enters the program, then the program will terminate. We can also calculate the number of 10’s in certain big factorial by a calculation. We will see that in another article.</p>
<h3 id="Conclusion">Conclusion</h3>
<p>In this article, we have seen four numbers majorly: Special numbers or Krishnamurthy numbers in general. So, we see the basic structure and behavior of the numbers with respect to their factorials. We check that numbers 1,2,4 and 40585 are Special numbers which have the same characteristic as each other.</p>

The above is the detailed content of Special Number in Java. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
JVM performance vs other languagesJVM performance vs other languagesMay 14, 2025 am 12:16 AM

JVM'sperformanceiscompetitivewithotherruntimes,offeringabalanceofspeed,safety,andproductivity.1)JVMusesJITcompilationfordynamicoptimizations.2)C offersnativeperformancebutlacksJVM'ssafetyfeatures.3)Pythonisslowerbuteasiertouse.4)JavaScript'sJITisles

Java Platform Independence: Examples of useJava Platform Independence: Examples of useMay 14, 2025 am 12:14 AM

JavaachievesplatformindependencethroughtheJavaVirtualMachine(JVM),allowingcodetorunonanyplatformwithaJVM.1)Codeiscompiledintobytecode,notmachine-specificcode.2)BytecodeisinterpretedbytheJVM,enablingcross-platformexecution.3)Developersshouldtestacross

JVM Architecture: A Deep Dive into the Java Virtual MachineJVM Architecture: A Deep Dive into the Java Virtual MachineMay 14, 2025 am 12:12 AM

TheJVMisanabstractcomputingmachinecrucialforrunningJavaprogramsduetoitsplatform-independentarchitecture.Itincludes:1)ClassLoaderforloadingclasses,2)RuntimeDataAreafordatastorage,3)ExecutionEnginewithInterpreter,JITCompiler,andGarbageCollectorforbytec

JVM: Is JVM related to the OS?JVM: Is JVM related to the OS?May 14, 2025 am 12:11 AM

JVMhasacloserelationshipwiththeOSasittranslatesJavabytecodeintomachine-specificinstructions,managesmemory,andhandlesgarbagecollection.ThisrelationshipallowsJavatorunonvariousOSenvironments,butitalsopresentschallengeslikedifferentJVMbehaviorsandOS-spe

Java: Write Once, Run Anywhere (WORA) - A Deep Dive into Platform IndependenceJava: Write Once, Run Anywhere (WORA) - A Deep Dive into Platform IndependenceMay 14, 2025 am 12:05 AM

Java implementation "write once, run everywhere" is compiled into bytecode and run on a Java virtual machine (JVM). 1) Write Java code and compile it into bytecode. 2) Bytecode runs on any platform with JVM installed. 3) Use Java native interface (JNI) to handle platform-specific functions. Despite challenges such as JVM consistency and the use of platform-specific libraries, WORA greatly improves development efficiency and deployment flexibility.

Java Platform Independence: Compatibility with different OSJava Platform Independence: Compatibility with different OSMay 13, 2025 am 12:11 AM

JavaachievesplatformindependencethroughtheJavaVirtualMachine(JVM),allowingcodetorunondifferentoperatingsystemswithoutmodification.TheJVMcompilesJavacodeintoplatform-independentbytecode,whichittheninterpretsandexecutesonthespecificOS,abstractingawayOS

What features make java still powerfulWhat features make java still powerfulMay 13, 2025 am 12:05 AM

Javaispowerfulduetoitsplatformindependence,object-orientednature,richstandardlibrary,performancecapabilities,andstrongsecurityfeatures.1)PlatformindependenceallowsapplicationstorunonanydevicesupportingJava.2)Object-orientedprogrammingpromotesmodulara

Top Java Features: A Comprehensive Guide for DevelopersTop Java Features: A Comprehensive Guide for DevelopersMay 13, 2025 am 12:04 AM

The top Java functions include: 1) object-oriented programming, supporting polymorphism, improving code flexibility and maintainability; 2) exception handling mechanism, improving code robustness through try-catch-finally blocks; 3) garbage collection, simplifying memory management; 4) generics, enhancing type safety; 5) ambda expressions and functional programming to make the code more concise and expressive; 6) rich standard libraries, providing optimized data structures and algorithms.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools