Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ผลรวม Aliquot ใน C ++?


ที่นี่เราจะดูว่าผลรวมของ Aliquot คืออะไร? ผลรวม Aliquot ของ n คือผลรวมของตัวประกอบสมบูรณ์ทั้งหมดของ n ยกเว้น n ตัวอย่างเช่น หากตัวเลขคือ 20 ตัวประกอบสมบูรณ์คือ (1, 2, 4, 5, 10) ดังนั้นผลรวม Aliquot คือ 22

ข้อเท็จจริงที่น่าสนใจประการหนึ่งคือ หากผลรวม Aliquot ของตัวเลขคือตัวมันเอง ตัวเลขนั้นก็เป็นจำนวนสมบูรณ์ ตัวอย่างเช่น 6. ตัวประกอบคือ (1, 2, 3) ผลรวมของ Aliquot คือ 1+2+3=6

มาดูกันว่าเราจะได้รับผลรวม Aliquot โดยใช้อัลกอริทึมต่อไปนี้ได้อย่างไร

อัลกอริทึม

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

ตัวอย่าง

#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);
}

ผลลัพธ์

Enter a number to get Aliquot sum: 20
The Aliquot sum of 20 is 22