Trong bài này, chúng ta sẽ hiểu cách kiểm tra xem số đã cho có phải là số Armstrong hay không. Số Armstrong là một số bằng tổng các hình lập phương của các chữ số riêng của nó.
Một số nguyên được gọi là số Amstrong có thứ tự n nếu mỗi chữ số được tách ra và lập phương và cộng lại thì tổng sẽ giống với số tức là abcd ... =a3 + b3 + c3 + d3 + ...
Trong trường hợp một số Amstrong có 3 chữ số thì tổng các lập phương của mỗi chữ số bằng chính số đó. Ví dụ:153 là một số Armstrong.
153 = 13 + 53 + 33
Ví dụ:371 là số Armstrong.
Dưới đây là một minh chứng về điều tương tự -
Đầu vào
Giả sử đầu vào của chúng tôi là -
Enter the number : 407
Đầu ra
Đầu ra mong muốn sẽ là -
407 is an Armstrong number
Thuật toán
Step 1 - START Step 2 - Declare four integer values namely my_input, my_temp, my_remainder, my_result Step 3 - Read the required values from the user/ define the values Step 4 - Run a while loop to check Armstrong numbers using %, / and * operator Step 5 - Divide by 10 and get remainder for ‘check’ . Step 6 - Multiply ‘rem’ thrice, and add to ‘sum’, and make that the current ‘sum’. Step 7 - Divide ‘check’ by 10, and make that the current ‘check’. Store the resultant value. Step 8 - If the resultant value is equal to the input value, the input value is an Armstrong number, else it’s not an Armstrong number Step 9 - Display the result Step 10- Stop
Ví dụ 1
Ở đây, đầu vào đang được người dùng nhập dựa trên lời nhắc. Bạn có thể thử ví dụ này trực tiếp trong công cụ nền tảng mã hóa của chúng tôi .
import java.util.Scanner; public class IsArmstrong { public static void main(String[] args) { int my_input, my_temp, my_remainder, my_result; my_result = 0; System.out.println("Required packages have been imported"); Scanner my_scanner = new Scanner(System.in); System.out.println("A reader object has been defined "); System.out.print("Enter the number : "); my_input = my_scanner.nextInt(); my_temp = my_input; while (my_temp != 0){ my_remainder = my_temp % 10; my_result += Math.pow(my_remainder, 3); my_temp /= 10; } if(my_result == my_input) System.out.println(my_input + " is an Armstrong number"); else System.out.println(my_input + " is not an Armstrong number"); } }
Đầu ra
Required packages have been imported A reader object has been defined Enter the number : 407 407 is an Armstrong number
Ví dụ 2
Ở đây, số nguyên đã được xác định trước đó và giá trị của nó được truy cập và hiển thị trên bảng điều khiển.
public class IsArmstrong { public static void main(String[] args) { int my_input, my_temp, my_remainder, my_result; my_input = 407; my_result = 0; System.out.println("The number is defined as " +my_input); my_temp = my_input; while (my_temp != 0){ my_remainder = my_temp % 10; my_result += Math.pow(my_remainder, 3); my_temp /= 10; } if(my_result == my_input) System.out.println(my_input + " is an Armstrong number"); else System.out.println(my_input + " is not an Armstrong number"); } }
Đầu ra
The number is defined as 407 407 an Armstrong number