![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
MAD-GTX |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 18 Пол: Мужской Реальное имя: Азамат Репутация: ![]() ![]() ![]() |
Дан файл содержащий текст набранный заглавными английскими буквами. Провести частотный анализ текста, то есть указать (в %), сколько раз встречается та или иная буква. Помогите пожалуйста, препод двойку поставил за семестр и дал три задачи, одну нашел на форуме, одну решил сам. С этой никак не разберусь, ведь сначала надо подсчитать количество символов в тексте?
|
![]() ![]() |
мисс_граффити |
![]()
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
ну... например:
заводишь массив: letters = array['A'..'Z'] of integer; обнуляешь его. пока не кончится файл, считываешь из него строки - S. далее - как-то так: Код for i:=1 to length(S) do letters[S[i]]:=letters[S[i]]+1; sum:=sum+length(S); //конец работы с файлом for ch:='A' to 'Z' do writeln(ch, ':', ((letters[ch]/sum)*100):4:2, '%'); код не проверяла, набросала прямо здесь. и не делала проверок на наличие других символов - а они будут (пробелы как минимум). -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
MAD-GTX |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 18 Пол: Мужской Реальное имя: Азамат Репутация: ![]() ![]() ![]() |
Спасибо! Но не очень понимаю, а как текст преобразовать в строку? Не, не могу разобраться, если можно поподробней и сильно не пинайте - я с 10 утра уже парюсь
|
compiler |
![]()
Сообщение
#4
|
Человек ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 050 Пол: Мужской Реальное имя: Станислав Репутация: ![]() ![]() ![]() |
а как текст преобразовать в строку? прчитать из файлаread(fi, s);{fi -- файловая переменная } -------------------- Спасибо!
Удачи! |
MAD-GTX |
![]()
Сообщение
#5
|
Новичок ![]() Группа: Пользователи Сообщений: 18 Пол: Мужской Реальное имя: Азамат Репутация: ![]() ![]() ![]() |
Кто нибудь может разобраться и решить эту задачу ну оочень надо!
|
compiler |
![]()
Сообщение
#6
|
Человек ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 050 Пол: Мужской Реальное имя: Станислав Репутация: ![]() ![]() ![]() |
мисс_граффити тебе ее уже решила:)
осталось только немного дописать. Файлы тебе в помощь... -------------------- Спасибо!
Удачи! |
MAD-GTX |
![]()
Сообщение
#7
|
Новичок ![]() Группа: Пользователи Сообщений: 18 Пол: Мужской Реальное имя: Азамат Репутация: ![]() ![]() ![]() |
Ха! Разобрался, всем спс за ответы.
Сообщение отредактировано: MAD-GTX - 11.01.2008 23:14 |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Строка
readln(s);- просто лишняя... Без нее нет никаких ошибок, программа прекрасно работает (если файл состоит из одной строки... Если больше - то надо зациклить чтение строки из файла и подсчет количества букв...) |
MAD-GTX |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 18 Пол: Мужской Реальное имя: Азамат Репутация: ![]() ![]() ![]() |
Действительно обрабатывает только 255 символов! А как зациклить чтение из файла и подсчет букв? Ответьте пожалуйста!
|
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 9:41 |