এটি একটি নির্দিষ্ট কেসের জন্য N ক্যারেক্টারের সিকোয়েন্স জেনারেট করার C++ প্রোগ্রাম।
অ্যালগরিদম
শুরু
ফাংশন GenerateSequence() একটি নির্দিষ্ট কেসের জন্য N ক্যারেক্টারের সিকোয়েন্স জেনারেট করে:
rand() ব্যবহার করে র্যান্ডম ইনডেক্স জেনারেট করুন।
প্রথম ক্যারেক্টারটি সরাসরি সিকোয়েন্সে স্টোর করুন।
যদি সিকোয়েন্সটি আগে ব্যবহার করা হয়ে থাকে, তবে সেটি বাতিল করে আবার র্যান্ডম ইনডেক্স জেনারেট করুন।
শেষ
উদাহরণ
#include <iostream>
#include <stdlib.h>
#include <string.h>
using namespace std;
void GenerateSequence(char string[], int n, int l, char* sequence) {
int i, j = 0, k, in;
for (i = 0; i < n; i++) {
// প্রথম ক্যারেক্টারটি সরাসরি সিকোয়েন্সে স্টোর করুন
if (j == 0)
sequence[j++] = string[rand() % l];
else {
h:
in = rand() % l;
for (k = 0; k < j; k++) {
if (string[in] == sequence[k])
goto h;
}
sequence[j++] = string[in];
}
}
sequence[j] = '\0'; // সিকোয়েন্সকে নাল ক্যারেক্টারের সাথে শেষ করুন
}
int main() {
int n, m, l, i;
char string[100];
cout << "Enter the original string: ";
cin >> string;
cout << "\nEnter the number of strings to be generated from the Base string: ";
cin >> n;
cout << "\nEnter the length of each string to be generated: ";
cin >> m;
l = strlen(string);
for (i = 0; i < n; i++) {
char sequence[m];
GenerateSequence(string, m, l, sequence);
cout << "\nSequence " << i+1 << ": " << sequence;
}
return 0;
}
আউটপুট
Enter the original string: tutorialspoint Enter the number of strings to be generated from the Base string: 7 Enter the length of each string to be generated: 6 Sequence 1: tuanol Sequence 2: itlurp Sequence 3: tonaiu Sequence 4: untlri Sequence 5: liorpt Sequence 6: liusto Sequence 7: luisot