The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Объявлены победители 28 конкурса по написанию запутанного кода на языке Си

03.08.2025 23:04

Опубликованы исходные тексты работ, победивших в двадцать восьмом конкурсе IOCCC (International Obfuscated C Code Contest), участникам которого предлагалось подготовить наиболее запутанный и трудноразбираемый код на языке Си. 28 конкурс проведён после четырёхлетнего перерыва и примечателен разрешением использовать кодировку UTF-8 в коде.

Участвующие в конкурсе работы, с одной стороны, должны препятствовать анализу кода и пониманию сути решаемой задачи, но, с другой стороны, код должен быть интересен и чем-то примечателен (работы могут быть необычно оформлены или выделять неожиданные стороны языка Си). Размер исходного кода программы не должен превышать 4096 байт, а программа должна собираться и выполнять осмысленное действие.

Победители:

  • Помощник в решении головоломки Wordle, в которой нужно угадать пятибуквенное слово за шесть попыток (код).
  • Чат-бот, использующий модель llama2-7b-chat и OpenMP. Проект отмечен как самый компактный движок для выполнения больших языковых моделей (код всего 1800 байт).
  • На первый взгляд программа возводит в квадрат числа от 1 до 10, но на деле показывается рецепт приготовления жареного лосося. Код 15 строк и содержит манипуляции с незаметными символами Unicode.
  • Эмулятор CPU Intel 4004. Код 14 строк.
  • Генератор изображений деревьев в консоли. Код оформлен в виде дерева.
  • Трассировщик лучей, реализованный целиком при помощи макросов Си-препроцессора (код).
  • Физический движок, симулирующий вращение волчка. Код тоже в форме волчка.
    
    
    
                                           @@
                                          @@
                                 @@@@@@@@@@@@
                             @@ @@@@@@@@@@@@@@@@
                            @@@@  @@@@@@@@@@@@@@@@
                           @@@@@@@    @@@@@@@@@@@  @
                           @@@@@@@@@@@           @@@
                            @@@@@@@@@@@@@@@@@@@@@@@@
                            @@@@@@@@@@@@@@@@@@@@@@@@
                             @@@@@@@@@@@@@@@@@@@@@
                             @@@@@@@@@@@@@@@@@@@@
                              @@@@@@@@@@@@@@@@
                              @@@@@@@@@@@@@
                               @@@@@@@@@
                                 @@@@
                                 @@
                                @@
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    
    
  • Пародия на игру Oregon Trail. Код с огромным числом операторов goto.
  • Переводчик с языка, использовавшегося радистами-шифровальщиками навахо (код.
  • Текстовый редактор eh (код).
  • Калькулятор, выражения в котором задаются словами (например, "два плюс два"). Код в виде калькулятора.
  • Рисует текущую фазу луны в консоли. Код в форме луны.
  • Утилита для удаления артефактов из JPEG-изображений. Код 42 строки.
  • Виртуальная машина, способная запускать Doom 1/2 на современным ПК. Код 40 строк.
  • Генератор Си-кода для вывода указанных данных. Код в виде спирали.

  • Эмулятор CPU OpenRISC, способный запустить Linux. Код 73 строки.
  • Интерпретатор языка JavaScript с поддержкой объектов, массивов, строк, чисел, функций и сборщиком мусора. Код 61 строка.
  • Анимация танцующего Рика Эстли со звуковым сопровождением (код).
  • Интерпретатор z3-файлов от игры Zork (код).
  • Генератор пиктограмм в формате pbm из MD5-хэшей. Код - однострочник 135 байт.
  • Генератор музыки (код).
  • Симулятор смерча в 3D. Код в форме смерча.
  • Программа для шифрования и дешифровки текста (код).


  1. Главная ссылка к новости (https://www.ioccc.org/years.ht...)
  2. OpenNews: Возобновлено соревнование по написанию запутанного кода на языке Си
  3. OpenNews: Названы победители 27 конкурса по написанию запутанного кода на языке Си
  4. OpenNews: Результаты 22 чемпионата по написанию запутанного кода на языке Си
  5. OpenNews: Опубликованы работы, победившие на 21 чемпионате по написанию запутанного кода на языке Си
  6. OpenNews: Опубликован код работ, победивших на соревновании по написанию самого запутанного кода на языке Си
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63668-ioccc
Ключевые слова: ioccc
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (17) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Карлос Сношайтилис (ok), 23:19, 03/08/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Волчок прекрасен!
     
  • 1.2, Аноним (2), 23:20, 03/08/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.3, Аноним Анонимович Анонимов (?), 23:21, 03/08/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Аплодисменты участникам. Каждый раз удивляют победители.
     
     
  • 2.12, Аноним (12), 00:31, 04/08/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Тут кстати документалка, как авторы готовили свои проекты:
    https://www.youtube.com/watch?v=dQw4w9WgXcQ
     

  • 1.4, Аноним (4), 23:29, 03/08/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +2 +/
     
  • 1.5, Аноним (5), 23:40, 03/08/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А слабо написать незапутанный код на сишке без CVE? Надо конкурс устроить.
     
     
  • 2.9, Аноним (9), 00:00, 04/08/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А слабо переписать на Раст?
     
  • 2.17, penetrator (?), 02:23, 04/08/2025 [^] [^^] [^^^] [ответить]  
  • +/
    и не только на сишке, на других языках калек еще больше
     

  • 1.6, morphe (?), 23:50, 03/08/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     
  • 1.7, Голдер и Рита (?), 23:58, 03/08/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Создавать эффективные приложения с небольшим количеством кода — вот причина, по которой я обожаю язык Си.
     
     
  • 2.13, Аноним (-), 00:37, 04/08/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Поддержка кода и исправление бегов в понятие "эффективные приложения" входит))?
    Или как наовнякали, так пусть работает.
    Ну пока за пределы буфера не выйдет.
     

  • 1.8, Аноним (9), 00:00, 04/08/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.10, голос_из_леса (ok), 00:08, 04/08/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как показывает опыт перла, такие конкурсы предвестники забвения.
     
  • 1.11, 12yoexpert (ok), 00:09, 04/08/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    открыл код волчка - сначала показалось, что это раст, легко перепутать
     

  • 1.15, Аноним (-), 00:40, 04/08/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Виртуальная машина, способная запускать Doom 1/2 на современным ПК.
    > Код 40 строк.

    Там 40 строк только если все писать в одну строку с ограничением на 80 символов в строек.
    Если отформатировать нормально - то получает раза в 2.5 больше, смотря какой стиль скобок выбрать. Плюс все обмазано дефайнами, а если оформить нормально, то в итоге получается обычная сишная дрисня.

     
     
  • 2.16, Аноним (16), 02:08, 04/08/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > 40 строк

    ...и тонна байткода

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру