![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Пмогите, мне с текстом... [D7, WinXP]
Archy © (2006-04-22 19:23:00)Вообщем у меня такая задача: есть алфавит из 8 букв (кирилица) и текст состоящий из этих букв.
Как текст в мемо разбить на буквы, чтоб потом посчитать частоту появления каждого символа.
Заранее спасибо.
Мефисто (2006-04-22 19:55:00) [1]Leonid Troyanovsky © (22.04.06 19:40) [5]
Лшдлуттнсфе (22.04.06 19:43) [6]
А у меня телепатия плохо работает :)
Что подразумевалось под алфавитом из 8-и букв? Слово или каждый символ в отдельности. Я понял, как слово.
Archy (2006-04-22 19:49:00) [2]Все, разобрался..
Kilkennycat (2006-04-22 19:47:00) [3]увеличивает на единицу значение ячейки массива
Archy (2006-04-22 19:46:00) [4]Лшдлуттнсфе, что делает код inc(freq[ii])?
Лшдлуттнсфе (2006-04-22 19:43:00) [5]var
abc : array[0..7] of char; // алфавит
freq : array[0..7] of integer; //частота
i, ii : integer;
begin
.... // обнулем частоту и заполняем алфавит
for i := 1 to length(memo1.text) do
for ii := 0 to 7 do if memo1.text[i] = abc[ii] then inc(freq[ii]);
end;
всякие там pos тут неуместны...
Leonid Troyanovsky (2006-04-22 19:40:00) [6]
> Мефисто (22.04.06 19:36) [2]
> для поиска подстроки в строке подойдут:
А зачем здесь поиск подстроки?
--
Regards, LVT.
Archy (2006-04-22 19:39:00) [7]Мефисто спасибо
Archy (2006-04-22 19:38:00) [8]что ты возмущаешься? знаешь как посчитать частоты?
Мефисто (2006-04-22 19:36:00) [9]Уже вскоре наверно появится FAQ по студентчиским задачкам :)))
>> есть алфавит из 8 букв (кирилица)
Не ваша правда, в русском алфавите больше букв..
Для данной реализации потребуется:
цикл: for или while или repeat
для поиска подстроки в строке подойдут:
Pos, PosEx, AnsiPos
И соотвественно переменая, в которую будет заносится количество совпадений
antonn (2006-04-22 19:32:00) [10]Archy (22.04.06 19:23)
есть алфавит из 8 букв (кирилица)
боже...