| 
 | 
back to boardWhat wrond with my solution - Please Help Posted by  VladG 6 Nov 2002 12:07 #include <iostream.h> #include <string.h> #include <stdio.h>   const int MAX_TEXT_SIZE = 300; enum State {NORMAL, WORD};   bool isSmallLetter(char ch) {   if (ch >= 'a' && ch <= 'z')       return true;   else       return false; }   bool isBigLetter(char ch) {   if (ch >= 'A' && ch <= 'Z')      return true;   else      return false; }   bool isLetter(char ch) {   if (isSmallLetter(ch) || isBigLetter(ch) || ch == '-')     return true;   else     return false; }   void main() {   char text[MAX_TEXT_SIZE];   int i, j, firstLetter;   State state;     while (!cin.eof()) {     cin.getline(text, MAX_TEXT_SIZE);       state=NORMAL;       for (i=0; i<strlen(text); i++) {       switch (state) {       case NORMAL:     if (isLetter(text[i])) {        state = WORD;        firstLetter = i;     }     else        cout << text[i];       break;         case WORD:     if (!isLetter(text[i])) {        state = NORMAL;       for (j=i-1; j>= firstLetter; j--)         if (text[j] != '-')         cout << text[j];         cout << text[i];     }       break;       }     }      if (state == WORD) {     for (j=i-1; j>= firstLetter; j--)         if (text[j] != '-')             cout << text[j];    }      cout << endl;   } }  |  
  | 
|