задача
Создайте программу, которая вычисляет факториал числа, не используя встроенные функции факториала. Легко? Уловка в том, что вы должны написать всю свою программу (включая ее тестирование) в форме хайку .
Вы можете использовать столько хайкусов, сколько вам нужно, но когда они произносятся, они должны соответствовать формату слогов 5-7-5.
счет
Это конкурс популярности , поэтому вы должны получить наибольшее количество голосов, чтобы выиграть. Ваша программа должна состоять как минимум из одного полного хайку, и все хайку должны быть завершены.
При чтении кода первая строка каждого хайку будет иметь 5 слогов, вторая - 7, а третья - 5.
popularity-contest
Доктор
источник
источник
then
или пунктуация может помочь в сокращении. Для Киго , не так уверен ...Ответы:
Болтовня
(оценивать в рабочей области; открывает диалоговое окно, запрашивает номер и выводит результат на стандартный вывод):
Я попытался внести некоторые отражения («в этом стихотворении») и киго. Кроме того, некоторые элементы рифмы в западном стиле включены (пожалуйста-> они, время-> рифма); однако, не будучи ни носителем ни японского, ни английского, простите любые стилистические детали ;-)
источник
Haskell
Время обучения на Хаскеле:
range x
Функция создает список целых чисел от 1 до величиныx
.fact x
функции умножает все значения в спискеrange x
вместе , чтобы вычислить результат.fact
функция принимает целое число и возвращает целое число.источник
range x is 1 to x
это 6 слогов, хотяЯва - 2 хайкуса
Даже когда вопрос не в код-гольфе , я часто ловлю себя на том, что играю в гольф. В этом случае я поиграл в число хайкусов.
Я произношу это так:
Тестовая программа:
Обратите внимание, что эта программа начинает
0
быстро выводить s; это результат переполнения. Вы можете легко получить правильные цифры большего размера, изменив каждыйint
наlong
.Стандартные произношения для
System.out.println
иpublic static void main(String[] args)
отражены в программе.источник
APL
источник
factorial←×/⍳
«до ввода».Шекспир
(Воображаемый) контрольный пример:
Несмотря на свою длину, эта программа просто принимает одно целое число в качестве входных данных и предоставляет одно целое число в качестве выходных данных. Так:
(«Шесть, семь двадцать. / Семь, пять тысяч сорок. / Ноль, один. Один, один.»)
источник
Python 2, 4 Haikus
Полная программа Python 2
haifac.py
. Беги какpython haifac.py <n>
Произношение:
источник
#to me at once
счетчика для работы ...GolfScript, 2 Haikus
Читайте как хайку, перечисляя каждое нажатие клавиши:
С тестовым набором (5 гайкусов):
Читайте как хайку:
источник
вперед
Fugu - это функция, и моя попытка kigo : blowfish - это зимняя ссылка. Я намерен
?do
быть kireji , поворотный момент, перед отсчитанным циклом.источник
PHP, 4 хайкуса
Все в рифму хайкус!
источник
return plus plus stun
.Пробелы
Это делает использование одной из наиболее известного хайку s, и много было написано о нем.
Понятия не имею, почему никто не делал этого раньше, это даже не требует никаких усилий!
Прежде всего, прежде чем читать стихотворение, я хочу, чтобы вы откинулись назад, расслабились и наслаждались спокойствием, созданным великой пустотой, окружающей стихотворение. Он подчеркивает пруд, окруженный обширным ландшафтом.
исходный код в filebin
Если вы не говорите по-японски, это произносится следующим образом:
Естественно, это считается по морали. Kireji являетсяや( я ) , то Кое (сезонным рекомендуемым)蛙( Kawazu , лягушка, -> весны) .
Используя интерпретатор Linux с официальной страницы, вы можете использовать его следующим образом:
источник
Mathematica
Педанты могут читать последнюю строку как «f of 1 is 1», но я не мог удержаться от крика Башо.
Тестирование:
Возвращение:
Бонус лингвистической отличительности Haiku (вдохновленный @cormullion)
источник
партия
Произношение ; игнорирует математические выражения, а также эти символы
@ / % ^ , ( )
:Запись; это вычисляет факториал, но не выводит его - переменная
t
содержит факториал.Следующий Haiku / код может быть добавлен к тому же пакетному файлу для вывода факториала (
|
они произносится как труба):источник
Clojure
источник
F #
источник
newLISP
Скобки не произносится:
источник
Perl
Бросьте это в файл с именем
f.pl
И вывод:
Который читается как:
источник
LiveScript
Это средневековое
Принты
3628800
, которые есть10!
. Это немного обходно: функцияstory
возвращает функциюones-misery
, которая всегда возвращает ответ. Так художественнее.Нет комментариев наполнителя или лишних строк!
Бонусная история отладки:
источник
Haskell
Этот будет рифмованным хайку!
Да уж!
Примечание: Pred означает предыдущий номер. Также в haskell вы можете иметь несколько определений функции, и используется первое, которое имеет смысл.
источник
Руби - Один Хайку
Прочитайте (игнорируя пунктуацию, но включив один смайлик) примерно так:
источник
В SML:
читать как:
источник
Perl
Я знаю, что использование готовых функций противоречит правилам, но вот что я получаю.
Представьте, что ваша задача - научить грызуна негабаритного размера:
Я могу только догадываться, что означает последнее слово и как оно произносится, но уверяю вас, это один слог. Видимо, он не понимает, что вы хотите от него, поэтому вы должны уточнить (ослабление стандартов качества по мере того, как вы теряете терпение):
до сих пор безрезультатно. Тогда вы должны объяснить это простым английским языком:
Что произошло дальше, я не знаю, но код действителен:
а также
а также
источник
питон
То, как я это читаю:
`
источник
С
Произношение:
фунт включает стандартную
точку ввода / вывода h фунт включает
стандартную точку lib h
int main int arg c
запятая char звезда звезда arg v
открытая скобка комментарий
итеративно
вычислять факториал здесь
long int n равен
ноль запятая я
равен ноль запятая г
равен один комментарий
произведение начинается с одной
точки с запятой, если arg c
больше единицы
открывающая скобка n - это
строковый аргумент arg v sub
одна запятая NULL запятая десять
точка с запятой, если
n меньше нуля, начать
printf аргумент должен
быть больше или
равно нулю обратная косая черта
n точка с запятой
выход отрицательный
один конец точку с запятой скобка
закрывающая фигурные скобки я равен
n точка с запятой, в
то время как я открываю скобку г
равен г раз я
точка с запятой и
декремент точка с запятой
закрыть скобку комментарий печать
результат printf
процент d факториал
равен проценту d
удар запятая
запятая
комментарий запятой завершено скобка
источник
#
обычно произносится острым или восьмигранным в C-коде.C # - 3 хайкуса
Я удалил обычный C #, используя пространство имен и беспорядок определения классов, что будет четвертым хайку.
который я читаю как
источник
Haskell
обратите внимание, что модуль .. где автоматически добавляется в любой код на Haskell без него при компиляции, поэтому не писать его - это практически обман.
источник
do
и это не должно было бытьMonad a => a
.ЯВА:
В ответ на вопрос и на Dwaiku (Double-Haiku или как вы хотите это называть), опубликованный Quincunx на Java, вот правильное Haiku:
источник
Javascript - Два Хайкуса
Я не носитель языка. Итак, я использовал словарь для подсчета слогов. Надеюсь, это достаточно хорошо. Любые отзывы приветствуются :)
источник
Powershell, 2 Haikus
источник
Разрешено ли использовать наполнитель?
Python 2 haikus:
источник
nuum equals length one
?num equals length of the list
делает 7 слогов вместо 5.nuum
наfoo
(потому что я читаю if как nu-um, что ставит вас за предел.)Befunge-93
Три хайкуса:
Последняя строка по общему признанию обманчива.
Попробуйте здесь: http://www.bedroomlan.org/tools/befunge-93-playground
источник