Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- using namespace std;
- string input;
- string bezSpacji;
- int i;
- int j = 0;
- string wyraz;
- //rekurencyjna
- bool palindromf(int max, int min)
- {
- if(wyraz[max] != wyraz[min]){return false;}
- if(max<(wyraz.length()-1)/2){return true;}
- else if(max >= (wyraz.length()-1)/2){return palindromf(max-1, min+1);}
- }
- //normalna
- bool palindrom(int max, int min)
- {
- while(i >= wyraz.length()/2)
- {
- //cout << "gorny: " << wyraz[i] << " dolny: " << wyraz[j] << endl;
- if(wyraz[i] != wyraz[j]){return false;}
- i--;
- j++;
- }
- return true;
- }
- main()
- {
- cout << "Podaj wyraz: ";
- getline(cin,input);
- for(i=0;i<input.length();i++)
- {
- if(input[i]!=' '){bezSpacji+= input[i];}
- }
- //for(i=0;i<bezSpacji.length();i++)
- //{
- // cout << bezSpacji[i] << endl;
- //}
- //cin >> wyraz;
- wyraz = bezSpacji;
- //cout << "Wyraz: " << wyraz << endl;
- j=0;
- i=wyraz.length() - 1;
- cout << "Rekurencyjnie: " << palindromf(i,j) << endl;
- j=0;
- i=wyraz.length() - 1;
- cout << "Iteracyjnie: " << palindrom(i,j) << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement