十进制到二进制会话(固定长度)并颠倒顺序

时间:2019-05-30 11:40:34

标签: perl replace

我正在编写一个perl脚本,它将生成0和1的字符串输出。

我有2到27之间的数字。我想将它们转换为固定长度5的二进制数,然后颠倒顺序。

例如,如果我将2转换为二进制,它将是00010(固定长度为5),然后我想将其反转以使输出为01000

我正在通过perl中的for循环迭代数字。

一个或两个甜甜的内衬可以做到这一点。我可以在我的perl脚本中使用的任何bash或perl一个或两个内衬。

虽然我可以分2行进行操作,但仍在寻找bash中的任何一根衬里。

for (my $i=02; $i <= 27; $i++) {
    my $j = sprintf ("%05b\n", $i);
    my $k = reverse $j;
}

1 个答案:

答案 0 :(得分:1)

尝试一下:

say for map { scalar reverse sprintf "%05b", $_ } 2..27;

输出

01000
11000
00100
10100
01100
11100
00010
10010
01010
11010
00110
10110
01110
11110
00001
10001
01001
11001
00101
10101
01101
11101
00011
10011
01011
11011