IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> задача "на файл"
влад
сообщение 12.11.2005 20:34
Сообщение #1


Гость






Возможно эта задача кому-то покажется смешной, но..
В задаче требуется найти символ в текстовом файле, кот. повторяется чаще остальных. Нужно вывести этот символ и количество его повторений.

Я так понимаю здесь потребуется воспользоваться таблицей ASCII ?
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 12.11.2005 23:43
Сообщение #2


Гость






Цитата
я так понял, мы "переписываем" символы из файла в массив для дальнейшей работы с ними.
Неправильно понял. Мы для каждого символа, принадлежащего к типу Char сразу подсчитываем количество повторений. Полностью программа выглядит так:

var
f: text;
arr: array[char] of integer;
max_i, i, ch: char;

begin
assign(f, 'a.txt');
reset(f);
while not eof(f) do begin
read(f, ch); inc(arr[ch]);
end;
close(f);

{
количество вхождений каждого символа уже подсчитано
теперь найдем максимум из этих чисел...
}
max_i := #0;
for i := #0 to #255 do
if arr[max_i] < arr[i] then max_i := i;

writeln('char: ', max_i, ' count: ', arr[max_i]);

end.
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 6:42
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"