Помощь - Поиск - Пользователи - Календарь
Полная версия: Сколько раз в текстовом файле встречается каждая б
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Ксанка
Ребят, я никак не разберусь, можете помочь мне в этом вопросе? Пожалуйста.....Курсовую через две недели сдавать....
Задание: Определить, сколько раз в текстовом файле встречается каждая буква....
Дож
Что значит
Код

Сколько раз в текстовом файле встречается каждая б

Или это буква Б?
volvo
Вот тут пожалуй самый простой способ: Задача на обработку текста
Идея понятна?
Ксанка
Неее, Дож, не Б, а каждая букваsmile.gif
Вот ткое вот задание: Определить, сколько раз в текстовом файле встречается каждая буква.

volvo, спааассибо за ссылку, только как переделать алгоритм, чтобы он считал кол-во каждой буквы в тексте? huh.gif
volvo
Цитата(Ксанка @ 22.05.05 10:07)
чтобы он считал кол-во каждой буквы в тексте? huh.gif

blink.gif А сейчас он что считает?
Дож
Код

Const letters=100;
        alphabet: array[1..letters] of char=
        ('А','Б','В','Г','Д','Е'.......,'x','y','z');
Var f              : file;
     letterNum : array[1..letter] of word;
...
...
While not(eof(f)) do begin
read(f,C);
j:=0;
While j<>Letters do begin
j:=j+1;
If alphabet[j]=C then letterNum[j]:=letterNum[j]+1;
end;
end;
...
...


В результате букв Alphabet[i] будет равно letterNum[i]. Но при этом решение не предусматриваются большие и маленькие буквы. Это является условием?
{Надеюсь, файл откроешь сама ;)}
volvo
Дож,
можно проще:
const
alpha: set of char =
['а' .. 'п', 'р' .. 'я', 'А' .. 'П', 'Р' .. 'Я', 'a' .. 'z', 'A' .. 'Z'];
var
cnt: array[char] of integer;
ch: char;
f: file of char;
begin
{ open file ... }
while not eof(f) do begin
read(f, ch); inc(cnt[ch]);
end;
{ close file ... }
for ch := #32 to #255 do
if ch in alpha then writeln('letter - ', ch, ' counter: ', cnt[ch]:4);
end.

Кстати, работать будет побыстрее, потому что наличие элемента во множестве определяется намного быстрее, чем проход по alphabet в поисках буквы...
Ксанка
Дож!!: wub.gif Спасибо, самое оно, разобралась! :thanks: volvo wub.gif и тебе большое спасибо, точно быстрее! :thanks:
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.