কম্পিউটার

C++ প্রোগ্রামে একটি সংখ্যার জোড় গুণনীয়কের যোগফল বের করতে?


এই প্রোগ্রামটি সমস্ত জোড় ফ্যাক্টর খুঁজে বের করতে এবং এই জোড় ফ্যাক্টরগুলির যোগফল গণনা করতে এবং এটিকে আউটপুট হিসাবে প্রদর্শন করতে ব্যবহৃত হয়।

উদাহরণ -

Input : 30
Even dividers : 2+6+10+30 = 48
Output : 48

এর জন্য, আমরা সমস্ত কারণ খুঁজে পাব। তাদের জোড় খুঁজুন এবং যোগফল খুঁজুন,

অন্যথায়, আমরা প্রাইম ফ্যাক্টর ব্যবহার করে ফ্যাক্টরের যোগফল বের করতে সূত্রটি ব্যবহার করব,

Sum of divisors = (1 + d11 + d12 ... d1a1) *(1 + d21 + d22 ... d2a2) *...........................* (1 + dk1 + dk2 ... dkak)
Here di = prime factors ; ai = power of di

আমাদের শুধু জোড় গুণনীয়ক দরকার তাই, সংখ্যাটি বিজোড় হলে কোনো জোড় গুণনীয়ক নেই। সুতরাং, আমরা সেই ক্ষেত্রে 0 আউটপুট করব।

উদাহরণ

#include <iostream>
#include <math.h>
using namespace std;
int main() {
   int n=12;
   int m = n;
   if (n % 2 != 0)
      cout<<"The sum of all even factors of " << n <<" is "<<0;
   int evfac = 1;
   for (int i = 2; i <= sqrt(n); i++) {
      int count = 0, curr_sum = 1, curr_term = 1;
      while (n % i == 0) {
         count++;
         n = n / i;
         if (i == 2 && count == 1)
            curr_sum = 0;
         curr_term *= i;
         curr_sum += curr_term;
      }
      evfac *= curr_sum;
   }
   if (n >= 2)
      evfac *= (1 + n);
   cout <<"The sum of all even factors of " << m <>" is "<>evfac;
   return 0;
}

আউটপুট

The sum of all even factors of 12 is 24

  1. একটি সংখ্যার বিজোড় গুণনীয়কের যোগফল খুঁজে বের করার জন্য C++ প্রোগ্রাম

  2. জাভা প্রোগ্রাম একটি সংখ্যার গুণনীয়কের ন্যূনতম যোগফল খুঁজে বের করতে

  3. পাইথন প্রোগ্রামে একটি সংখ্যার জোড় গুণনীয়কের সমষ্টি খুঁজুন

  4. একটি সংখ্যার জোড় গুণকের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম