A4 (базовый уровень, время – 1 мин)
Тема: Файловая система.
Что нужно знать:
· данные на дисках хранятся в виде файлов (наборов данных, имеющих имя)
· чтобы было удобнее разбираться с множеством файлов, их объединяют в каталоги (в Windows каталоги называются «папками»)
· каталог можно воспринимать как контейнер, в котором размещаются файлы и другие каталоги, которые называются подкаталогами или вложенными каталогами (они находятся внутри другого каталога, вложены в него)
· каталоги организованы в многоуровневую (иерархическую) структуру, которая называется «деревом каталогов»
· главный каталог диска (который пользователь видит, «открыв» диск, например, в Проводнике Windows или аналогичной программе) называется корневым каталогом или «корнем» диска, он обозначается буквой логического диска, за которой следует двоеточие и знак «\» (обратный слэш[1]); например, A:\ – это обозначение корневого каталога диска А
· каждый каталог (кроме корневого) имеет (один единственный!) «родительский» каталог – этот тот каталог, внутри которого находится данный каталог
· полный адрес каталога – это перечисление каталогов, в которые нужно войти, чтобы попасть в этот каталог (начиная с корневого каталога диска); например С:\USER\BIN\SCHOOL
· полный адрес файла состоит из адреса каталога, в котором он находится, символа «\» и имени файла, например С:\USER\BIN\SCHOOL\Вася.txt
· маска служит для обозначения (выделения) группы файлов, имена которых имеют общие свойства, например, общее расширение
· в масках, кроме «обычных» символов (допустимых в именах файлов) используются два специальных символа: звездочка «*» и знак вопроса «?»;
· звездочка «*» обозначает любой количество любых символов, в том числе, может обозначать пустую последовательность;
· знак вопроса «?» обозначает ровно один любой символ
· при выводе списка имен файлов они могут быть отсортированы по имени, типу (расширению), дате последнего изменения, размеру; это не меняет их размещения на диске;
· если установлена сортировка по имени или типу, сравнение идет по кодам символов, входящих в имя или в расширение
Пример задания:
Определите, какое из указанных имен файлов удовлетворяет маске: ?hel*lo.c?*
1) hello.c 2) hello.cpp 3) hhelolo.cpp 4) hhelolo.c
Решение:
1) будем проверять соответствие файлов маске по частям, записывая результаты в таблицу
2) начнем с первой части маски, «?hel»; эта часть означает, что перед сочетанием «hel» в начале имени стоит один любой символ;
3) сразу видим, что первые два имени не подходят (начинаются прямо с «hel», без стартового символа), отмечаем их крестиком в таблице и больше не рассматриваем:
| ?hel
| hello.cp
| ×
| hello.cpp
| ×
| hhelolo.cpp
| hhelolo.cpp
| hhelolo.c
| hhelolo.c
| желтым и фиолетовым маркером в таблице выделены соответствующие части маски и имен файлов (где есть совпадение)
4) для двух последних имен проверяем второй блок маски: после «hel» должна быть цепочка «lo.c», или вплотную (и это возможно!) или через произвольную «вставку», на которую указывает звездочка в маске; видим, что оба имени прошли проверку:
| ?hel
| ?hel*lo.c
| hello.cp
| ×
| | hello.cpp
| ×
| | hhelolo.cpp
| hhelolo.cpp
| hhelolo.cpp
| hhelolo.c
| hhelolo.c
| hhelolo.c
| 5) последняя часть маски, «?*», означает, что после «lo.c» должен стоять по крайне мере один любой символ (на это указывает знак «?»); проверяя это правило, обнаруживаем, что для последнего имени, «hhelolo.c», маска не подходит, поскольку после «lo.c» ни одного символа нет:
| ?hel
| ?hel*lo.c
| ?hel*lo.c?*
| hello.cp
| ×
| | | hello.cpp
| ×
| | | hhelolo.cpp
| hhelolo.cpp
| hhelolo.cpp
| hhelolo.cpp
| hhelolo.c
| hhelolo.c
| hhelolo.c
| ×
| 6) таким образом, правильный ответ – 3.
Возможные ловушки и проблемы:
· можно забыть, что звездочка «*» может соответствовать и пустой последовательности; например, в рассмотренной задаче имя «hhelolo.cp» также соответствует маске
· можно забыть, что знак «?» НЕ может соответствовать пустой последовательности, а заменяет ровно 1 символ
| Еще пример задания:
Перемещаясь из одного каталога в другой, пользователь последовательно посетил каталоги DOC, USER, SCHOOL, A:\, LETTER, INBOX. При каждом перемещении пользователь либо спускался в каталог на уровень ниже, либо поднимался на уровень выше. Каково полное имя каталога, из которого начал перемещение пользователь?
1) A:\DOC
2) A:\LETTER\INBOX
3) А:\SCHOOL\USER\DOC
4) А:\DOC\USER\SCHOOL
Решение:
1) сразу отметим, что здесь предполагается, что пользователь не переходил на другой диск;
2) в задачах, где нужно определить полный адрес файла или каталога, нужно начинать с поиска имени диска, в данном случае каталог находится на диске A:\ (так обозначается корневой каталог)
3) поскольку в списке посещенных каталогов перед A:\ стоит SCHOOL, пользователь мог попасть в корень диска A:\ только через каталог SCHOOL, поэтому адрес стартового каталога начинается с A:\SCHOOL
4) так как среди предложенных вариантов только один удовлетворяет этому условию, можно остановиться (правильный ответ – 3), однако, давайте все же доведем процедуру до конца, это позволит выяснить некоторые интересные моменты, которые не сработали здесь, но могут сработать в других задачах
5) как пользователь попал в каталог SCHOOL? по условию он мог как подниматься, так и спускаться по дереву каталогов
6) явно он не мог спуститься из USER в SCHOOL, потому что SCHOOL находится в корневом каталоге и каждый каталог имеет только одного «родителя»; значит, пользователь поднялся из USER в SCHOOL, и начальная часть полного адреса А:\SCHOOL\USER
7) аналогично можно доказать, что пользователь поднялся в каталог USER из каталога DOC
8) таким образом, мы доказали, что правильный ответ – 3.
Возможные ловушки и проблемы:
· можно забыть, что названия каталогов в полном имени перечисляются в порядке входа в них, начиная от корневого; пользователь выходил из каталогов, поднимаясь к корню диска A:\, поэтому проходил каталоги в обратном порядке (на эту ошибку рассчитан неверный ответ А:\DOC\USER\SCHOOL)
· можно перепутать каталог, из которого вышел пользователь, и каталог, где он в конечном счете оказался (на эту ошибку рассчитан неверный ответ А:\LETTER\INBOX)
· в условии есть лишние данные, которые только запутывают дело; например, имена каталогов LETTER, INBOX никак не влияют на ответ, потому что пользователь попал в них уже после выхода в корневой каталог диска A:\, то есть, пройдя весь путь исходного каталога в обратном порядке
|
Еще пример задания:
Каталог содержит файлы с именами
а)q.c
б)qq.cpp
в)qq.c
г)q1.c1
д)qaa.cmd
е)q12.cpp
Определите, в каком порядке будут показаны файлы, если выбрана сортировка по типу (по возрастанию).
1) авгдбе 2) авгдеб 3) абвгде 4) авдбег
Решение:
1) при сортировке по типу сравниваются расширения имен файлов
2) при сравнении используют коды символов
3) отсутствие символа (когда расширение закончилось) считается «меньше» любого символа, то есть, файл с расширением .с будет находиться в списке выше, чем файлы с расширениями .c1 и .cmd
4) коды цифр размещаются в таблице символов раньше, чем коды букв, то есть, файл с расширением .с1 будет находиться в списке выше, чем файл с расширением .сmd
5) теперь можно распределить имена файлов по расширениям
а)q.c
в)qq.c
г)q1.c1
д)qaa.cmd
б)qq.cpp
е)q12.cpp
6) осталась еще одна проблема – решить, что делать, если расширения совпадают; в этом случае в большинстве программ для определенности используется дополнительная сортировка по имени, поэтому файл с именем q12.cpp будет стоять в списке выше, чем файл qq.cpp (код цифры ‘1' меньше, чем код буквы ‘q’)
7) в итоге получаем
а)q.c
в)qq.c
г)q1.c1
д)qaa.cmd
е)q12.cpp
б)qq.cpp
8) таким образом, мы доказали, что правильный ответ – 2.
Возможные ловушки и проблемы:
· можно забыть правильно расставить имена файлов с одинаковыми расширениями (неверный ответ 1)
· нельзя сравнивать числовые значения: например, интуитивно кажется, что файл с расширением .c10 «больше», чем файл с расширением .c2, однако это неверно, потому что код цифры '2' больше, чем код цифры '1’; поэтому файл с расширением .c10будет стоять в списке выше файла с расширением .c2 (при сортировке по типу в порядке возрастания)
· можно забыть, что отсутствие кода (имя или расширение закончилось) «меньше» любого кода
· можно забыть, что коды цифр меньше, чем коды букв
· очень легко по невнимательности выбрать не тот ответ
| Еще пример задания:
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, по какой из масок будет выбрана указанная группа файлов:
Xls
Xml
Xls
Xml
1) *23*.?x*
2) ?23?.x??
3) ?23?.x*
4) *23*.???
Решение:
1) рассмотрим первую маску *23*.?x*: она требует, чтобы в имени файла были стоящие подряд цифры 23 (это есть у всех заданных файлов) и в расширении слева от буквы «x» был один обязательный символ (ни одно имя файла не подходит); поэтому вариант 1 неверный
2) рассмотрим вторую маску ?23?.x??: она требует, чтобы в имени файла слева и справа от цифр 23 стояло по одному символу (подходит только для первого имени файла, для остальных не подходит); поэтому вариант 2 неверный
3) рассмотрим третью маску ?23?.x*: она не подходит по тем же причинам, что и вариант 2
4) рассмотрим последнюю маску *23*.???: она требует, чтобы в имени файла были стоящие подряд цифры 23 (это есть у всех заданных файлов) и в расширении было ровно три обязательных символа (это тоже верно для всех имен файлов); поэтому вариант 4 верный
5) таким образом, мы доказали, что правильный ответ – 4.
Еще пример задания:
Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность.
В каталоге находятся пять файлов:
Fort.docx
Ford.docx
Lord.doc
Orsk.dat
Port.doc
Определите, по какой из масок будет выбрана указанная группа файлов:
Fort.docx
Ford.docx
Lord.doc
Port.doc
1) *o?*.d?*
2) ?o*?.d*
3) *or*.doc?
4) ?or?.doc?
Решение:
1) авторы привели список файлов в каталоге, что наводит на мысль о каком-то подвохе, и он действительно есть
2) сформулируем правила, соответствующие каждой маске:
1. в имени файла есть буква «о», за которой следует еще хотя бы один символ; расширение начинается с буквы «d», за которой следует не менее 1 символа
2. в имени файла есть буква «о», перед ней стоит один символ, а за ней следует еще хотя бы один символ; расширение начинается с буквы «d»
3. в имени файла есть «or», расширение из 4-х символов, начинается с «doc»
4. в имени файла 4 символа, причем в середине – «or»; расширение из 4-х символов, начинается с «doc»
3) анализируя маску 1, с удивлением обнаруживаем, что под нее подходят ВСЕ исходные файлы, находящиеся в каталоге, поэтому этот ответ неверный
4) маске 2 соответствуют только нужные нам 4 файла, файл orsk.dat отсекается, потому что в маске перед «о» должен быть еще один символ; скорее всего, это и есть правильный ответ
5) маски 3 и 4 не соответствуют последним двум файлам, у которых расширение doc состоит из трех символов, поэтому это неверные варианты
6) таким образом, мы доказали, что правильный ответ – 2.
Задачи для тренировки[2]:
1) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: ?a???*
1) dad1 2) dad22 3) 3daddy 4) add444
2) В некотором каталоге хранился файл Задача5. После того, как в этом каталоге создали подкаталог и переместили в созданный подкаталог файл Задача5, полное имя файла стало Е:\Класс9\Физика\Задачник\Задача5. Каково было полное имя этого файла до перемещения?
1) Е:\Физика\Задачник\Задача5
2) Е:\Физика\Задача5
3) Е:\Класс9\Задачник\Задача5
4) Е:\Класс9\Физика\Задача5
3) Дано дерево каталогов. Определите полное имя файла Doc3.
1) A:\DOC3
2) A:\DOC3\Doc3
3) A:\DOC3\Doc1
4) A:\TOM3\Doc3
4) В некотором каталоге хранится файл Список_литературы.txt. В этом каталоге создали подкаталог с именем 10_CLASS и переместили в него файл Список_литературы.txt. После чего полное имя файла стало D:\SCHOOL\PHYSICS\10_CLASS\Список_литературы.txt. Каково полное имя каталога, в котором хранился файл до перемещения?
1) D:\SCHOOL\PHYSICS\10_CLASS
2) D:\SCHOOL\PHYSICS
3) D:\SCHOOL
4) SCHOOL
5) Пользователь, перемещаясь из одного каталога в другой, последовательно посетил каталоги LESSONS, CLASS, SCHOOL, D:\ , MYDOC, LETTERS. При каждом перемещении пользователь либо спускался в каталог на уровень ниже, либо поднимался на уровень выше. Каково полное имя каталога, из которого начал перемещение пользователь?
1) D:\MYDOC\LETTERS
2) D:\SCHOOL\CLASS\LESSONS
3) D:\LESSONS\CLASS\SCHOOL
4) D:\LESSONS
6) В некотором каталоге хранится файл Задачи_по_программированию.tхt. В этом каталоге создали подкаталог и переместили в него файл Задачи_по_программированию.tхt. После этого полное имя файла стало D:\INFORM\LESSONS\10_CLASS\Задачи_по_программированию.txt Каково полное имя каталога, в котором хранился файл до перемещения?
1) D:\INFORM
2) D:\INFORM\LESSONS
3) 10_CLASS
4) LESSONS\10_CLASS
7) Учитель работал в каталоге D:\Материалы к урокам\10 класс\Практические работы. Затем перешел в дереве каталогов на уровень выше, спустился в подкаталог Лекции и удалил из него файл Введение. Каково полное имя файла, который удалил преподаватель?
1) D:\Материалы к урокам\10 класс\Введение
2) D:\Материалы к урокам\10 класс\Лекции\Введение
3) D:\Материалы к урокам\Лекции\Введение
4) D:\Материалы к урокам\Введение\Лекции
8) В некотором каталоге хранится файл Список_10_клacca.txt. В этом каталоге создали подкаталог и переместили в него файл Список_10_класса.txt, после чего полное имя файла стало D:\USER\CLASS\DOC\Список_10_класca.txt. Каково полное имя каталога, в котором хранился файл до перемещения?
1) D:\USER\CLASS
2) DOC
3) D:\USER\CLASS\DOC
4) CLASS
9) Пользователь, перемещаясь из одного каталога в другой, последовательно посетил каталоги ACADEMY, COURSE, GROUP, Е:\, PROFESSOR, LECTIONS. При каждом перемещении пользователь либо спускался в каталог на уровень ниже, либо поднимался на уровень выше. Каково полное имя каталога, из которого начал перемещение пользователь?
1) Е:\PROFESSOR\LECTIONS\ACADEMY
2) Е:\ACADEMY\COURSE\GROUP
3) E:\ACADEMY
4) Е:\GROUP\COURSE\ACADEMY
10) Каталог содержит файлы с именами
а)p5.pas
б)p4.ppt
в)p12.pas
г)pq.p
д)pq.pas
е)p12.ppt
Определите, в каком порядке будут показаны файлы, если выбрана сортировка по типу (по возрастанию).
1) вадгеб 2) гавдбе 3) вадгбе 4) гвадеб
11) В некотором каталоге хранится файл Шпора.tхt. В этом каталоге создали подкаталог и переместили в него файл Шпора.tхt. После этого полное имя файла стало D:\Документы\Физика\Контрольная\Шпора.txt Каково полное имя файла до перемещения?
1) D:\Документы\Контрольная\Шпора.txt
2) D:\Физика\Шпора.txt
3) D:\Документы\Физика\Шпора.txt
4) D:\Физика\Контрольная\Шпора.txt
12) В некотором каталоге хранится файл Шпора.tхt. В этом каталоге создали подкаталог и переместили в него файл Шпора.tхt. После этого полное имя файла стало D:\Документы\Химия\Контрольная\Шпора.txt Каково полное имя каталога, в котором хранился файл до перемещения?
1) D:\Документы\Химия\Контрольная
2) D:\Документы\Химия
3) D:\Документы
4) D:\
13) Полное имя файла было C:\Задачи\Физика.C. Его переместили в каталог Tasks корневого каталога диска D. Каково полное имя файла после перемещения?
1) D:\Tasks\Физика.C
2) D:\Tasks\Физика.D
3) D:\Задачи\Tasks\Физика.C
4) D:\Tasks\Задачи\Физика.C
14) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: ?ba*r.?xt
1) bar.txt 2) obar.txt 3) obar.xt 4) barr.txt
15) Находясь в корневом каталоге только что отформатированного диска, ученик создал 3 каталога. Затем в каждом из них он создал еще по 4 каталога. Сколько всего каталогов оказалось на диске, включая корневой?
1) 12 2) 13 3) 154) 16
16) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: F??tb*.d?*
1) Fructb.d 2) Feetball.ddd 3) Football.mdb 4) Futbol.doc
17) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов удовлетворяет маске: A?ce*s.m*
1) Acess.md 2) Accesst.dbf 3) Access.mdb 4) Akcces.m1
18) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов не удовлетворяет маске: ??pri*.?*
1) caprika.wow2) weprik.cpp3) otopri.c4) reprint.be
19) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов не удовлетворяет маске: sys??.*
1) syste.m2) sys23.exe3) system.dll4) syszx.problem
20) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов не удовлетворяет маске: ?ell*.??
1) yell.ow2) fellow.ra3) tell_me.tu4) bell.lab
21) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, какое из указанных имен файлов не удовлетворяет маске: ?*di.t?*
1) poydi.t2) pogudi.tanx3) 2di.t94) melodi.theme
22) Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, по какой из масок будет выбрана указанная группа файлов
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|