কম্পিউটার টিউটোরিয়াল

C++ প্রোগ্রাম: একটি নম্বরের অড ফ্যাক্টরগুলোর যোগফল বের করা


একটি পজিটিভ ইন্টিজার দেওয়া আছে এবং টাস্ক হলো সেটির অড ফ্যাক্টরগুলো বের করে তাদের যোগফল বের করা।

উদাহরণ

ইনপুট: number = 20 
আউটপুট: sum of odd factors is: 6 
ইনপুট: number = 18 
আউটপুট: sum of odd factors is: 13

C++ প্রোগ্রাম: একটি নম্বরের অড ফ্যাক্টরগুলোর যোগফল বের করা

তাই রেজাল্ট = 1 + 5 = 6

নিচের প্রোগ্রামে ব্যবহৃত অ্যাপ্রোচ −

  • অড ফ্যাক্টর যোগফল বের করার জন্য নম্বর ইনপুট নিন
  • ডিজিট ০ এবং ২ উপেক্ষা করুন কারণ দুটোই ইভেন ডিজিট এবং ডিজিট ১ স্টোর করুন কারণ এটি অড ডিজিট
  • লুপ ৩ থেকে নম্বরের বর্গমূল পর্যন্ত শুরু করুন
  • নম্বর % i ০ রিটার্ন করলে ট্রাভার্স করুন এবং নম্বরকে i-দিয়ে ভাগ করতেই থাকুন
  • লুপে টেম্পোরারি ভেরিয়েবল temp = temp * i সেট করুন
  • total = total + temp সেট করুন
  • ফাইনাল res ভেরিয়েবলের ভ্যালু রিটার্ন করুন এবং রেজাল্ট প্রিন্ট করুন

অ্যালগরিদম

শুরু 
ধাপ ১→ অড ফ্যাক্টরগুলোর যোগফল ক্যালকুলেট করার ফাংশন ডিক্লেয়ার 
    int sum(int num) 
    int res = 1 ডিক্লেয়ার 
    লুপ While(num % 2 == 0) 
        num = num / 2 সেট 
    লুপ শেষ 
    লুপ For int i = 3; i <= sqrt(num); i++ 
        int count = 0 এবং total = 1 ডিক্লেয়ার 
        int temp = 1 ডিক্লেয়ার 
        লুপ while (num % i == 0) 
            count++ 
            num = num / i সেট 
            temp *= i সেট 
            total += temp সেট 
        লুপ শেষ 
        res = res * total সেট 
    লুপ শেষ 
    IF (num >= 2) 
        res *= (1 + num) সেট 
    IF শেষ 
    return res 
ধাপ ২→ main()-এ 
    int num = 20 ডিক্লেয়ার 
    sum(num) কল 
শেষ

উদাহরণ

#include <bits/stdc++.h> 
using namespace std; 

// অড ফ্যাক্টরগুলোর যোগফল ক্যালকুলেট করা 
int sum(int num) { 
    int res = 1; 
    while (num % 2 == 0) 
        num = num / 2; 
    for (int i = 3; i <= sqrt(num); i++) { 
        int count = 0, total = 1; 
        int temp = 1; 
        while (num % i == 0) { 
            count++; 
            num = num / i; 
            temp *= i; 
            total += temp; 
        } 
        res = res * total; 
    } 
    if (num >= 2) 
        res *= (1 + num); 
    return res; 
} 

int main() { 
    int num = 20; 
    cout << "sum of odd factors is : "; 
    cout << sum(num); 
    return 0; 
}

আউটপুট

sum of odd factors is : 6

  1. একটি সংখ্যার সম ফ্যাক্টরের যোগফল বের করার পাইথন প্রোগ্রাম

  2. পাইথনে একটি সংখ্যার বিষম গুণনীয়গুলোর যোগফল বের করার প্রোগ্রাম

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

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