Задание 10 ЕГЭ по информатике: поиск слов в тексте — гайд

Подтемы

Что проверяет задание

Задание 10 проверяет умение работать с большим текстовым файлом при помощи функций текстового редактора: поиска, замены и подсчёта количества вхождений. Экзаменуемому даётся файл с текстом художественного произведения (романа, повести, поэмы) и формулировка, в которой указано конкретное слово в конкретной форме. Нужно определить, сколько раз это слово встречается в тексте, соблюдая ряд условий: учитывать только указанную словоформу, учитывать или не учитывать регистр букв, не считать вхождения в сносках и примечаниях.

Формально задание проверяет не знание информатики как теории, а практический навык: умение настроить параметры поиска (учёт регистра, поиск целого слова, использование регулярных выражений) и умение критически проверить результат — отличить нужное слово от похожих словоформ и от текста, который не относится к основному повествованию.

Как выглядит формулировка и сколько баллов

Типичная формулировка: «С помощью текстового редактора определите, сколько раз (не считая сносок) встречается слово «слово1» или «Слово1» в тексте произведения. Другие формы слова («слово2», «слово3» и т. д.) учитывать не следует. В ответе укажите только число».

Ключевые элементы формулировки, на которые нужно обращать внимание:

  • точная форма слова (именительный падеж, единственное число, без окончаний);
  • указание «или» между вариантами с большой и маленькой буквы — значит, нужно посчитать сумму двух вариантов;
  • фраза «не считая сносок» — исключить примечания, комментарии издателя, номера страниц;
  • фраза «другие формы... учитывать не следует» — не считать однокоренные слова и словоформы.

Задание оценивается 1 баллом, ответ — целое число, проверяется автоматически. На экзамене к заданию прилагается файл с текстом произведения, который открывается в текстовом редакторе прямо на компьютере. При самостоятельной подготовке нужно скачивать текст произведения и тренироваться на нём.

Что нужно знать

  • Целое слово (word boundary). Слово считается отдельным, если перед ним и после него стоит не буква: пробел, знак пунктуации, начало или конец строки. Без этого условия поиск слова «долг» найдёт также «долги», «должен», «долгий».
  • Регистр букв. В большинстве редакторов есть опция «Учитывать регистр» (Match case). Если в задании требуется посчитать слово с большой и с маленькой буквы, нужно провести два отдельных поиска и сложить результаты: N=Nслово+NСловоN = N_{\text{слово}} + N_{\text{Слово}}
  • Словоформы. Русский язык — язык с развитой морфологией, поэтому одно и то же слово может стоять в разных падежах, числах, родах. Задание требует искать только указанную форму, поэтому нельзя использовать поиск по «основе слова» без границ.
  • Сноски и примечания. В текстах классических произведений часто есть постраничные или concluding-сноски — комментарии автора или редактора, вынесенные отдельно (обычно нумеруются звёздочками или цифрами и располагаются в конце текста или страницы). Эти фрагменты не входят в основной текст произведения и не считаются.
  • Заголовки и служебные элементы. Название произведения, имена глав, эпиграфы иногда содержат искомое слово, но по условию задания обычно считается только основной текст, без заголовка.
  • Инструмент «Найти и заменить». Многие редакторы (Word, LibreOffice Writer) при замене слова на само себя показывают количество произведённых замен — это удобный способ точного подсчёта.
  • Регулярные выражения. Если редактор поддерживает regex, границу слова можно задать явно: выражение вида \bслово\b находит только отдельно стоящее слово, исключая его как часть другого слова.

Методы решения

1. Поиск с опцией «Только слово целиком». Если редактор поддерживает такую настройку, она автоматически исключает вхождения искомого слова как часть более длинного слова. Пример: ищем слово «дочка» с включённой опцией «целое слово» — редактор не покажет «дочку», «дочки», «дочкой», потому что это другие формы, отличающиеся по буквам после корня.

2. Метод «Заменить всё» со счётчиком. Вводим искомое слово в поле «Найти», в поле «Заменить» — то же самое слово, нажимаем «Заменить всё». Редактор выводит сообщение вида «Произведено N замен» — это и есть число вхождений. Пример: ищем «ты» с учётом регистра и целого слова, получаем сообщение «Найдено и заменено 15 совпадений» — далее из них вручную отфильтровываем вхождения в сносках.

3. Регулярные выражения с явной границей слова. Если нужно исключить вхождения слова как части другого (например, «долг» внутри «долги»), а опции «целое слово» нет, используем регулярное выражение \bдолг\b. Такой запрос находит слово, окружённое не-буквенными символами с обеих сторон. Пример: поиск \bты\b находит «ты» как отдельное местоимение, но не находит «ты» внутри слова «стынет» (хотя в реальности такое совпадение маловероятно, принцип именно такой).

4. Раздельный поиск по регистру и последующее сложение. Когда в формулировке указано «слово» или «Слово» (то есть два варианта записи), нужно провести поиск с включённым учётом регистра дважды: один раз с маленькой буквы, второй раз с большой, а затем сложить результаты по формуле N=N1+N2N = N_1 + N_2. Пример: слово «долг» встречается 0 раз с маленькой буквы и 1 раз с большой буквы (в начале строки стихотворения) — итог N=0+1=1N = 0 + 1 = 1.

