Khi cần kiểm tra xem một số nmber nhất định có phải là số disarium hay không, tổng các chữ số được cung cấp cho vị trí tương ứng của chúng sẽ được tính. Trước đó, số chữ số có trong số được xác định.
Số Disarium là số mà tổng các chữ số của nó theo lũy thừa của vị trí tương ứng của chúng bằng chính số ban đầu.
Dưới đây là một minh chứng cho điều tương tự -
Ví dụ
def length_calculation(num_val): length = 0 while(num_val != 0): length = length + 1 num_val = num_val//10 return length my_num = 192 remaining = sum_val = 0 len_val = length_calculation(my_num) print("A copy of the original number is being made...") num_val = my_num while(my_num > 0): remaining = my_num%10 sum_val = sum_val + int(remaining**len_val) my_num = my_num//10 len_val = len_val - 1 if(sum_val == num_val): print(str(num_val) + " is a disarium number !") else: print(str(num_val) + " isn't a disarium number")
Đầu ra
A copy of the original number is being made... 192 isn't a disarium number
Giải thích
- Một phương thức có tên là "length_calculation" được xác định để tính toán số chữ số trong một số.
- Nó tính toán phân chia tầng của số và trả về độ dài của số.
- Số được xác định và hiển thị trên bảng điều khiển.
- Nó sử dụng phép toán modulus để lấy phần còn lại và thêm nó vào một biến tổng.
- Sức mạnh của vị trí được nhân lên với chính con số.
- Con số này được so sánh với con số.
- Nếu nó bằng nhau, điều đó có nghĩa đó là số Harshad, ngược lại thì không.