Русская Википедия:International Obfuscated C Code Contest

Материал из Онлайн справочника
Версия от 08:28, 15 июля 2023; EducationBot (обсуждение | вклад) (Новая страница: «{{Русская Википедия/Панель перехода}} '''IOCCC''' (от {{lang-en|International Obfuscated C Code Contest}} — «Международный Конкурс запутывания кода на Си»<ref>{{Cite web |url=http://www.ioccc.org/ |title=The International Obfuscated C Code Contest |access-date=2006-06-01 |archive-date=2014-05-28 |archive-url=https://web.archive.org/web/20140528122619/http://www.ioccc.org/ |deadlink=n...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигацииПерейти к поиску

IOCCC (от Шаблон:Lang-en — «Международный Конкурс запутывания кода на Си»[1]) — конкурс программирования, в котором задачей участников является написание максимально запутанного кода на языке Си, с соблюдением ограничений на размер исходного кода. Конкурс IOCCC проводится ежегодно с 1984 года, за исключением 1997, 1999, 2002 и 2003 годов.

История

В 2004 году победителем конкурса стала графическая многозадачная операционная система с поддержкой клавиатуры, мыши, примитивной оконной подсистемой, поддержкой файловой системы, возможностью запускать ELF-программы. В поставку системы входит просмотрщик текстовых файлов, а также рудиментарный командный интерпретатор. Исходный код системы вместе с приложениями имеет размер около 3,5 килобайт.[2][3]

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

Примеры

Пример программы, 1988 год:[4][5]

main(argc, argv)
int argc;
char **argv;
{
  while (*argv != argv[1] && (*argv = argv[1]) && (argc = 0) || (*++argv
    && (**argv && ((++argc)[*argv] && (**argv <= argc[*argv] ||
    (**argv += argc[*argv] -= **argv = argc[*argv] - **argv)) &&
    --argv || putchar(**argv) && ++*argv--) || putchar(10))));
}

См. также

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Compu-lang-stub