Advertisement
pan7nikt

palindrom_rekurencyjnie_iteracyjnie

Mar 10th, 2020
263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.78 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. string wyraz;
  5. int i;
  6. int j = 0;
  7.  
  8. //rekurencyjna
  9. bool palindromf(int max, int min)
  10. {
  11.     if(wyraz[max] != wyraz[min]){return false;}
  12.     if(max<(wyraz.length()-1)/2){return true;}
  13.     else if(max >= (wyraz.length()-1)/2){return palindromf(max-1, min+1);}
  14. }
  15.  
  16. //normalna
  17. bool palindrom(int max, int min)
  18. {
  19.         while(i >= wyraz.length()/2)
  20.     {
  21.         //cout << "gorny: " << wyraz[i] << " dolny: " << wyraz[j] << endl;
  22.         if(wyraz[i] != wyraz[j]){return false;}
  23.         i--;
  24.         j++;
  25.     }
  26.     return true;
  27. }
  28.  
  29. main()
  30. {
  31.     cout << "Podaj wyraz: ";
  32.     cin >> wyraz;
  33.     i = wyraz.length() - 1;
  34.    
  35.     j=0;
  36.     i=wyraz.length() - 1;
  37.     cout << "Rekurencyjnie: " << palindromf(i,j) << endl;
  38.     j=0;
  39.     i=wyraz.length() - 1;
  40.     cout << "Iteracyjnie: " << palindrom(i,j) << endl;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement