リストと配列
- 初心者本を何冊と繰り返してきたので、この辺りはなんとかこなせた。
マジックインクリメントで文字列の生成・・・に失敗
- ただし、勝手に課題を見つけて寄り道しまくりで時間を取られるというパターン
- 今回はマジックインクリメント
- これで、ランダムな文字列を生成しようと試みるも失敗
use strict;
use warnings;
use 5.010;
say "a9".."b6";
say "a".."9";
say "0".."z";
my @array = ("A" , "Z");
print ++$_ ," " for (@array);
my @words = ( ("a".."z") ,(0..9) );
say @words;
say $words[0]..$words[-1]
Error : Argument "a" isn't numeric in range (or flop) at ~
# だめだった
- もちろん、マジックインクリメント使わず、力技で出来なくはない。
use strict;
use warnings;
use 5.010;
my @words = ( ( "a" .. "z" ), ( 0 .. 9 ) );
foreach my $word0 (@words) {
foreach my $word1 (@words) {
foreach my $word2 (@words) {
foreach my $word3 (@words) {
foreach my $word4 (@words) {
say "$word1$word2$word3$word4"
}
}
}
}
- きれいなピラミッドだなぁ
- 4桁しかないのに、4桁の全パターン表示し終わるまで約1分、表示しなければ2秒
- パスワードの桁数が多い方が良いし、文字列の種類も多い方が良いよなぁ、と実感。
- パスワードクラックに使う辞書攻撃の辞書って、こうやって作られるんだろうなぁ