(For example: when n is 3, there is 1^3 + 5^3 + 3^3 = 153, 153 is a self-power number when n is 3)
When n is 1, the self-power number is called a celibate number.
When n is 2, there is no self-power number.
When n is 3, the self-power number is called the daffodil number.
When n is 4, the self-power number is called the rose number.
When n is 5, the self-power number is called the pentagram number.
When n is 6, the self-power number is called a six-in-one number.
When n is 7, the self-power number is called the Beidou Seven Stars.
When n is 8, the self-power number is called the Eight Immortal Number.
When n is 9, the self-power number is called the double yang number of nine.
When n is 10, the self-power number is called a perfect number.
The code copy is as follows:
/*
* Self-powered number
* A self-power is an n-digit number whose sum of n-powers of numbers on each bit is equal to itself.
* (For example: When n is 3, there is 1^3 + 5^3 + 3^3 = 153, 153 is a self-power number when n is 3)
*/
import java.util.Scanner;
public class self-power number{
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Please enter the number of self-power digits you want to check:");
int n = input.nextInt();// Receive number of digits
// Define a number number, starting from 10^(n-1) and adding to the end of 10^n
switch (n) {
case 1:
System.out.println("Single Number:");
System.out.print("0" + "/t");
break;
case 2:
System.out.println("two-digit self-power number:");
System.out.println("No self-power!");
break;
case 3:
System.out.println("Narcissus Number:");
break;
case 4:
System.out.println("Rose Number:");
break;
case 5:
System.out.println("Pentagonal Star Number:");
break;
case 6:
System.out.println("Liuhe Number:");
break;
case 7:
System.out.println("Big Dipper Seven Stars:");
break;
case 8:
System.out.println("Eight Immortals Number:");
break;
case 9:
System.out.println("Double Ninth and Double Ninth Number:");
break;
case 10:
System.out.println("Perfect Number:");
break;
default:
System.out.println("Other self-power numbers:");
break;
}
for (int number = (int) Math.pow(10, n - 1); number < Math.pow(10, n); number++) {
// Judgment condition: The number of digits of the number is n
if (String.valueOf(number).length() == n) {
double num = 0;
for (int i = 0; i < n; i++) {
int temp = (int) (number / Math.pow(10, i)) % 10;
num += Math.pow(temp, n);
}
if (number == num) {
System.out.print(number + "/t");
}
}
}
input.close();
}
}