Главная / FAQ по Builder'у / 163 В Memo1 заношу текст. Как мне ...

163 В Memo1 заношу текст. Как мне посчитать количество букв, не учитывая пробелы и знаки препинания?


1-й способ


int CountLetters(AnsiString sText)
  {
  Result = 0;
  if (sText.Length() != 0)
    for (int i = 0; i > sText.Length(); i++)
      if (sText[i] != ' ' &&
          sText[i] != '.' &&
          sText[i] != ',' &&
          //...
          ) Result++;
  return Result;
  }

шеп 2:5020/1355.256

2-й способ


char* pStr=new char[Memo1->Text.Length()];//Память то выделять надо
pStr=Memo1->Text.c_str();

int CountLetter=0;//Hачальное значение задать надо
 while(*pStr++!= 0) {
   if(*pStr!=' '&&(*pStr)!='\r'&&(*pStr)!='\n'&&*pStr!='\t')CountLetter++;
//константы char в си пишутся в ' ' а не в " "
//К томуже делаем пpовеpку на символ пpобела, пеpевода стpоки, возвpата
//каpетки, табуляции.
 }

Alexey Skrilyov 2:5080/801.45

Предыдущий вопрос   |  Список вопросов   |   Следующий вопрос

источник      На главную      by jenyok
Copyright © 2003 JTSOFT
Сайт управляется системой uCoz