wizzard: (Default)
[personal profile] wizzard

родилась тут у меня мысль, что есть задачи с более-менее определенным ТЗ,
с которыми можно как-то так извернуться….
в общем, объявляется конкурс по написанию программ,
которые пишут другие программы.




Задание 0:

программа, которая ничего не принимает на вход,
и выводит “Hello, World”.

Задание 1:

программа, которая принимает на вход строку и выводит ее.
если введенная строка пуста – выводит “Hello, World”.

Задание 2:

программа, которая принимает на вход строку – имя математической операции,
а также 1 или 2 числа, в зависимости от того, сколько аргументов у операции.
Выводит результат операции.
Пример:

natural logarithm
5
1,6094379
addition
5
6
11
factorial
4
24
negate
6
-6

Можно, но не обязательно, сделать в генераторе выбор
набора поддерживаемых операций.

Задание 3:

программа, которая принимает на вход имя файла и имя хэш-алгоритма,
открывает файл (для простоты предположим, что он находится в текущей директории),
считывает его, считает хэш содержимого файла
и выводит его в шестнадцатеричном виде на экран.
Если хэш не поддерживается, выводит “Unknown hash algorithm”
Нужно реализовать хотя бы один из: CRC32, MD5, SHA1, SHA256
В идеале, генератор должен принимать на вход указание, считалку каких
именно хэш-алгоритмов реализовывать.

Условия:
  1. Программа-генератор и программа-результат могут использовать Google, Wikipedia,
    Koders.com и прочие онлайн-сервисы
  2. Задание программе-генератору подается в текстовом виде, так, как оно приведено
    выше. Программа-генератор может реализовывать одно или сразу несколько заданий.
    Если в задании есть несколько вариантов (например, задание 2 и 3), то можно генерировать
    ”какой получится” или дописывать в понятном человеку варианте, какой именно вариант.
  3. Программа не должна ни в каком виде включать в себя код специфических частей программ,
    которые создаются с ее помощью, но может включать в себя библиотеку подпрограмм
    общего назначения
  4. Программа может использовать базы данных любого вида и библиотеки исходного кода,
    созданные автором программы, при соблюдении 2 условий:
    • Эти файлы можно найти с использованием поисковых систем, или скачать со страниц,
      которые можно найти с использованием поисковых систем.
      Быстро индексируются Google Base, Google Pages, Blogger, ЖЖ и еще ряд сервисов,
      эти – первые, которые вспомнил.
    • Данные хранятся в открытом, незашифрованном виде, понятном не только автору,
      но и человеку
  5. Программа должна генерировать исходный код и бинарный файл (в случае, если
    код генерируется на компилируемом языке). Если требуется специфический компилятор,
    нужно укомплектовать программу инструкциями по скачиванию и установке.
  6. Для первой версии конкурса программа-результат должна работать из командной строки,
    работать с stdin/stdout и файлами.
  7. Программа-генератор может работать как из командной строки, так и иметь GUI.
    Построение веб-сервисов не рекомендуется из соображений сложностей копирования,
    развертывания, установки и изучения таких вещей
  8. Цель конкурса – создать мега-генератор ;)
    Поэтому программы на конкурс выдвигаются с исходным кодом. Можно объединяться,
    можно создавать работы на основе работ других участников.
    Это условие необязательное. Если хочется сохранить ноу-хау, то можно не публиковать
    исходный код (но предоставлять его нужно, иначе будет невозможно проверить,
    удовлетворяет ли программа пункту 2)
  9. Генераторы можно постить в комментах или присылать на e-mail wizzard0@gmail.com
    с пометкой в теме письма “Конкурс генераторов”
  10. Язык программирования – произвольный. Рекомендуется прикладывать также инструкции
    по тестированию и компиляции для других участников.

Если вам понравился конкурс – напишите о нём в своем журнале и поделитесь с друзьями :)
Принимаются поправки к условиям, ну и другие задания, естественно :)


вышеизложенные причины

Date: 2009-02-11 05:09 pm (UTC)
From: [identity profile] d0tcom.livejournal.com
"Правда, потом трудно устроиться на работу"

Profile

wizzard: (Default)
wizzard

January 2019

S M T W T F S
  12 345
6789101112
1314 1516171819
202122 23242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 10th, 2025 01:24 am
Powered by Dreamwidth Studios