এই নিবন্ধে, আমরা প্রথম সংঘর্ষের বিন্দু অর্থাৎ প্রথম বিন্দু যা উভয় সিরিজেরই আছে তা খুঁজে বের করার জন্য একটি প্রোগ্রাম নিয়ে আলোচনা করব।
এতে, আমাদেরকে ‘a’, ‘b’, ‘c’, ‘d’ এবং ‘n’ পাঁচটি ভেরিয়েবল দেওয়া হবে। আমাদেরকে দুটি পাটিগণিতের অগ্রগতি সিরিজ তৈরি করতে হবে যার প্রতিটিতে n সংখ্যা আছে
b, b+a, b+2a, ….b+(n-1)a d, d+c, d+2c, ….. d+(n-1)c
এবং তারপরে প্রদত্ত সিরিজের উভয়েরই প্রথম সাধারণ পয়েন্টটি খুঁজুন।
এটি সমাধান করার জন্য, আমরা প্রথম সিরিজের সংখ্যা তৈরি করব। এবং প্রতিটি সংখ্যার জন্য আমরা পরীক্ষা করব যে এটি দ্বিতীয় সিরিজের প্রথম সংখ্যার চেয়ে বড় বা সমান এবং সেই সংখ্যা এবং 'd'-এর মধ্যে পার্থক্যটি c দ্বারা বিভাজ্য কিনা। যদি এটি উভয় শর্তই সন্তুষ্ট করে, তবে প্রথম সিরিজের বর্তমান সংখ্যার তুলনায় ফলাফল হবে।
উদাহরণ
#include<bits/stdc++.h>
using namespace std;
void calc_series(int a, int b, int c, int d, int n) {
int x , flag = 0;
//creating the numbers of first series
for (int i = 0; i < n; i++) {
x = b + i * a;
//checking if it exists in second series
if ((x - d) % c == 0 and x - d >= 0){
cout << "First collision point : "<< x << endl;
flag = 1;
break;
}
}
if(flag == 0) {
cout << "No collision point exists" << endl;
}
}
int main() {
int a = 16;
int b = 9;
int c = 23;
int d = 19;
int n = 78;
calc_series(a, b, c, d, n);
return 0;
} আউটপুট
First collision point : 249