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

দুই সংখ্যা X ও Y ব্যবহার করে ১ থেকে N পর্যন্ত নির্মিত সংখ্যাগুলি গণনা C++-এ


তিনটি সংখ্যা X, Y এবং N দেওয়া আছে (রেঞ্জ [১, N])। লক্ষ্য হল ১ থেকে N পর্যন্ত যেসব সংখ্যা শুধু X এবং Y ব্যবহার করে (কোনো সংখ্যক বার যোগ করে) তৈরি করা যায়, তাদের সংখ্যা বের করা।

যেমন X=2, Y=3 হলে ৬ = 2+2+2 বা 3+3, ৭ = 2+2+3। প্রতিটি সংখ্যা থেকে X বা Y বিয়োগ করে ০ হলে সেটি গঠনযোগ্য।

উদাহরণ

ইনপুট: N=10, X=4, Y=3

আউটপুট: গঠনযোগ্য সংখ্যা: ৭

ব্যাখ্যা: ৩, ৪, ৬ (৩+৩), ৭ (৩+৪), ৮ (৪+৪), ৯ (৩+৩+৩), ১০ (৩+৩+৪)

ইনপুট: N=10, X=5, Y=4

আউটপুট: গঠনযোগ্য সংখ্যা: ৫

প্রোগ্রামে ব্যবহৃত পদ্ধতি
  • X, Y, N নেওয়া হয়।
  • constructNums(int n, int x, int y) ফাংশন কাউন্ট রিটার্ন করে।
  • ১ থেকে N পর্যন্ত লুপে প্রতিটি সংখ্যা num = i নিয়ে while লুপে X ও Y বিয়োগ করা হয়।
  • যদি শেষে num = 0 হয়, তবে count বাড়ানো হয়।
C++ কোড উদাহরণ
#include 
using namespace std;

int constructNums(int n, int x, int y){
    int count = 0;
    for (int i = 1; i <= n; i++) {
        int num = i;
        while(num > 0){
            while((num % x) == 0 && num != 0) num -= x;
            while((num % y) == 0 && num != 0) num -= y;
            if (num > x && num > y) num = num - x - y;
            else break;
        }
        if (num == 0) count++;
    }
    return count;
}

int main(){
    int N = 20, X = 5, Y = 4;
    cout << "X ও Y দিয়ে নির্মিত সংখ্যা: " << constructNums(N, X, Y);
    return 0;
}
আউটপুট

উপরোক্ত কোড রান করলে আউটপুট:

X ও Y দিয়ে নির্মিত সংখ্যা: ১৪
  1. C++-এ ++ অপারেটর ব্যবহার করে দুটি সংখ্যা যোগ করা

  2. C++-এ দুটি সংখ্যার কমন ডিভাইজর (Common Divisors of Two Numbers)

  3. C++-এ বড় সংখ্যা হ্যান্ডলিং (boost লাইব্রেরি)

  4. C++ প্রোগ্রাম: দুটি সংখ্যা সোয়াপ (Swap) করা