-use Time::HiRes qw(sleep); # 1秒以下のsleep(待ち時間)を実現するために利用
# http://perldoc.jp/docs/perl/5.20.1/perlvar.pod
+# 出力を溜め込まず、for 文の中で print 行が
+# くる都度表示する特殊変数(特殊変数なので my は不要)
my $count = 0; # *の数を表示するカウンター用変数
my $flag = 'plus'; # 星の数を増減する判断で利用するフラグ
+ # plus か minus の文字列しか入らない
+# 正弦波のロジックを組み立てられなかったので、以下の
+# - カウンタが10で割り切れる時に、* の表示の増減を逆転する
+# - フラグが plus の時はカウンタの数だけ * を表示する
+# - フラグが minus の時は 20 - カウンタの数だけ * を表示する
+# - カウンタの数字が20になったら0で上書きする
-# 止める場合は Ctrl を押しながら C を押す
# plusであれば*を$countの数だけ表示して改行する
# plusでない(つまりminus)であれば*を
# 40 - $countの数だけ表示して改行する
- print '*' x ( 40 - $count ), "\n";
+ print '*' x ( 20 - $count ), "\n";
# 判断してフラグをplusからminusに変更する
- if ( $count % 20 == 0 && $flag eq 'plus' ) {
+ if ( $count % 10 == 0 && $flag eq 'plus' ) {
# フラグが minus の場合は最小値に達したと
# 判断してフラグをplusからminusに変更する
- elsif ( $count % 20 == 0 && $flag eq 'minus' ) {
+ elsif ( $count % 10 == 0 && $flag eq 'minus' ) {
- # カウントが40に達したらカウントを0にする
+ # カウントが20に達したらカウントを0にする