十六进制计数器


10

带计数器的十六进制转换表的图像

十六进制是从0到的基数16计数系统f。您的工作是制作一个可以显示这些数字的计数器。

例:

$ python counter.py
1 2 3 4 5 6 7 8 9 a b c d e f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30

规则:

  • 数字可以用空格,制表符或换行符分隔。
  • 您必须转到的最小数量为30(十进制为48)。
    • 您也可以使程序永远打印编号,直到停止为止。
  • 字母可以大写或小写(Aa)。
  • 不允许使用内置函数(直接影响十六进制转换/计数)。
  • 允许前导零
  • 它可能从10
  • 最短的代码胜出!

@ Sp3000它们是如何内置的?将小数转换为十六进制?
阶段

@ Sp3000不允许内置函数!
阶段

4
那么一般的基本转换函数呢?
Sp3000

1
@ Sp3000确定(忽略此字符,最多15个字符)
阶段

1
@毛里斯是的!那肯定会很有趣……
阶段

Answers:


5

Pyth-12个字节

使用笛卡尔积,并在末尾进行排序以获得正确的顺序,然后按空格连接。打印00-ff包含在内。

jdS^s+<G6UT2

在这里在线尝试

jd             Join by spaces
 S             Sort lexiographically
  ^    2       Cartesian product repeat twice
   s+          Append then concatenate entire list
    <G6        First six of alphabet
    UT         Range 0-9


6

CJam,21个 14字节

A,_6,'Af++m*S*

打印数字00到9F。

CJam解释器中在线尝试。

怎么运行的

A,             e# Push [0 ... 9].
  _            e# Push a copy.
   6,          e# Push [0 ... 5].
     'Af+      e# Add 'A' to each. This pushes "ABCDEF".
         +     e# Concatenate. This pushes [0 ... 9 'A' ... 'F'].
          m*   e# Cartesian product. This pushes [[0 0] ... [9 'F'].
            S* e# Join, separating by spaces.

5

Python 2,52

a=0
for b in'0123456789ABCDEF'*4:print`a`+b;a+=b>'E'

打印003F。利用第一位数字a始终是此范围内的数字这一事实。循环遍历第二个数字的四个周期ba每当第二个数字为时递增F

这比更直接的字符短一个字符

for a in'0123':
 for b in'0123456789ABCDEF':print a+b

n ='0123'应该保存一些字符
Caridorc

@Caridorc到底是什么?
xnor

通过写作thing in n + restofstring
Caridorc

@Caricord不确定您的意思,这需要更长的时间n='0123' for a in n: for b in n+'456789ABCDEF':print a+b
xnor

2
@Caridorc我使用的一个金属快捷方式是保存到变量中需要花费4个字符,因此需要> 4个字符的保存来进行补偿,因此仅将4个字符用于0123其他用途是不够的。
xnor

5

JavaScript(ES6),57个字节

与我猜想的方法相同。

for(i of c='0123456789ABCDEF')for(j of c)console.log(i+j)

4

TI-Basic,63个字节

