16進数から10進数の変換
Posted feedbacks - Common Lisp
標準関数のparse-integerには基数を指定できますので、16進表記から変換することが可能です。
また、標準で#xというリーダーマクロが定義されていますので、これを用いて直接的に表記することも可能です。
また、標準で#xというリーダーマクロが定義されていますので、これを用いて直接的に表記することも可能です。
1 2 3 4 5 6 7 8 9 10 | (parse-integer "12437308CCB6" :radix 16)
;=> 20080902065334
12
(parse-integer "2C9C1227FC6520B" :radix 16)
;=> 200904012311450123
15
(list #x12437308CCB6 #x2C9C1227FC6520B)
;=> (20080902065334 200904012311450123)
|
上限について書き忘れました。 Common Lispでは整数の大きさについて制限は設けられていません。 http://www.lispworks.com/documentation/HyperSpec/Body/t_intege.htm




shojiHIDAKA #8955() Rating1/1=1.00
16進数を10進数に変換してください。
ただし、入出力は文字列とし、次の変換は最低必ずできなければいけないこととします。
2.0x2C9C1227FC6520B →200904012311450123
あわせて、扱える最大の整数も明らかにしてください。
[ reply ]