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

zamiana spacji w tekscie na nową linię

Ostatnio zmodyfikowano 2015-05-18 13:36
Autor Wiadomość
ghorrak
Temat założony przez niniejszego użytkownika
zamiana spacji w tekscie na nową linię
» 2015-05-18 12:14:33
Witam.Napisałem program który znajduje palindromy, ale będąc osobą kreatywną postanowiłem iść za ciosem i napisać program który w miejscu spacji wstawi nową linię a następnie sprawdzi czy tekst jest palindromem. Palindromy znajdowane są poprawnie lecz, spacji nie znajduje i zatrzymuje się na tej funkcji.Czy ktoś mógł by sprawdzić gdzie mam błąd ?

Program wygląda tak:
C/C++
#include <iostream>
#include <fstream>
#include <cstring>

using namespace std;
bool sprawdz( char napis[] )
{
    for( int i = 0; i < strlen( napis ) / 2; i++ )
    {
        if( napis[ i ] != napis[ strlen( napis ) - i - 1 ] )
             return false;
       
    }
   
    return true;
}
void czySpacja( string & tekst )
{
    size_t znalezionaPozycja = tekst.find( " " );
    if( znalezionaPozycja == string::npos )
    { cout << "nie ma spacji" << endl; //Program zatrzymuje się w tym miejscu
        return;
    }
    else
    do
    {
        tekst.erase( znalezionaPozycja, 1 );
        tekst.insert( znalezionaPozycja, "\n" ); // tutaj w zamysle ma wstawiac mi nową linię
        znalezionaPozycja = tekst.find( " ", znalezionaPozycja + 1 );
    } while( znalezionaPozycja != string::npos );
   
}
int main( int argc, char ** argv )
{
    fstream plik;
   
    plik.open( "palindromy.txt" );
    string tekst;
    char napis[ 20 ];
    while( getline( plik, tekst ) )
    {
        czySpacja( tekst );
    }
   
   
    while( plik.getline( napis, 20 ) != 0 )
    { cout << napis << endl << endl;
        if( sprawdz( napis ) == true )
             cout << napis << " jest palindromem" << endl;
       
    }
   
   
    plik.close();
   
    return 0;
}
P-132460
michal11
» 2015-05-18 13:09:32
1. tekst w zanaczniki
2. Problem jest taki, że mieszasz string z c-string. Zdecyduj się z czego chcesz korzystać.
P-132461
ghorrak
Temat założony przez niniejszego użytkownika
» 2015-05-18 13:36:28
chyba już wiem o co chodzi. dzięki wielkie
P-132462
« 1 »
  Strona 1 z 1