এটি একই টেক্সটে বারবার সার্চ করার C++ প্রোগ্রাম।
এলগরিদম
Begin
অরিজিনাল স্ট্রিং এবং সার্চ করার প্যাটার্ন ইনপুট নিন।
org_len = অরিজিনাল স্ট্রিং দৈর্ঘ্য
pat_len = প্যাটার্ন দৈর্ঘ্য
for i = 0 to (org_len - pat_len)
for j = 0 to pat_len - 1
if (org[i + j] != patt[j]) break;
if (j == pat_len)
Increase m.
প্যাটার্ন পাওয়া পজিশন প্রিন্ট
if (m == 0) প্রিন্ট "no match found"
else প্রিন্ট "total number of instances found"
return 0
End
উদাহরণ
#include <iostream>
#include <string.h>
using namespace std;
int main() {
char org[150], patt[150];
int i, j, m = 0, org_len, pat_len;
cout << "\nEnter Original String:";
cin >> org;
cout << "Enter Pattern to Search:";
cin >> patt;
org_len = strlen(org);
pat_len = strlen(patt);
for (i = 0; i <= (org_len - pat_len); i++) {
for (j = 0; j < pat_len; j++) {
if (org[i + j] != patt[j])
break;
}
if (j == pat_len) {
m++;
cout << "\nPattern Found at Position: " << i;
}
}
if (m == 0)
cout << "\nNo Match Found.";
else
cout << "\nTotal Number of Instances Found = " << m;
return 0;
}
আউটপুট
Enter Original String: thisistutorialspoint.thisisac++program Enter Pattern to Search: is Pattern Found at Position: 2 Pattern Found at Position: 4 Pattern Found at Position: 23 Pattern Found at Position: 25 Total Number of Instances Found = 4