/** * Program discussed in class on August 31. * Comments omitted so you can try to figure this out on your own. */ #include #include using namespace std; bool contains( const string & str, const string & pattern ); string reverse( const string & str ); bool contains( const string & str, const string & pattern ) { for( int s = 0; s <= str.length( ) - pattern.length( ); s++ ) { int p; for( p = 0; p < pattern.length( ); p++ ) if( pattern[ p ] != str[ s + p ] ) break; if( p == pattern.length( ) ) return true; } return false; } string reverse( const string & str ) { string result; for( int i = str.length( ) - 1; i >= 0; i-- ) result += str[ i ]; return result; } int main( ) { const string END = "***"; string val; while( ( cin >> val ) && !contains( val, END ) ) cout << reverse( val ) << endl; return 0; }