Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 23.12.2013
Сообщений: 31
1

Программа не считает русские буквы, почему?

24.04.2014, 15:05. Показов 1092. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
procedure TForm1.Button1Click(Sender: TObject);
var
i,n,f,byk,cif:integer;
s: string;
begin
byk:=0; //счетчик букв
cif:=0; //счетчик цифр
with memo1 do //обращаемся к компоненту Memo
 begin
  for n:=0 to lines.Count-1 do //идем по всем строкам
   begin
    s:=lines[n]; //присваиваем значение строки
      for i:=1 to length(s) do //идем по строке
       begin
        for f:=49 to 57 do //если встречаются цифры то счетчик прибавляем
          if s[i]=chr(f) then cif:=cif+1;
        for f:=128 to 175 do //если встречаются буквы (русские) то счетчик прибавляем
          if s[i]=chr(f) then byk:=byk+1;
        end;
    end;
 end;
edit1.Text:=inttostr(byk);
edit2.Text:=inttostr(cif);
end;
Где что нужно поменять ?
Миниатюры
Программа не считает русские буквы, почему?  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.04.2014, 15:05
Ответы с готовыми решениями:

Программа, которая считает определенные буквы в тексте
Всем доброго времени суток, срочно нужна помощь в написании программы, суть вот в чем: нужна...

Почему программа считает, что -4/-1 < -6/-2
Вот код программы: unit Kursovaya_MatMod; interface uses Windows, Messages, SysUtils,...

Почему программа зависает и не правильно считает?
Привет всем! Если этим кодом попробовать пройтись по достаточно большому тексту, комп...

Почему MS Visual C++ не показывает русские буквы
Вот такая программа(код) // rrrrrrrr.cpp: определяет точку входа для консольного приложения. // ...

4
пофигист широкого профиля
4735 / 3168 / 860
Регистрация: 15.07.2013
Сообщений: 18,255
24.04.2014, 15:39 2
Цитата Сообщение от Артём Леонтьев Посмотреть сообщение
что нужно поменять ?
Магические числа 128 и 175. Или операционную систему.
0
103 / 102 / 51
Регистрация: 28.01.2014
Сообщений: 310
24.04.2014, 15:49 3
создать константу
Delphi
1
const rl=['А'..'Я','а'..'я'];
Пробежаться по мемо
Delphi
1
2
for i:=1 to Length(Memo1.Text) do
  if Memo1.Text[i] in rl then byk:=byk+1;
аналогично можно и с цифрами
0
23 / 23 / 30
Регистрация: 23.10.2012
Сообщений: 344
24.04.2014, 15:52 4
Если тебе просто нужно подсчитать количество букв и цифр в memo то:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
procedure TForm1.Button1Click(Sender: TObject);
var
i,byk,cif:integer;
s:string;
begin
byk:=0; //счетчик букв
cif:=0; //счетчик цифр
s:=memo1.Text;
for i:=0 to length(s) do
case s[i] of 'Ё', 'ё', 'А'..'Я', 'а'..'я':inc(byk);
              '0'..'9':inc(cif);
end;
edit1.Text:=inttostr(byk);
edit2.Text:=inttostr(cif);
end;
0
2664 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
24.04.2014, 15:56 5
в XE-линейке есть "волшебная" ф-ция CharInSet()
А также IsLetter() и IsDigit
0
24.04.2014, 15:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.04.2014, 15:56
Помогаю со студенческими работами здесь

Почему неправильно отображаются введенные русские буквы?
Почему вводя русские буквы , функция gets выдаёт другие символы? int main() { setlocale(LC_ALL,...

Почему Like различает english + цифры // но не русские буквы
DataSet ds = new DataSet(); SqlConnection sqlConn = new SqlConnection(@&quot;Data...

Почему с базы данных, не выводит русские буквы?
Почему вместо слова, отображаются вопросики?

почему не работает запрос, когда в поле name русские буквы?
Доброо времени суток &lt;?php $db=mysql_connect(&quot;localhost&quot;, &quot;root&quot;, &quot;&quot;) or die(&quot;Ошибка&quot;);...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru