Số mạnh là số có giai thừa tổng của tất cả các chữ số bằng số 'n'. Giai thừa ngụ ý khi chúng ta tìm thấy tích của tất cả các số bên dưới số đó bao gồm cả số đó và được ký hiệu là! (Dấu chấm than), Ví dụ:5! =5x4x3x2x1 =120. Khi cần kiểm tra xem một số có phải là số mạnh hay không, có thể sử dụng toán tử phần dư / mô đun và vòng lặp "while".
Dưới đây là minh chứng về điều tương tự -
Ví dụ
my_sum=0 my_num = 296 print("The number is") print(my_num) temp = my_num while(my_num): i=1 fact=1 remainder = my_num%10 while(i<=remainder): fact=fact*i i=i+1 my_sum = my_sum+fact my_num=my_num//10 if(my_sum == temp): print("The number is a strong number") else: print("The number is not a strong number")
Đầu ra
The number is 296 The number is not a strong number
Giải thích
-
Một tổng được khởi tạo bằng 0.
-
Số được xác định và hiển thị trên bảng điều khiển.
-
Số được xác định cho một biến tạm thời.
-
Vòng lặp while được sử dụng khi phần còn lại được xác định.
-
Vòng lặp while được sử dụng lại để xem liệu trình lặp nhỏ hơn hay bằng phần còn lại.
-
Nếu nó nhỏ hơn, biến 'fact' sẽ được nhân với biến lặp.
-
Sau đó nó được tăng thêm 1.
-
Giá trị tổng được thêm vào biến "fact".
-
Nếu biến ‘temp’ và tổng bằng nhau, nó được coi là số chuỗi.