Напишите функцию (или эквивалентную подпрограмму), которая будет принимать один целочисленный аргумент и возвращать найденное (аналогично типизированное) значение путем изменения порядка десятизначных цифр аргумента.
Например, дано 76543, возврат 34567.
Ответы:
HTML
217 символов (1 символ, если я дерзкий ...)заменить
n
на свой номеристочник
Your search -
- не соответствует ни одному документу.data:text/html,&%238238;egnahcxEkcatS olleH
питон
int(str(76543)[::-1])
РЕДАКТИРОВАТЬ:
Более короткое решение, предложенное @gnibbler:
или, если выше неясно:
источник
s[::-1]
намного быстрее чем''.join(reversed(s))
Универсальный ( независимый от языка / независимый )
Если вы хотите использовать только числа (избегайте преобразования числа в строку) и не хотите использовать какую-то определенную библиотеку (универсально для любого языка):
Это python, но это можно сделать на любом языке, потому что это всего лишь математический метод.
источник
mod
на%
, это действительно Python;)y=y*10+x%10
....a - (n * int(a/n))
вместоa mod n
. Кроме того, если вы посмотрите здесь , операция модуля реализована по-разному в каждом языке. (См. Таблицу справа.)Perl 6
или:
для динамически типизированного кода.
Числа получили строковые методы из-за языкового дизайна.
источник
J - 6 символов + переменная
Где у ваша ценность
источник
|.&.":
«реверс под до», что в значительной степени является буквальным переводом задачи.APL (3)
Использование:
источник
PHP, 9 символов
Коротко говоря, где
N
константа:источник
Befunge (3 персонажа)
Полная работоспособная программа:
Где
N
твой номер Правила гласят: «принять один целочисленный аргумент»; В Befunge вы можете вводить только целые числа от 0 до 9.источник
Независимый от языка / математика
Вдохновленный ответом Кирилла Кирова выше. Мне стало любопытно узнать о математических свойствах обращения числа, поэтому я решил немного исследовать.
Оказывается, если вы строите различие
n - rev(n)
для натуральных чиселn
в некоторой базеr
, вы получаете шаблоны, подобные этой ((n - rev(n)) / (r - 1)
дляr=10
, обернутый вr
столбцы, красный обозначает отрицательное число):Эта последовательность может быть сгенерирована как таковая (псевдокод):
Если вы храните эти значения в списке / массиве,
n - arr[n]
вы получите обратную формуn
. Теперь, чтобы «математически сыграть» в это, в идеале нам нужно выражение в закрытой форме, которое дает нам значение n: th в последовательности, чтобы мы могли иметь выражение в закрытой форме для решения всей задачи. К сожалению, я не смог найти такое выражение ... но похоже, что это возможно. :(Так что да, не столько код-гольф, сколько математическое любопытство, но если есть выражение в закрытой форме вышеуказанной последовательности, это может быть действительно полезно в правильных представлениях PL-гольфа.
источник
Haskell,
2824 персонажаисточник
f=read.reverse.show.(+0)
?(+0)
: Легит мужик! Хотя технически вам вообще не нужно.(+0)
, так какf
это будет более полиморфным, чем то, что требуется для проблемы (разрешено возвращать «аналогично типизированный» вывод). Я бы сбрил эти 5 персонажей.напор
17 символовисточник
Скала - 33 символа
источник
Рубин (14)
источник
.to_s.reverse.to_i
соответствовать спец.Можно преобразовать число в строку, затем перевернуть строку и затем преобразовать эту строку обратно в число. Эта функция доступна, вероятно, на всех языках. Если вы ищете более математический метод, это может помочь:
источник
1111111119
Python 3+
Форма функции: 28 символов
(Под) форма программы: 25 символов
Я считаю, что некоторые из других примеров Python являются мошенничеством или, по крайней мере, дешевыми из-за использования жестко закодированного ввода и / или не полностью отвечающего требованиям.
источник
Golfscript, 5 символов
Это принимает аргумент в стеке и оставляет результат в стеке. Я использую опцию «подпрограмма» в спецификации: если вы настаиваете на функции, это еще четыре символа, оставляя ее в стеке:
источник
`-1%~
скорее всего, имели в виду , чем`-1$~
(и я позволил себе сказать, что так и есть).В сценариях оболочки:
Надеюсь, это было полезно :)
источник
rev<<<yournumber
, напримерrev<<<132
(для Баш / Zsh, а не на POSIX , хотя)rev
достаточно, вопрос не сказать , что это имеет быть функцией. Вы можете сравнитьrev
со встроенной функцией, даже если она не одна.Вроде поздно, но
APL, 3
Если вы настаиваете на функции
источник
Mathematica, 14 байтов
Это не конкурирует, потому что эта функция была добавлена только в выпуске 10.3 на прошлой неделе, но для полноты я думал, что добавлю единственное когда-либо (я думаю?) Встроенное для этой задачи.
источник
Вы можете сделать следующее в Java. Обратите внимание, что это преобразует в String и обратно и не является математическим решением.
источник
Lua
Числа и строки взаимозаменяемы, так что это тривиально
источник
Этот на самом деле принимает входные данные, в отличие от некоторых остальных:
Кстати, Python
источник
Actionscript
43 персонажа. num в качестве параметра функции:
источник
Groovy
источник
Perl, 11 символов
Для этого
p
необходим флаг, включенный в счетчик.Использование:
источник
p
Флаг включен в счетеClojure (42 символа)
Пример использования:
возвращает 12389
источник
Common Lisp - 60 символов
достанет вам 9724.
источник
(first(list
?parse-integer
уже возвращает номер.К, 3 байта:
Оцените (
.
) обратное (|
) приведение к строке ($
).Пример использования:
источник
RS , 20 байт
Технически это не считается (rs был создан ранее в этом году), но я не видел никаких других основанных на регулярных выражениях ответов, и я подумал, что это аккуратно.
Живая демоверсия.
Объяснение:
Вставьте символ фунта в начале строки. Это используется в качестве маркера.
Непрерывно добавляйте последний символ основной строки в область перед маркером, пока не останется символов.
Уберите маркер.
источник
MIRC 4,45 (35 байт)
источник