Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Znajdywanie palindromów w tekscie.

Ostatnio zmodyfikowano 2016-01-17 20:00
Autor Wiadomość
bojo240
Temat założony przez niniejszego użytkownika
Znajdywanie palindromów w tekscie.
» 2016-01-17 19:16:07
Witam, mam pewien problem, otóż mam za zadanie napisać program program wyszukujący wszystkie palindromy w tekście, gdzie palindrom to ciąg znaków czytany od lewej tak samo jak od prawej o długości>2.
Mój obecny kod:
C/C++
#include <iostream>
#include <string>
using namespace std;
int main()
{
    string text, czypalindrom;
    cin >> text;
    int i = 0, koniec = 2, n = text.length();
    do
    {
        do
        {
            czypalindrom = text.substr( i, i + koniec );
            if( czypalindrom == string( czypalindrom.rbegin(), czypalindrom.rend() ) )
                 cout << czypalindrom << " ";
           
            i++;
        } while(( i + koniec ) <= n );
       
        i = 0;
        koniec++;
    } while(( i + koniec ) <= n );
   
    return 0;
}
Niestety przy danych wejsciowych baaadaaab nie wyszukuje np 'ada', a na przykład przy danych wejściowych 'a', wyświetla jako palindrom, choć zdecydowanie nie powinien. Ktoś, coś? Z góry dziękuje.
P-143672
bojo240
Temat założony przez niniejszego użytkownika
» 2016-01-17 19:52:26
Z moich obserwacji wynika, że coś nie gra w substr(i, i+koniec), ale nie widzę powodu czemu.
P-143681
pekfos
» 2016-01-17 19:57:28
Drugi argument substr to długość wycinka, a nie pozycja końca.
P-143682
bojo240
Temat założony przez niniejszego użytkownika
» 2016-01-17 20:00:01
Właśnie doczytałem, już miałem pisać. Program teraz działa, dzięki bardzo za pomoc! :D
P-143683
« 1 »
  Strona 1 z 1