Выведите следующий результат (который является результатом вычисления 6 * 9 в базах от 2 до 36). Убедитесь, что буквы в верхнем регистре, а само умножение выводится в каждой строке.
6 * 9 = 110110
6 * 9 = 2000
6 * 9 = 312
6 * 9 = 204
6 * 9 = 130
6 * 9 = 105
6 * 9 = 66
6 * 9 = 60
6 * 9 = 54
6 * 9 = 4A
6 * 9 = 46
6 * 9 = 42
6 * 9 = 3C
6 * 9 = 39
6 * 9 = 36
6 * 9 = 33
6 * 9 = 30
6 * 9 = 2G
6 * 9 = 2E
6 * 9 = 2C
6 * 9 = 2A
6 * 9 = 28
6 * 9 = 26
6 * 9 = 24
6 * 9 = 22
6 * 9 = 20
6 * 9 = 1Q
6 * 9 = 1P
6 * 9 = 1O
6 * 9 = 1N
6 * 9 = 1M
6 * 9 = 1L
6 * 9 = 1K
6 * 9 = 1J
6 * 9 = 1I
Самый короткий код выигрывает.
code-golf
kolmogorov-complexity
Конрад Боровски
источник
источник
Calculate 6*9 in different bases
Интересно, почему утверждение сформулировано так, почему,6*9
а не просто54
? Возможно, изначально предполагаемое значение было то , что6
и9
должно быть истолковано не всегда десятичным , но в разных базах? Это сделало бы утверждение более логичным, а проблему - более интересной (но тогда мы должны начать с базы с 10 по 36)6
и9
являются однозначными числами. Они означают то же самое в каждой базе, в которой эти цифры действительны.6 * 9 = 110110
не имеет большого смысла ...Ответы:
05AB1E ,
2120 байтПопробуйте онлайн!
источник
GolfScript, 39 символов
Результат можно увидеть здесь .
источник
Октава, 49
for i=2:36printf("6 * 9 = %s\n",dec2base(54,i))end
источник
Javascript,
5755 байтМожно сократить до 49 с
alert
, но я не хочу никому подчиняться этому ...источник
(54)
может быть заменен на54.
(для записи54..toString
).for(i=1;++i<37;)
также сохраняет характер.Рубин (47)
Ну, я знаю, что решение GolfScript лучше, но, по крайней мере, это не эзотерика ...
источник
2.step{|t|puts"9 * 6 = "+54.to_s(t).upcase}
сохраняет несколько байтов. Он выходит с ошибкой, но это нормально: D .Python, 89
источник
b=2
<перевод строки>while b<37:print'6 * 9 =',B(54);b+=1
(при условии, что для переноса строки * nix используется один символ)Python 2.7 (
124114)РЕДАКТИРОВАТЬ: сократить пух благодаря комментарию @ Boothby ниже
Я думаю, что у Python все в порядке, учитывая, что у него нет встроенного (насколько мне известно) базового преобразования, поэтому это должно быть сделано в коде;
источник
print'\n'.join(...for x in y)
гораздо дольше, чемfor x in y:print...
.Perl 6 , 36 байт
источник
Mathematica 40
Не в споре (используются строчные буквы):
источник
Юлия, 61
для b = 2: 36; @printf ("6 * 9 =% s \ n", прописные буквы (основание (b, 54))); конец
Довольно безболезненно, если не считать использования макроса @printf против printf.
База импорта; не нужно ...
источник
for b=2:36;println("6 * 9 = $(uppercase(base(b,54)))");end
это тоже хорошо ...Perl
Пришлось использовать модуль Math :: BaseCnv
35 символов без
use
утверждения:54 символа с
use
утверждением:Не уверен, как ты оценил бы это, так что оба включены.
Была использована структура BLOCK LIST карты. Список - это диапазон от 2 до 36, который был запрошен. Мясо находится в
cnv($NUMBER, $BASE)
функции, а карта представляет собой неявную петлю.источник
use
утверждение. Первый не работает в моем Perl.J -
7870Haskell - 137
источник
CoffeeScript 71
Ссылка на сайт
источник
С (
166151)Избавился от некоторых ненужных символов и изменил некоторые объявления. Предполагается, что вы запускаете программу без аргументов.
источник
Clojure, 75
(for[i(range 2 37)](println"6 * 9 ="(.toUpperCase(Integer/toString 54 i))))
источник
Python 3, 83 байта
источник
'\n'.join('6 * 9 = '+numpy.base_repr(54,i)for i in range(2,37))
вместо того,*['6 * 9 = '+numpy.base_repr(54,i)for i in range(2,37)],sep='\n'
чтобы сохранить байт.Дротик, 75 байт
Дарт немного многословен, когда дело доходит до stdlib, но эй ... по крайней мере, вы можете прочитать это: P
источник
Скала, 71
источник
Общий Лисп: 56 символов
источник
Мудрец, 48:
Стыд Sage печатает в нижнем регистре ... Я был бы только один над Говардом. Или, я думаю, неправильно и связан с Дэвидом Каррахером.
источник
Далее 54
источник
/// , 133 байта
Попробуйте онлайн!
источник
SpecBAS - 48 байт
SpecBAS на самом деле вполне конкурентоспособен за изменения :-)
источник
8 ,
6562 байтаЭто полная программа. Выход после исполнения
объяснение
источник