Решение задач
Разбор задачи A4 (демо ЕГЭ 2013)
Для групповых операций с файлами используются маски имён файлов.
Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы.
Символ «?» (вопросительный знак) означает ровно один произвольный символ.
Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность.
В каталоге находится 6 файлов:
Символ «?» (вопросительный знак) означает ровно один произвольный символ.
Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность.
В каталоге находится 6 файлов:
- asc.wma
- casting.wmv
- last.wma
- pasta.wmvx
- pasta.wri
- vast.wma
- casting.wmv
- last.wma
- pasta.wmvx
- vast.wma
- ?as*.wm?
- *as?.wm*
- ?as*.wm*
- ?as*.w*
Решение:
У всех файлов в названии:
В вариантах ответа символ "t" не фигурирует, поэтому его опустим, он будет в составе символа "*".
Нашу маска ?ast*.wm* станет такой: ?as*.wm*. Это вариант 3.
2 способ (метод подстановки)
1 способ
Найдем, что общего у отобранных 4-х файлов:
- casting.wmv
- last.wma
- pasta.wmvx
- vast.wma
У всех файлов в названии:
- перед ast стоит 1 символ, поэтому поставлен символ "?";
- после ast стоит от 0 до 3 символов, поэтому поставлен символ "*".
В вариантах ответа символ "t" не фигурирует, поэтому его опустим, он будет в составе символа "*".
Нашу маска ?ast*.wm* станет такой: ?as*.wm*. Это вариант 3.
2 способ (метод подстановки)
Рассмотрим предлагаемые маски.
Вариант ответа |
Маска |
Ошибки |
Комментарий |
---|---|---|---|
1 |
?as*.wm? | не будет выбран файл pasta.wmvx; | Символ "?" заменяет ровно 1 символ, а у нас 2 символа |
2 |
*as?.wm* | не будут выбраны файлы: casting.wmv, pasta.wmvx и будет ошибочно выбран файл: asc.wma; | Символ "?" заменяет ровно 1 символ, а у нас 4 и 2 символа. Символ "*" может заменить 0 символов, это приведет к неверному выбору asc.wma |
3 | ?as*.wm* | - | |
4 |
?as*.w * | будет ошибочно выбран файл: pasta.wri; | w* не достаточно, это приведет к неверному выбору pasta.wri |
Получили маску: ?as*.wm*