5. Ручная проверка фрагмента текста с примечаниями. Для коротких текстов или тренировочных фрагментов, где нет функции автоматического распознавания сносок, полезно вручную просмотреть все найденные совпадения и определить, какие из них относятся к основному тексту произведения, а какие — к примечаниям редактора, вынесенным отдельным блоком (обычно в конце документа, с более мелким шрифтом или пометкой «Примечания»). Пример: из 3 найденных вхождений слова 1 находится в разделе примечаний — итоговый ответ уменьшается до 2.

Алгоритм решения по шагам

  1. Внимательно прочитать формулировку: выписать точную форму искомого слова, отметить требование по регистру («или Слово» — считаем два варианта) и по сноскам («не считая сносок»).
  2. Открыть текстовый файл произведения в редакторе, поддерживающем поиск (Word, LibreOffice Writer, Блокнот++ и т. п.).
  3. Открыть диалог «Найти и заменить» (обычно сочетание клавиш Ctrl+H).
  4. Включить опции «Учитывать регистр» и «Только слово целиком», если они доступны.
  5. Ввести искомое слово с маленькой буквы, выполнить «Заменить всё» (заменяя слово на само себя), запомнить число замен N1N_1.
  6. Если требуется учитывать и написание с большой буквы, повторить поиск с большой буквы, запомнить число N2N_2.
  7. Просмотреть все найденные позиции (можно использовать обычный поиск Ctrl+F и кнопку «Найти далее», чтобы переходить по каждому вхождению) и определить, какие из них находятся в тексте примечаний/сносок.
  8. Вычесть из общей суммы количество вхождений, попавших в сноски.
  9. Сложить оставшиеся значения: N=N1+N2−NсноскиN = N_1 + N_2 - N_{\text{сноски}}.
  10. Записать итоговое целое число как окончательный ответ.

Разбор примеров

Пример 1. Найти, сколько раз (не считая сносок) встречается слово «долг» или «Долг» в тексте «Евгения Онегина», без учёта других форм («долги», «долгами» и т. д.). Ответ: 1.

Шаг 1. Выписываем условие: ищем ровно слово «долг» в двух вариантах регистра, границы слова обязательны (иначе «долг» найдётся внутри «долги», «долгом» — но это уже другая словоформа, которую условие явно требует не считать).

Шаг 2. Открываем текст романа, включаем в поиске опцию «Только слово целиком» и «Учитывать регистр».

Шаг 3. Ищем «долг» с маленькой буквы — целое слово, с учётом регистра. Пусть находится 0 вхождений.

Шаг 4. Ищем «Долг» с большой буквы — целое слово. Находим 1 вхождение (например, в поэтическом обращении в начале строки, где слово стоит с большой буквы по правилам стихотворного текста).

Шаг 5. Проверяем найденное вхождение — оно расположено в основном тексте поэмы, а не в разделе примечаний Пушкина к роману (которые вынесены отдельным списком после основного текста).

Шаг 6. Складываем: N=0+1=1N = 0 + 1 = 1. Ответ совпадает с указанным — 1.

Пример 2. Найти, сколько раз (не считая сносок) встречается слово «ты» или «Ты» в тексте «Евгения Онегина», без учёта форм «твой» и т. д. Ответ: 2.

Шаг 1. Слово «ты» короткое и частотное как местоимение, поэтому особенно важно включить опцию «целое слово» — иначе поиск захватит букву-сочетание «ты» внутри множества других слов («ты» встречается как подстрока почти во всех текстах многократно: «мечты», «цветы», «зваты» и т. п.).

Шаг 2. Выполняем поиск «ты» с маленькой буквы, целое слово, с учётом регистра. Допустим, находим 1 вхождение.

Шаг 3. Выполняем поиск «Ты» с большой буквы, целое слово. Находим 1 вхождение (местоимение в начале предложения или стихотворной строки).

Шаг 4. Проверяем оба найденных места — они относятся к основному поэтическому тексту, не к примечаниям.

Шаг 5. Складываем: N=1+1=2N = 1 + 1 = 2. Результат соответствует ответу — 2.

Пример 3. Определить, сколько раз в тексте «Капитанской дочки» встречается слово «дочка» или «Дочка», без учёта форм «дочку», «дочки» и т. д. Ответ: 1.

Шаг 1. Обращаем внимание, что слово «дочка» входит в название произведения — «Капитанская дочка». По условию считается именно текст произведения, а не заголовок, поэтому вхождение в названии не учитывается.

Шаг 2. Включаем поиск с опцией «целое слово», ищем «дочка» с маленькой буквы. Допустим, находим 0 вхождений в тексте (без заголовка).

Шаг 3. Ищем «Дочка» с большой буквы, целое слово. Находим 1 вхождение — например, в прямой речи персонажа, где слово стоит в начале предложения.

Шаг 4. Проверяем, что это вхождение относится к основному тексту повести, а не к заголовку главы.