:For(I,0,4,16⁻¹
:Disp sub(" 0123456789ABCDEF",1+16fPart(I),2
:Output(7,1,int(I
:End

根据我的计算器TI-84 +的内存管理屏幕,这是63个字节。确保以部分填充的主屏幕启动程序!


您还记得从代码长度中减去9字节标头的长度和程序名称吗?
lirtosiast

4

Befunge-93,57个字节

<_v#-*44:+1,*84,g2:\,g2:\
^ >$1+:9-!#@_0
0123456789ABCDEF

打印从00到的数字8F。如果您希望程序永久运行,则下面的版本是不终止的,并将连续输出从00到的所有数字FF

<_v#-*44:+1,*84,g2:\,g2:\
^ >$1+:35*`!*0
0123456789ABCDEF

您可以使用<_v#-f:+1,',g2:\,g2:\在-98中保存几个字节。除此之外,看不到许多改进。
雅各布(Jacob)

0123456789ABCDEF01g::88+/2-0g,88+%0g,9,1+01p
林恩

那是44个字节。它像您的第二个解决方案一样永远循环,并在第二个1F之后打印错误的结果。它需要一个实现(例如参考实现bef.c),该实现以静默方式忽略未知命令(ABCDEF)。
林恩

(OP提到解决方案可以在击中某个位置“中断”是可以的30-该解决方案将慢慢使堆栈溢出,因此我认为存在终止点。此外,输出用制表符分隔; OP表示这很好。 )哦,您使用的Befunge实现还应该用空格(ASCII 0x20)初始化整个80x25圆环。
林恩

@Mauris关于您需要用空格实例化整个圆环的实现的评论,这会影响我所呈现代码的字节数吗?我只计算必要的字符,而不用空格填充角落。
2015年

2

C,78 75字节

x(y){return y+48+y/10*7;}f(j){for(j=0;printf("%c%c ",x(j/16),x(15&j++)););}

我们定义了一个f()不带任何用于打印的参数的函数,以及一个辅助函数x(int)。这在中断FF

令人惊讶的是,这比显而易见的字节短了一个字节:

char*s="0123456789ABCDEF";h(j){for(j=0;printf("%c%c ",s[j/16],s[15&j++]););}

警告:不建议在调试环境之外运行此代码...

测试:

int main(int argc, char** argv) {
    f();
    return 0;
}

输出:

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 (...)

当然,此34字节函数是更健壮的(和作弊的)方法:

g(i){for(i=0;printf("%x ",i++););}

1
开始尝试这种方法,但是我的答案太相似了。通过将第一个%c放入%d并省略该函数,可以节省几个字节。但是,它仅在9F以下才有效。
Alchymist 2015年

return y+可能是y+=
乔纳森·弗雷希

2

Pyth,17个字节

VJs++kUT<G6FYJ+NY

在这里尝试

怎么运行的:

         <G6         # "abcdef"
       UT            # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
      k              # an empty string (so + means concatenation, not addition)
   s++               # join them all ("0123456789abcdef")
  J                  # call this J
 V                   # for each N in J...
            FYJ      # for each Y in J...
               +NY   # print N and Y

jb^+jkUT<G6 2使用笛卡尔积做同样的事情,似乎仍然可以打高尔夫球...
FryAmTheEggman

2

JavaScript的ES6,67个 62字节

(x=''.replace.bind('0123456789ABCDEF',/./g))(n=>x(o=>' '+n+o))

2

J,22个字节

>{;~'0123456789abcdef'

算作ff。在每个0x10数字块之间打印额外的换行符,如下所示:

...
0d
0e
0f

10
11
...

2

腮腺炎-65字节

S Q="0123456789ABCDEF" F I=1:1:16 F J=1:1:16 W $E(Q,I),$E(Q,J),!

不,腮腺炎还没有死!:-)


2

CJam,22个字节

1{_GbA,6,'af++f=oNo)}h

这是永久的,因此可能是包含永久链接的好主意的罕见情况之一。


oNonTIO中的相同。
Esolanging Fruit

2

C64Mini和Commodore BASIC(C64 / 128,PET,VIC-20,C16 / + 4)-使用了164个BASIC和标记化字节

 0 fOd=.to255:n=d:fOi=1to.stE-1:h%(i)=n/(16^i):n=n-(h%(i)*(16^i)):nEi:h$=""
 1 fOi=1to.stE-1:ifh%(i)<10tHh$=h$+cH(48+h%(i))
 2 ifh%(i)>9tHh$=h$+cH(55+h%(i))
 3 nEi:?h$"  ";:nEd

在十六进制数字后打印一个双倍空格,以使打印在VIC-20的40/80列和22列上对齐。

Commodore Plus / 4十六进制计数器


2

脑干,2902字节

容易滑倒,但值得一试

+>+[<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>[-]++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++<<<[-]++++++++++++++++++++++++++++++++++++++++++++++++>[-]<[>+<<+>-]<[>+<-]<]>+<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>.>.>>>++++++++++++++++++++++++++++++++.[-]<<[-]<<[>>+<<<+>-]<[>+<-]>>>>>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++<<[<<<<+>>>>-]+>>[<<<<<<-<+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>[>>>>-<<<<[-]]>>>>>>[-]++<<[<<<<<+>+>>>>-]<<<<<[>>>>>+<<<<<-]>[<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>[-]]>>>>>>[-]<<<<<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>[-]<[>+<<<+>>-]<<[>>+<<-]>>>>>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++<<[<<<<+>>>>-]+>>[<<<<<<-<+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>[>>>>-<<<<[-]]>>>>>>[-]+++<<[<<<<<+>+>>>>-]<<<<<[>>>>>+<<<<<-]>[<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>[-]]>>>>>>[-]<<<<<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>[-]<<[>>+<<<+>-]<[>+<-]>>>[<<<<+>>>>-]+>[<<<<<-<+>>>>>>-]<<<<<<[>>>>>>+<<<<<<-]>[>>>>-<<<<[-]]>>>>>>+++++<<[<<<<<+>+>>>>-]<<<<<[>>>>>+<<<<<-]>[<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>[-]]>>>>>>[-]<<<<<<]>++++++<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>[-]<[>+<<<+>>-]<<[>>+<<-]>>>[<<<<+>>>>-]+>[<<<<<-<+>>>>>>-]<<<<<<[>>>>>>+<<<<<<-]>[>>>>-<<<<[-]]>>>>>>++++<<[<<<<<+>+>>>>-]<<<<<[>>>>>+<<<<<-]>[<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>[-]]>>>>>>[-]<<<<<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>+>>>+<<<<<<<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>>>>>>>[-]<<<<<<]>++<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>-----<<<[-]>>>[<<<+<+>>>>-]<<<<[>>>>+<<<<-]>>>>+++++>+<<<<<<<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>>>>>>>[-]<<<<<<]>+++<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>>-----<<[-]>>[<<+<<+>>>>-]<<<<[>>>>+<<<<-]>>>>+++++>+<<<<<<<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>>>>>>>[-]<<<<<<]>++++<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>+>[-]++++++++++++++++++++++++++++++++++++++++++++++++>>>+<<<<<<<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>>>>>>>[-]<<<<<<]>+++++<<+<<[>>->+<<<-]>>>[<<<+>>>-]<[->+<<[>>>-<<+<-]>[<+>-]>>[<->[-]]<[<<<+>>>-]<]>>[-]<<<<[>>+>+<<<-]>>[<<+>>-]>[[-]>>>>[-]<[>+<<<+>>-]<<[>>+<<-]>>>[<<<<+>>>>-]+>[<<<<<-<+>>>>>>-]<<<<<<[>>>>>>+<<<<<<-]>[>>>>-<<<<[-]]>>>>>>++++++<<<<<<+>>>>[<<<<[-]<+>>>>>-]<<<<<[>>>>>+<<<<<-]>[<<<[-]>[-]>>>>>>>>[<<<<<<<<+>+>>>>>>>-]<<<<<<<[>>>>>>>+<<<<<<<-]>[-]]>>>>>>[-]<<<<<<]<<<[>>+>+<<<-]>>[<<+>>-]>[[-]<<<[-]>[-]>>]<<]

在线尝试!


如果您只是生成字符0-F然后对打印进行硬编码,则时间会更短。您如何设法做到这么长?
乔·金

@JoKing可能,但我只是想找点乐子
Krzysztof Szewczyk

那句话是不是承认这个答案不是挑战获胜标准的认真竞争者?
pppery

1

Python 2,66 55字节

对我来说,这确实应该是最明显的方法。

a='0123456789ABCDEF'
for x in a:
 for y in a:print x+y

旧(66字节):从技术上讲,这会导致错误FF,但确实会达到30

n=1;a='0123456789ABCDEF'
while 1:print a[n/16]*(n>15)+a[n%16];n+=1

我假设不允许使用字符串格式,因为我很确定它将通过基本转换,但是如果允许,则为29个字节:

n=1
while 1:print"%x"%n;n+=1

1

Java,104个字节

char t[]="0123456789abcdef".toCharArray(),i;void f(){for(;i<99;)System.out.println(""+t[i/16]+t[i++%16]);}

如果将i<99删除,它仍然会达到30,但最终会崩溃。我不确定这是否可以接受。


1

J,47个字节

'0123456789abcdef'{~([:|:2 256$(]#i.),256$i.)16

打印00至ff


1
更短的方法:>{;~'0123456789abcdef'
Lynn

哇,太好了!但是,为什么不将其发布为答案,它只有22个字节!
gar 2015年

1

的JavaScript 74 72 65岁 60

//for(i=0,a="0123456789ABCDEF";i++<49;)console.log(a[i>>4]+a[i%16])
for(i=0;i++<48;)console.log((i>>4)+"0123456789ABCDEF"[i%16])


1

Perl 6,34个字节

我能想到的最短的是不使用任何形式的转换:

put [X~] (|(0..9),|('A'..'F'))xx 2 # 34 bytes

打印00... FF按顺序分隔的空格。
如果您想要更多,可以交换2更大的数字。
(不要使用大于4的数字,因为它会在输出任何内容之前将值连接在一起,因此会使用大量RAM)


最短,永远不会停止写入十六进制值

put [R~] (|(0..9),|('A'..'F'))[.polymod: 16 xx*]for 0..* # 56 bytes

如果printf被允许

printf "%X ",$_ for 0..* # 24 bytes

是否允许基本转换功能

put .base(16)for 0..* # 21 bytes

1

C ++ 14-135

#include<string>
#include<iostream>
void f(){std::string a="0123",b="0123456789ABCDEF";for(char c:a)for(char d:b)std::cout<<c<<d<<" ";}

不,没关系。您正在使用什么编译器?我'string' is not a member of 'std'和我在一起。
丹尼斯

@丹尼斯这是一个好点。我总是忘记了它需要包含字符串本身。固定。
Yytsi'1

1.我也遇到同样的错误cout。我想你也需要iostream。2.打印数字时不分开。挑战需要空格,制表符或换行符。3.您应该提到所需的C ++版本。
丹尼斯

1

jQuery 1.5:65个 59个字符

(56个字符的代码+ 3个字符的命令行选项。)

[range(10)]+"a b c d e f"/" "|{a:.[],b:.}|"\(.a)\(.b[])"

样品运行:

bash-4.3$ jq -n -r '[range(10)]+"a b c d e f"/" "|{a:.[],b:.}|"\(.a)\(.b[])"' | head
00
01
02
03
04
05
06
07
08
09

在线测试-r不支持通过URL 传递-自己检查Raw Output。)

jQuery 1.5:56个字符

(53个字符的代码+ 3个字符的命令行选项。)

[[range(10)]+"a b c d e f"/" "|"\(.[])\(.[])"]|sort[]

这会产生正确的输出,但是并不完全是一个计数器:它不会按顺序生成值,而是仅对它们进行排序。

在线测试-r不支持通过URL 传递-自己检查Raw Output。)


您的jq链接无效,当我修复它时,它说github上没有索引文件:P
阶段

哎呀 谢谢@Phase。我太专注于角色计数。
manatwork

1

Dyalog APL,12个字节

       ∘.,⍨16↑⎕D,⎕A
 00  01  02  03  04  05  06  07  08  09  0A  0B  0C  0D  0E  0F 
 10  11  12  13  14  15  16  17  18  19  1A  1B  1C  1D  1E  1F 
 20  21  22  23  24  25  26  27  28  29  2A  2B  2C  2D  2E  2F 
 30  31  32  33  34  35  36  37  38  39  3A  3B  3C  3D  3E  3F 
 40  41  42  43  44  45  46  47  48  49  4A  4B  4C  4D  4E  4F 
 50  51  52  53  54  55  56  57  58  59  5A  5B  5C  5D  5E  5F 
 60  61  62  63  64  65  66  67  68  69  6A  6B  6C  6D  6E  6F 
 70  71  72  73  74  75  76  77  78  79  7A  7B  7C  7D  7E  7F 
 80  81  82  83  84  85  86  87  88  89  8A  8B  8C  8D  8E  8F 
 90  91  92  93  94  95  96  97  98  99  9A  9B  9C  9D  9E  9F 
 A0  A1  A2  A3  A4  A5  A6  A7  A8  A9  AA  AB  AC  AD  AE  AF 
 B0  B1  B2  B3  B4  B5  B6  B7  B8  B9  BA  BB  BC  BD  BE  BF 
 C0  C1  C2  C3  C4  C5  C6  C7  C8  C9  CA  CB  CC  CD  CE  CF 
 D0  D1  D2  D3  D4  D5  D6  D7  D8  D9  DA  DB  DC  DD  DE  DF 
 E0  E1  E2  E3  E4  E5  E6  E7  E8  E9  EA  EB  EC  ED  EE  EF 
 F0  F1  F2  F3  F4  F5  F6  F7  F8  F9  FA  FB  FC  FD  FE  FF 

APL一次匹配Pyth。
2015年

1

马尔博格,900个字节

有待改进...

D'``@"\7}|X9E1gwuR21=p(:9%IZYEg}eA/ya>O_)([Zvotm3qponmfN+Lbg`ed]\"CB^W\Uy<;WVONSLp3ONMLEDhH*)?>b%A@?87[;:9876/S3,P0/.-&J$)"'~D|{"y?}|utyr8potmrqpi/mfN+Lbg`e^$bDZ_^]VzZSXQVUTSLp3ONMLEDhH*)EDCB;@?8\6|:32V6v.32+O)o'&J*)i'&%|Bcb~w|u;yxwvutVrkj0nmfN+iKg`_%cE[`Y}@V[ZYXWPtT6LKJImM/KJIBAe(D=<A:98\[;{32V6v.-,P0).',%I)"!E%|#"y?w_{ts9Zvutsrkpi/mfNjihg`e^$b[Z~X]\[ZYRv98TSLKoO10FKDh+GFE>CB;_?>=}|49870/.R2+*Non&%I#"!&%${A!~}_u;yxqpo5mrqpoh.lkdibgf_%]\[!_XW{[ZYXQPt7SRQPOHGkKJIHAF?cC<;@?8\6;492V6v.-,P*p.'K+$j"'~D|#"y~wv<]yxqvutsrk1onmfN+cba`&d]#DZ_^]VzTSXQVOs65QJINGkE-IBAe(D=<A:98\654981Uv.32+*)M-,%k#(!E}$#"!x>v{t:xwputm3kpoh.fN+Lbg`ed]\"!Y^]VzZYXQVOsS54JImMFKJIHAe?>C<`@?87[;{32V05.-2+O)o-,+$H('&}Cdzy~wv<]sxqvonm3k1oQmf,jihgfeG]#a`_X|V[TxXQPUTMLp3ONMLEDhH*)ED=a;@?>76;4X816/43,P*).',%I#i!&}|Bcb~w|u;yxwputm3qSong-kjihgfH%]\a`_XW{UTYXQuUTMRKPOHlFKDhBAe?>=B;_9>=6Z:981Uv.32+*)M-,%k#(!E%$#c!x>|u;yxZpo5srqSi/z

在线尝试!


1

Zsh,44个 29字节

-15,通过GammaFunction   在线尝试!

h=({0..9} {a..f});echo $^h$^h

原始文件(44个字节): g=0123456789abcdef;h=(${(s::)g});echo $^h$^h


1
您可以从此处开始:,而不是转换为数组h=({0..9} {a..f})29个字节
GammaFunction

谢谢!zsh非常容易打高尔夫球:)
roblogic


