Иллюстрированный самоучитель по Perl
Глава 1
Вопросы
и Упражнения
Вопросы
для самоконтроля
1. Что такое ссылка?
2. Объясните разницу между жесткой
и символической ссылкой.
3. Все ли корректно в следующем
фрагменте
$href = \%hash; $$href[0] = 17;
4. Каким будет значение переменной
$b после выполнения следующих операторов:
$а = 1;
$b = ref $a;
5. Что обозначает каждое из выражений:
$$а[0]; ${$а[0]}; $а->[0];
'$а[0];
6. Приведите пример неявного создания
ссылки.
7. $arr_ref — ссылка на анонимный
массив. Как с ее помощью обратиться к третьему элементу этого массива? Напишите
выражение.
8. Что такое "замыкание"?
Упражнения
1. Добавьте текст, содержащий
последовательность операций, которые надо применить к переменной $b, чтобы получить
значение переменной $а
$а = 7;
$b = \\\\$а;
В упражнениях 2-4 используйте
результаты, полученные в примерах 9.1-9.3.
2. Вывести на экран все дни 2000
года, приходящиеся на воскресенья. Вывод должен содержать строку-заголовок,
например, "All 2000 1 Sundays
are: ", И ПО ОДНОЙ строке
на каждый месяц года В виде: <название месяца^ <дни месяцах
3. Вывести на экран календарь
на второй квартал года в виде
<название месяца> <Monday>
<дни месяца>
<Sunday> <дни месяца>
4. Вывести на экран календарь
на первую неделю любого месяца. Вывод должен содержать строку-заголовок и по
одной строке на каждый день недели в виде
<название месяца> <день
месяца> <название дня недели>
5. Треугольником Паскаля называется
следующая бесконечная таблица чисел:
Рис 9.4. Треугольник
Паскаля
Каждое число в этой таблице равно
сумме двух чисел, стоящих над ним слева и справа. Предложите структуру данных
для хранения первых строк треугольника Паскаля. Напишите программу, заполняющую
первые 32 строки и выводящую их на печать.