bash.im ithappens.me zadolba.li
1750

Мои ракеты вверх

Думаю, что про прошествии пяти с лишним лет я могу поведать эту историю, случившуюся на первом курсе физфака %universityName%. Читали нам на первом семестре курс информатики — родимый паскаль, изъезженный сто раз ещё в школе (а некоторыми, в том числе вашим покорным слугой, и раньше). Лектор у нас там был весьма интересный (самый запомнившийся перл — «логические значения „труе“ и „фэлс“), но самым замечательным персонажем был «семинарист».

Каждый семинар на протяжении всего семестра выглядел одинаково. Мы рассаживались за компьютерами (кажется, первыми пеньками с 98-ой виндой, хотя не суть важно), заходил преподаватель, садился за стол и до конца пары (впрочем, и после него тоже) молчал как рыба. На первых порах мы ещё чего-то от него ждали, но потом каждый раз всю пару сидели в интернете, занимаясь кто чем хочет.

Под конец семестра выяснилось, что от нас всё-таки кое-что действительно требовалось. Староста группы откопал на сайте факультета список заданий — что-то порядка десяти программ. Девять из них были простенькими (пара десятков строк кода каждая), а последняя не очень — расчёт траектории полета снаряда, выпущенного под заданным углом с заданной скоростью с учётом сопротивления воздуха, и вывод на экран графика движения.

Не знаю, как остальные, но я за один выходной день сделал все десять программ. Вскоре в нашей группе был зачёт из двух частей: лектор задает вопросы, «семинарист» смотрит программы. Сначала я попал на лектора. С вопросами проблем не было, и через пару минут я услышал: «Давай зачётку». Как человек честный, спрашиваю: «А программы не хотите посмотреть?» Лектор поворачивается к «семинаристу» и спрашивает, есть ли у него ко мне претензии. Тот, опять не говоря ни слова, качает головой, и я получаю долгожданный зачёт.

У друга же моего всё-таки решили посмотреть программу (скопированную у меня) с расчётом полёта. В качестве начальных параметров задали бросок вертикально вверх в штиль. Исходная точка полёта у меня была в начале координат, и я её рисовал около левого края экрана. Дальше я вычислял дальность полета, рисовал точку приземления у правого края, а дальше с помощью простой пропорции переводил координаты снаряда в полёте в координаты на экране. Но при вертикальном броске тело приземлялось там же, откуда и выстреливалось!

Моя программа поставила слева точку «0», справа точку «0», а потом нарисовала замечательную кривульку, расставляя по оси абсцисс нолики возле каждой засечки. Друг меня потом чуть не убил, хотя зачёт он тоже получил.

На всю жизнь я запомнил, что 90 градусов — тоже угол.