Ученик программиста

Автор: Сунгуров Алексей

Дорогие друзья, продолжается публикация первого тома моего второго романа. Это космическая фантастика по мирам EVE online. Называется он «Пограничное состояние. Том 1. Становление». Публикации, как и первого моего романа, идут по рабочим дням, в 8-15 часов утра по Москве. Адрес романа под спойлером:

Сегодня была опубликована восьмая глава, где новый хакер Сона начинает обучать Стивена программированию.

Для Соны тоже нашлось дело. Ей предстояло взломать и перепрошить десяток искинов, привезенных нами с астероида для собственных нужд. Также ей поручили проверить и модернизировать защиту нашего ангара. Мои попытки написания программ с высоты ее мастерства казались жалкими, о чем она сразу же и заявила. Я в ответ тоже не стал молчать:

— А ты возьми и научи меня делать правильно. Эти программы я написал и адаптировал с первым уровнем базы знаний. А сейчас у меня разучена она в третьем уровне. Дай мне задание и проверь результат.

— Хм, с первым уровнем? Ну ладно, дам тебе шанс. Напиши для искина фрегата программу совместной работы орудий ближней обороны и пусковых противоракет.

— Так такие программы уже готовые вшиты в искин. Зачем писать новую?

— Они работают с ошибками. Действенность совместной работы низкая. Можешь сам проверить типовую программу.

Так к моим заботам по модернизации фрегата добавилось программирование его новых защитных систем. Времени катастрофически не хватало, но было стыдно в этом признаться. Да и проигрывать я не любил. Вот и сидел вместо сна ковырялся в кусках программного кода типовой программу обороны. И никак не мог понять, где Сона увидела ошибки.

Неделю я препарировал код, но так ничего и не нашел. А потом плюнул на поиски и решил составить свой вариант программы. Для начала решил смоделировать боевую ситуацию. Первая опасность: подлет абордажного бота, вторая: подлет четырех ракет, третья: подлет штурмовика с торпедой, четвертая: атака торпеды. Все четыре объекта активно маневрируют, выбрасывают цели-обманки и ставят помехи. Против маневрирования может помочь стрельба не точно по цели, а создание облака поражающих элементов на траектории цели. То есть нужно подрывать снаряды и ракеты за долю секунды до столкновения, тогда поражение все равно случится, как бы цель не отклонилась от расчетной траектории.

От помех и ложных целей можно отстроиться, и эти инструменты хорошо отработаны. Тут менять ничего не надо. А вот синхронизировать в одном поражающем облаке снаряды и противоракеты можно. Сразу же захотелось проверить существующую программу на этот счет. Никакой синхронизации не нашлось. Все снаряды и противоракеты выпускались по мере готовности точно в цель на расчетной траектории. А цель как раз и уклонялась с расчетной траектории, поэтому и могла достичь корабля. Наконец, я нашел слабость типовой программы. А написать корректирующий модуль труда не составило даже с моим третьим уровнем.

Результат предъявил Соне на следующее утро. Еле дождался разговора, так захотелось получить похвалу. Сона мельком глянула на присланную программу и перевела взгляд на меня.

— А я решила, что у тебя ничего не получилось и ты давно отступился.

— Как видишь, не отступился. Посмотришь мой вариант?

— Посмотрю, но мне понадобится десять минут.

— Я подожду.

Десять минут я ерзал на стуле, не в силах усидеть. Хотелось встать и пробежаться по комнате, но я себя удерживал. Наконец, Сона подняла голову и посмотрела на меня с удивлением.

— Интересное решение, но совсем не то, которое я ожидала. Так действительно повышается эффективность почти на сорок процентов, а это много. Я же хотела улучшить селективность целей, что дает десять процентов прибавки. А если добавим оба улучшения, то достигнем почти пятидесятипроцентного улучшения.

— А ты мне покажешь свой вариант?

— Да, смотри.

Было очень приятно работать в паре с Соной. Меня окутало ощущение тепла, которое я раньше испытывал только от близости мамы. А работа с кодом, демонстрируемая Соной, завораживала своей виртуозностью. Мне до таких высот надо было еще учиться и учиться.

+136
153

0 комментариев, по

10K 2 843
Мероприятия

Список действующих конкурсов, марафонов и игр, организованных пользователями Author.Today.

Хотите добавить сюда ещё одну ссылку? Напишите об этом администрации.

Наверх Вниз