[hackeroid] hscool Entrance Examination -- 98

Ниже приводится расшифрованный текст заданий, которые я давал на вступительных экзаменах в Школу 13 сентября 1998 году. Шифры были простые, и те, кто занимались ранее в моих группах, справились с ними без затруднений.

Арви Хэкер


                          Вступительные задания
                       в Гражданскую Школу Хэкеров
                          (1998/99 учебный год)

   1. Без использования дополнительной памяти (переменных, массивов,
стека,..) поменять местами содержимое двух целых переменных, X и Y.
Разрешено использовать только команды присваивания, арифметические и
логические операции, стандартные функции, кусочек сыра.

   1*. Проделайте тоже самое, используя команды присваивания и лишь одну
операцию.

   2. Тупого Сержанта научили (с большим трудом) запоминать шесть
целых чисел (X, Y, N, L, M и D), увеличивать и уменьшать их на единичку и
как записать число N на клетчатом листке бумаги в строке Y, столбце X.
Составьте подробную инструкцию для Тупого Сержанта, исполняя которую он
расположит первые сто неотрицательных чисел в виде спирали:

                      20 21 22 23 24 25
                      19  6  7  8  9 26
                      18  5  0  1 10 ..
                      17  4  3  2 11
                      16 15 14 13 12

   2*. Сделайте то же самое для Супертупого Сержанта, который умеет
записывать в клеточках лишь цифры.

   3. Игровая программа (помимо всего прочего) выводит треугольник --
клоунский колпак.  Вам нужно ее взломать, повернув треугольник на 15
градусов против часовой стрелки вокруг его левого нижнего угла (приподнять
колпак клоуна в приветствии).  После тщательного изучения текста вы нашли
строчки, выводящие, как вы полагаете, треугольник:

...
560 CIRCLE (100,300),50
570 LINE ( 50, 250)-(150, 250)
580 LINE (150, 250)-(100, 200)
590 LINE (100, 200)-( 50, 250)
...

   Что и на что нужно изменить?

-----------------------------------------------------------------------------
   Для тех, кто возьмется за решение третей задачи напомним некоторые
сведения из школьного курса геометрии:

   КОСИНУС  о с т р о г о  у г л а  в прямоугольном треугольнике -- отношение
катета, прилежащего к этому углу, к гипотенузе.  Обозначение: cos.

   СИНУС  о с т р о г о  у г л а  в прямоугольном треугольнике -- отношение
катета, лежащего против этого угла к гипотенузе.  Обозначение: sin.

   Эти отношения постоянны для различных треугольников и зависит только от
угла.  Для двоечников замечу, что гипотенуза -- сторона прямоугольного
треугольника, лежащая напротив прямого угла.  Компьютер измеряет углы в
радианах.  360 градусов равны два пи (2*3.1415926=6.2831852) радиан.

   Время на выполнение всех трех заданий -- три часа.  Задания расположены
в порядке возрастания сложности.  Задавать вопросы проводящим конкурс
запрещено.

                                                                    AtH//HPG


E-mail: hscool@netclub.ru
Hosted by uCoz