Разбор решений задания 4

Задача 1: Пользователь последовательно посетил каталоги DOC, USER, SCHOOL, A:\, LETTER, INBOX. При каждом перемещении пользователь либо спускался в каталог на уровень ниже, либо поднимался на уровень выше. Каково полное имя каталога, из которого начал перемещение пользователь?

1) A:\DOC

2) A:\LETTER\INBOX

3) А:\SCHOOL\USER\DOC

4) А:\DOC\USER\SCHOOL

Решение:

  1. для того чтобы определить полный адрес файла или каталога, нужно начинать с поиска имени диска, в данном случае каталог находится на диске A:\
  2. в списке посещенных каталогов перед A:\ стоит SCHOOL, поэтому пользователь мог попасть в корень диска A:\ только через каталог SCHOOL, следовательно, адрес стартового каталога начинается с A:\SCHOOL

Ответ: 3.

Задача 2: Пользователь работал с каталогом Участники. Сначала он поднялся на один уровень вверх, затем спустился на один уровень вниз, потом ещё раз спустился на один уровень вниз. В результате он оказался в каталоге C:\Конференция\Секции\Информатика. Запишите полный путь каталога, с которым пользователь начинал работу.

1)C:\Конференция\Регионы\Списки\Участники

2)C:\Конференция\Участники

3)C:\Конференция\Регионы\Участники

4)C:\Участники

Решение:

В этом задании уже указано, что Участники — это каталог, а не файл. Известно, что пользователь поднялся на один уровень вверх, а затем дважды спустился на один уровень вниз и оказался в папке C:\Конференция\Секции\Информатика. Проделаем этот путь в обратном порядке — дважды поднимемся на один уровень и один раз спустимся на один уровень. Поднявшись на два уровня вверх, мы окажемся в папке C:\Конференция\. Далее необходимо спуститься на один уровень, т. е. в конечно итоге полный путь каталога, с которым пользователь начал работу должен выглядеть так - C:\Конференция\<какая-то папка>. Под этот вариант подходит ответ номер 2.

Ответ: 2.

Задача 3: В некотором каталоге хранился файл Газета, имевший полное имя C:\Сентябрь\Выпуск1\Газета. Пользователь, находившийся в этом каталоге, поднялся на один уровень вверх, создал подкаталог Вёрсткаи переместил в созданный подкаталог файл Газета. Каково стало полное имя этого файла после перемещения?

1)C:\Сентябрь\Вёрстка\Газета

2)C:\Вёрстка\Сентябрь\Выпуск1\Газета

3)C:\Вёрстка\Газета

4)C:\Сентябрь\Выпуск1\Вёрстка\Газета

Решение:

Рассмотрим пошагово действия пользователя. В условии указано полное имя файла Газета - C:\Сентябрь\Выпуск1\Газета.

Нужно быть внимательным, так как может сбить с толку то, что файл Газета не имеет расширения и принять его за папку!

Итак, файл Газета находится в папке C:\Сентябрь\Выпуск1\. Пользователь поднялся на один уровень вверх — значит он оказался в папке C:\Сентябрь\. Далее он создал папку Вёрстка и переместил в созданный подкаталог файл Газета. Таким образом, получаем полное имя файла C:\Сентябрь\Вёрстка\Газета

Ответ: 1.

Задача 4: Определите, какое из указанных имен файлов удовлетворяет маске: ?hel*lo.c?*

1) hello.c 2) hello.cpp 3) hhelolo.cpp 4) hhelolo.c

Решение:

  1. проверяем соответствие файлов маске по частям;
  2. первая часть маски «?hel» означает, что перед сочетанием «hel» в начале имени стоит один любой символ;
  3. отсюда видим, что первые два имени не подходят (начинаются прямо с «hel», без стартового символа);
  4. для двух последних имен проверяем второй блок маски: после «hel» должна быть цепочка «*lo.c». Т.к. символ «*» может означать либо последовательность символов, либо «пустую» последовательность, значит два оставшихся имени подходят для маски;
  5. последняя часть маски, «?*», означает, что после «lo.c» должен стоять по крайне мере один любой символ (на это указывает знак «?»); для последнего имени, «hhelolo.c» после «lo.c» нет ни одного символа, следовательно, маска не подходит.

Ответ: 3.