正弦波 y = sin(x) を書く
参考例
- 0.05秒に1回プロットする
- x は 0 から pi/10 ずつ増えていく
- sin(x) は -1 から 1 までの値を取るので、10倍して +10 すると 0 から 20 までの値となる。これの整数部分の個数 "*" を描く
- int( 10 * sin ( $x ) + 10 )
#!/usr/bin/perl | |
use strict; | |
use warnings; | |
use utf8; | |
# 漢数字 1..9 の一文字 (need: use utf8) | |
my $kd_re = qr/[一二三四五六七八九]/; | |
# 1..99 の漢数字表現 | |
my $kanji_numerals_re = qr{ |
#!/usr/bin/perl | |
# guess-ad-year.pl - 和暦を引数に与えると西暦年を応えてくれる | |
# ad は A.D. (Anno Domini = 西暦年) の略 | |
# | |
# 例: | |
# guess-ad-year.pl 平成30年 | |
# 2018年 | |
# guess-ad-year.pl 昭和54年 | |
# 1979年 |
#!/usr/bin/perl | |
# see: http://www.asahi-net.or.jp/~ax2s-kmtn/ref/unicode/cjku_klist.html | |
use strict; | |
use warnings; | |
use utf8; | |
binmode STDOUT, ':utf8'; | |
# ほぼ Unicode 全漢字を集める | |
my ($start, $end) = (0x4E00, 0x9FAF); |
#!/usr/bin/perl | |
use strict; | |
use warnings; | |
sub get_fib_with_initvals { | |
my ($first, $second) = @_; | |
# Perl の代入は右結合なので、 my $fib = sub { ... } で右辺に $fib があってはいけない。 | |
# この場合、宣言と代入を分けて書く必要がある | |
my $fib; |
#!/usr/bin/env perl | |
# 2019/03/14 | |
# inurl - 標準入力を peco に渡して、URL がある行を選択するとその URL をブラウザで開く | |
use strict; | |
use warnings; | |
use IPC::Open2; | |
my (@url, $child_out, $child_in); | |
open2 $child_out, $child_in, 'peco'; |
#!/usr/bin/env perl | |
# backup-clipboard.pl | |
# 実行するとクリップボードを監視して、対象とする Markdown だと思ったら | |
# 雑に /tmp 以下にダンプする | |
use strict; | |
use warnings; | |
use AnyEvent; | |
use AnyEvent::Mac::Pasteboard; |
#!/usr/bin/env perl | |
use v5.14; | |
use strict; | |
use warnings; | |
use utf8; | |
binmode 'STDOUT', ':utf8'; | |
# JSON::PP はバイト列ではなく内部文字を返すので decode が必要 | |
# ただ perldoc JSON::PP を読むと枝葉が自動的に内部文字になるようにしてくれるオプションはありそう(あんまり読んでいない) |
#!/usr/bin/perl | |
# N回サイコロを振ったときの出る目の全ての場合を割り出して期待値を計算する | |
use strict; | |
use warnings; | |
use List::Util qw(sum); | |
use constant BONUS_TRIO1 => 10_000; | |
use constant BONUS_TRIO456 => 2_000; | |
use constant DEBUG => $ENV{DEBUG}; |
$ perl -e 'for (1..50) { my $n = "3" x $_ . "1"; system "factor", $n; }' | |
31: 31 | |
331: 331 | |
3331: 3331 | |
33331: 33331 | |
333331: 333331 | |
3333331: 3333331 | |
33333331: 33333331 | |
333333331: 17 19607843 | |
3333333331: 673 4952947 |