Trong chương trình C ++ này, dưới dạng đầu vào, một văn bản và một mẫu được đưa ra. Khi đầu ra, mẫu được tìm kiếm trong văn bản và tất cả các bản sao của mẫu sẽ được cung cấp.
Thuật toán
Begin Take the string and pattern as input. Declare the original and duplicate array with their size. Put the lengths of original and duplicate in len_ori and len_dupli. Make a loop for find out the position of the searched pattern. If pattern is not found, print not found otherwise print the no of instances of the searched pattern. End
Mã mẫu
#include<iostream> #include<cstring> using namespace std; int main() { char ori[120], dupli[120]; int i, j, k = 0, len_ori, len_dupli; cout<<"enter string without any blank space"<<endl; cout<<"\nEnter Original String:"; cin>>ori; cout<<"Enter Pattern to Search:"; cin>>dupli; len_ori = strlen(ori); len_dupli = strlen(dupli); for (i = 0; i <= (len_ori - len_dupli); i++) // loop to find out the position Of searched pattern { for (j = 0; j < len_dupli; j++) { if (ori[i + j] != dupli[j]) break ; } if (j == len_dupli) { k++; cout<<"\nPattern Found at Position: "<<i; } } if (k == 0) cout<<"\nNo Match Found!"; else cout<<"\nTotal Instances Found = "<<k; return 0; }
Đầu ra
enter string without any blank space Enter Original String:Enter Pattern to Search: Pattern Found at Position: 0 Pattern Found at Position: 1 Pattern Found at Position: 2 Pattern Found at Position: 3 Total Instances Found = 4