Advertisement
Guest User

Untitled

a guest
Dec 4th, 2016
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.29 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. int zeichenkette_suchen_rekursiv(string text, string zkette,
  6.                                  unsigned int text_pos = 0,
  7.                                  unsigned int text_such_pos = 0,
  8.                                  unsigned int zkette_such_pos = 0)
  9. {
  10.     if (char (text.at(text_such_pos)) == char (zkette.at(zkette_such_pos)))
  11.     {
  12.         if (zkette_such_pos +1 == zkette.length())
  13.         {
  14.             return text_pos;
  15.         }
  16.         zeichenkette_suchen_rekursiv(text, zkette, text_pos, text_such_pos + 1, zkette_such_pos + 1);
  17.     }
  18.     else
  19.     {
  20.         if (text_pos +1 == text.length())
  21.         {
  22.             return -1;
  23.         }
  24.         zeichenkette_suchen_rekursiv(text, zkette, text_pos + 1, text_such_pos = text_pos, zkette_such_pos = 0);
  25.     }
  26. }
  27.  
  28.     int main()
  29. {
  30.     int pos = 0;
  31.     string text, zkette;
  32.     cout << "Bitte geben Sie den Text ein: ";
  33.     getline(cin, text);
  34.     cout << "Bitte geben Sie die zu suchende Zeichenkette ein: ";
  35.     getline(cin, zkette);
  36.     pos = zeichenkette_suchen_rekursiv(text, zkette);
  37.     if (pos >= 0)
  38.     {
  39.         cout << "Die Zeichenkette '" << zkette << "' ist in dem Text '" << text << "' enthalten" << endl;
  40.         cout << "Sie startet ab Zeichen " << pos << " (bei Zaehlung ab 0)." << endl;
  41.     }
  42.     else
  43.     {
  44.         cout << "Die Zeichenkette '" << zkette << "' ist NICHT in dem Text '" << text << "' enthalten" << endl;
  45.     }
  46.  
  47.     system("Pause");
  48.     return 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement