Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.01.2011, 00:14   #1
romanzi
Пользователь
 
Регистрация: 07.11.2010
Сообщений: 87
Стрелка Количество символов в memo

Надо, что бы label изображал количество (в цифрах) символов в мемо.

Вот код, пишет. что ошибка в "vаr"

procedure TForm1.Label2Click(Sender: TObject);
begin
var
r, i, j: integer;
s: string;

label2.caption:=inttostr(length(mem o1.text )); // длина текста в мемо
begin

r:=0;
for i:=0 to memo1.lines.count-1 do
begin

for j:=1 to length(memo1.lines.strings[i]) do
begin
s:=copy(memo1.lines.strings[i], j, 1); // копируем j символ строки в переменную S
if s='?' then
inc(R); // увеличиваем результат

end;
end;
end;

end.
romanzi вне форума Ответить с цитированием
Старый 19.01.2011, 02:01   #2
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Код:
procedure TForm1.Label2Click(Sender: TObject);
var
r, i, j: integer;
s: string;
begin
label2.caption:=inttostr(length(mem o1.text )); // длина текста в мемо

r:=0;
for i:=0 to memo1.lines.count-1 do
   for j:=1 to length(memo1.lines.strings[i]) do
     begin
s:=copy(memo1.lines.strings[i], j, 1); // копируем j символ строки в переменную S
if s='?' then
inc(R); // увеличиваем результат
     end;
end;
PS: asmodey1 ниже постом правильно заметил, если не нужно считать символы #13 и #10 то их количество надо отнять.
А подсчитать количество '?' легче используя стандартные функции pos и posex, хотя и так тоже можно.

Последний раз редактировалось vovk; 19.01.2011 в 02:24.
vovk вне форума Ответить с цитированием
Старый 19.01.2011, 02:04   #3
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Что за извращение ?
Количество символов считается элементарно :
Код:
Label1.Caption:=IntToStr(Length(Memo1.Lines.Text)-2*Memo1.Lines.Count);
Красным - это мы учитываем хвосты строк (0A,0D)...
asmodey1 вне форума Ответить с цитированием
Старый 19.01.2011, 02:19   #4
XeruH
Форумчанин
 
Регистрация: 17.09.2010
Сообщений: 229
По умолчанию

Цитата:
Сообщение от asmodey1 Посмотреть сообщение
Что за извращение ?
Количество символов считается элементарно :
Код:
Label1.Caption:=IntToStr(Length(Memo1.Lines.Text)-2*Memo1.Lines.Count);
Красным - это мы учитываем хвосты строк (0A,0D)...
Поддерживаю. Это конечно если они нужны(0A,0D)
Правильно заданный вопрос - половина ответа!
XeruH вне форума Ответить с цитированием
Старый 19.01.2011, 10:41   #5
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
Вот код, пишет. что ошибка в "vаr"
описаня переменных (блок var) идет ДО ключевого слова begin
Код:
procedure TForm1.Label2Click(Sender: TObject);
var
r, i, j: integer;
s: string;

begin
а как считать символы (с учетом разделителей строк /без учета/ считать двойной разделитель #13#10 за один знак/ другие варианты ) дело вкуса втора прогрммы. Если он конечно знает о таких нюансах и они имеют для него какое либо значение.
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 19.01.2011 в 10:45.
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что делать, если количество символов в билдере не соответствует количеству символов в билде? BoT_T Общие вопросы Delphi 0 16.11.2010 10:42
количество символов sergeiqwe PHP 1 16.05.2010 00:08
Количество символов в Memo ARXangel Общие вопросы Delphi 6 13.02.2009 11:35
Количество символов в memo littlecoder Общие вопросы Delphi 9 28.12.2008 05:54
количество цифр и количество символов до первой гласной буквы 111111 Общие вопросы C/C++ 2 22.12.2008 12:15