Как поменять цифры целого числа в PARI / GP? - PullRequest
0 голосов
/ 26 апреля 2019

В рамках выполняемого мною мини-проекта мне нужен способ инвертировать цифры целого числа в PARI / GP (проект в основном состоит из палиндромных чисел и цифр).

В кодовой форме я пытаюсь добиться fun(13453) предоставления 35431.

Например, я попытался сделать следующее:

  • Vecrev(digits(13453)) выдает [3,5,4,3,1], но я не знаю, как объединить каждый последующий элемент в этом списке.

  • Я не думаю, что для этого есть предустановленная функция, поскольку rev, reverse или digitrev не определены в PARI / GP.

Может кто-нибудь показать мне, как это можно сделать? Предпочтительно, циклы нежелательны, так как я хочу, чтобы простая функция помещалась, скажем, в оператор if или цикл for.

Ответы [ 2 ]

1 голос
/ 26 апреля 2019

Или: fromdigits(Vecrev(digits(13453)))

1 голос
/ 26 апреля 2019

Вы можете использовать Polrev вместо Vecrev.После этого просто сделайте subst.Ваш пример будет следующим:

> subst(Polrev(digits(13453), 'x), 'x, 10)
35431
...