Sau đây chúng ta sẽ xem Aliquot sum là gì? Tổng Aliquot của n là tổng của tất cả các thừa số hoàn hảo của một n ngoại trừ n. Ví dụ, nếu số là 20, thì các thừa số hoàn hảo là (1, 2, 4, 5, 10). Vì vậy, tổng Aliquot là 22.
Một sự thật thú vị là, nếu tổng Aliquot của một số là chính số đó, thì số đó là một số hoàn hảo. Ví dụ, 6. Các thừa số là (1, 2, 3). Tổng Aliquot là 1 + 2 + 3 =6.
Hãy để chúng tôi xem cách chúng tôi có thể nhận được tổng Aliquot bằng cách sử dụng thuật toán sau.
Thuật toán
getAliquotSum (n)
begin sum := 0 for i in range 1 to n, do if n is divisible by i, then sum := sum + i end if done return sum. end
Ví dụ
#include <iostream> using namespace std; int getAliquotSum(int n) { int sum = 0; for(int i = 1; i<n; i++) { if(n %i ==0) { sum += i; } } return sum; } int main() { int n; cout << "Enter a number to get Aliquot sum: "; cin >> n; cout << "The Aliquot sum of " << n << " is " << getAliquotSum(n); }
Đầu ra
Enter a number to get Aliquot sum: 20 The Aliquot sum of 20 is 22