1

8088组件,IBM PC DOS,34字节

字节数xxd

00000000: 43e8 0900 e806 00b0 20cd 10eb f3b1 04d2  C....... .......
00000010: c38a c324 0f3c 0a7c 0204 0704 30b4 0ecd  ...$.<.|....0...
00000020: 10c3

未组装:

        BYTE_LOOP: 
43          INC  BX             ; increment counter  
E8 0009     CALL HB             ; display high byte 
E8 0006     CALL HB             ; display low byte 
B0 20       MOV  AL, ' '        ; display space delimiter
CD 10       INT  10H            ; call BIOS, write char to console 
EB F3       JMP  BYTE_LOOP      ; keep looping forever
        HB PROC 
B1 04       MOV  CL, 4          ; set up bitshift for 4 bits 
D2 C3       ROL  BL, CL         ; shift counter left 4 bits 
8A C3       MOV  AL, BL         ; put counter into AL 
24 0F       AND  AL, 0FH        ; isolate nibble 
3C 0A       CMP  AL, 0AH        ; is nibble A-F? 
7C 02       JL   NOT_ALPHA      ; if not, skip adjustment 
04 07       ADD  AL, 'A'-'9'-1  ; adjust ASCII value to A-F 
        NOT_ALPHA: 
04 30       ADD  AL, '0'        ; decimal to binary convert
B4 0E       MOV  AH, 0EH        ; BIOS tty function
CD 10       INT  10H            ; call BIOS, write char to console 
C3          RET                 ; return to program
        HB ENDP

可以使用独立PC DOS,输出到控制台,并且将一直显示直到程序停止。这里只是一个临时的ASCII操作程序。x86或DOS / BIOS API中没有内置或便捷方法来将二进制值转换为字符串以进行输出。

输出:

在此处输入图片说明


1

MUMPS,57个字节

f i=1:1:48 w $tr(i\16,0),$e("0123456789abcdef",i#16+1),!

输出量

>d ^xmsdgolf
1
2
3
4
5
6
7
8
9
a
b
c
d
e
f
10
11
..
28
29
2a
2b
2c
2d
2e
2f
30

说明

f i=1:1:48                     ; loop from 1 to 48
w $tr(i\16,0)                  ; print i div 16, and ditch any zeros
$e("0123456789abcdef",i#16+1)  ; extract the nth character from the string, where n is i mod 16 + 1
!                              ; crlf

0

Haskell,52个字节

a="0123456789abcdef";main=mapM putStrLn$mapM id[a,a]

0

Python 2-57个字节

h='0123456789ABCDEF'
' '.join([i+j for i in h for j in h])

输出00到FF,之间有空格。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.