今日は雨で濡れてしまったし、体調不良ダメだ。
# 1# 10進->8進変換
$out = sprintf("%o", $in);
# 8進->10進変換
$out = oct($in);
# 10進->16進変換
$out = sprintf("%x", $in);
こんなのがあるらしい。
6-4の解答編。
[minako1@minako ~/hyuki_nyumon]# perl kaitou_6_4.pl
000102030405060708090a0b0c0d0e0f
101112131415161718191a1b1c1d1e1f
202122232425262728292a2b2c2d2e2f
303132333435363738393a3b3c3d3e3f
404142434445464748494a4b4c4d4e4f
505152535455565758595a5b5c5d5e5f
606162636465666768696a6b6c6d6e6f
707172737475767778797a7b7c7d7e7f
808182838485868788898a8b8c8d8e8f
909192939495969798999a9b9c9d9e9f
a0a1a2a3a4a5a6a7a8a9aaabacadaeaf
b0b1b2b3b4b5b6b7b8b9babbbcbdbebf
c0c1c2c3c4c5c6c7c8c9cacbcccdcecf
d0d1d2d3d4d5d6d7d8d9dadbdcdddedf
e0e1e2e3e4e5e6e7e8e9eaebecedeeef
f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
use strict;
use warnings;
foreach my $value (0..255) {
printf("%02x", $value);
print "\n" if ($value % 16 == 15);
}
~
~
~
~
~
~
use strict;
use warnings;
foreach my $value (0..255) {
my $out = sprintf("%02x", $value);
print "$out";
print "\n" if ($value % 16 == 15);
}
~
~
ネットでみつけた説明。
printf([ファイルハンドル] 書式指定文字列, リスト);
戻り値 = sprintf(書式指定文字列, リスト);
「printf」関数は指定のファイルハンドルに対して整形した結果の文字列を出力します。ファイルハンドルを省略した場合は標準出力であるSTDOUTに対して出力しますので結果的に画面に出力されます。「sprintf」関数は整形した結果を文字列として返します。
どちらの関数もリストに指定した値を、書式指定文字列に指定した方法で整形します。結果を画面に出力するなら「printf」関数を使い、いったん変数に保存したいのであれば「sprintf」関数を使って下さい。
配列の配列にはこうやって入って行くこともできるんだ?
use strict;
use warnings;
my @hex = ('0'..'9', 'A'..'F');
foreach my $left (@hex) {
foreach my $right (@hex) {
print $left, $right, ' ';
}
print "\n";
}
~
~
~
~
~
~
[minako1@minako ~/hyuki_nyumon]# perl kaitou_6_4.pl
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
[minako1@minako ~/hyuki_nyumon]#