Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,911 questions

51,843 answers

573 users

How to find all the strong numbers in a given range with Java

1 Answer

0 votes
// Strong numbers are the numbers that the sum of factorial of its digits 
// is equal to the original number
   
// 145 is a strong number: 1 + 24 + 120 = 145
  
public class StrongNumbers_Java {
   
    public static void main(String[] args) {
          
        int reminder, sum, tmp;
   
        for (int n = 1; n <= 1000000; n++) {
            tmp = n;
            sum = 0;
   
            while (tmp != 0) {
                reminder = tmp % 10;
                sum = sum + factorial(reminder);
                tmp /= 10;
            }
            if (sum == n)
                System.out.format("%d\n", n);
        }
    }
    
    public static int factorial(int n) {
        int fact = 1;
   
        for (int i = 2; i <= n; i++)
             fact = fact * i;
   
        return fact;
    }
}

     
/*
run:
    
1
2
145
40585
     
*/

 



answered May 10, 2017 by avibootz
edited Jul 2, 2024 by avibootz

Related questions

1 answer 103 views
1 answer 90 views
1 answer 160 views
1 answer 90 views
1 answer 2,167 views
...