Шаг 5. Складываем: N=0+1=1N = 0 + 1 = 1. Ответ совпадает — 1.

Общий вывод из всех трёх примеров: результат почти всегда получается небольшим числом, потому что задание требует точной формы слова без учёта производных словоформ — а именно в такой узкой форме слово встречается редко даже в объёмном произведении.

Типичные ошибки и ловушки

  • Забыли включить «целое слово». Самая частая ошибка: поиск без границ слова находит искомую подстроку внутри других слов («долг» внутри «долги», «должен»), что резко искажает результат в большую сторону.
  • Не учли оба варианта регистра. Если в формулировке указано «слово» или «Слово», нужно обязательно искать оба варианта и складывать результаты, а не ограничиваться только одним написанием.
  • Посчитали вхождения в сносках. Постраничные примечания автора или редактора нужно явно исключать — они обычно вынесены отдельным блоком в конце текста или в конце страницы и содержат номера сносок.
  • Посчитали заголовок или название произведения. Название произведения, заголовки глав и эпиграфы часто не относятся к «тексту» в смысле условия задания.
  • Перепутали словоформы с искомым словом. Например, при поиске слова «долг» случайно засчитали «долги» или «долгий», решив, что раз корень совпадает — слово подходит; условие явно требует не считать другие формы.
  • Ошибка при замене слова на другое значение. При использовании функции «Заменить всё» важно заменять слово на само себя, иначе можно испортить исходный текст файла и потерять контроль над количеством совпадений.
  • Использование не того файла или не той редакции текста. Разные издания произведения могут отличаться орфографией, расстановкой знаков препинания и наличием отдельных примечаний — нужно использовать именно тот файл, который прилагается к заданию.

Как готовиться

Для уверенного выполнения этого задания нужно на практике освоить работу с функцией поиска в текстовом редакторе, который будет использоваться на экзамене (обычно это офисный пакет с текстовым процессором). Стоит заранее изучить, где находятся опции «Учитывать регистр» и «Только слово целиком», как работает диалог «Найти и заменить», и как редактор сообщает количество произведённых замен.

Полезно потренироваться на нескольких классических произведениях школьной программы — именно они чаще всего используются в качестве текстов для этого задания. При тренировке стоит специально брать короткие частотные слова (местоимения, союзы, короткие существительные), чтобы на практике столкнуться с проблемой ложных совпадений внутри других слов и научиться сразу включать нужные опции поиска.

Отдельное внимание стоит уделить умению отличать основной текст произведения от сопутствующих элементов — сносок, примечаний, эпиграфов и заголовков. Для этого при открытии файла полезно сначала пролистать его целиком и отметить, где расположены такие вспомогательные разделы, чтобы при подсчёте сразу вычитать вхождения, попавшие туда.

Наконец, полезно вырабатывать привычку проверять результат двумя способами: например, сначала посчитать через «Заменить всё» со счётчиком, а затем вручную пройтись по каждому найденному вхождению с помощью кнопки «Найти далее», чтобы визуально убедиться в правильности итогового числа. Такая перекрёстная проверка снижает риск арифметической или технической ошибки и повышает уверенность в правильности итогового ответа.

Частые вопросы

Почему в задании важно включать опцию «целое слово»?

Без этой опции поиск найдёт искомое сочетание букв внутри любых других слов, где оно встречается как часть, а не как самостоятельное слово. Например, поиск «долг» без границ слова найдёт «долги», «должен», «долгий», что искажает итоговый результат в большую сторону.

Как учитывать вариант «слово» или «Слово» в формулировке?

Нужно провести два отдельных поиска — с маленькой и с большой буквы, с включённым учётом регистра, — и сложить полученные числа: N=N1+N2N = N_1 + N_2. Это стандартный способ учесть оба варианта написания, указанные через «или».

Что считается сносками и почему их нужно исключать?

Сноски — это примечания автора или редактора, вынесенные отдельно от основного повествования, обычно пронумерованные и расположенные в конце страницы или всего текста. Задание требует посчитать вхождения только в художественном тексте произведения, поэтому такие примечания исключаются из подсчёта.

Нужно ли учитывать слово в названии произведения?

Как правило, нет: условие задания говорит про «текст произведения», а заголовок и название к самому тексту не относятся. Это стоит проверять отдельно, если искомое слово совпадает со словом из названия.

Можно ли использовать регулярные выражения вместо опции «целое слово»?

Да, если в редакторе нет готовой опции границы слова, можно вручную задать регулярное выражение вида \bслово\b, которое найдёт слово только тогда, когда перед ним и после него нет других букв.

Как проверить, что итоговое число посчитано правильно?

Рекомендуется использовать два независимых способа: подсчёт через «Заменить всё» со счётчиком замен и ручной проход по каждому найденному вхождению с помощью кнопки «Найти далее», сверяя оба результата между собой.

Почему ответы в этом задании обычно небольшие числа?

Потому что условие требует искать слово именно в указанной форме, без учёта падежных и числовых изменений, а также исключает сноски и заголовки. Такая узкая форма слова в объёмном художественном тексте встречается редко, поэтому итоговое число обычно составляет 1–3.