初めてのPerl 第10章 様々な制御構造 練習問題1
乱数を生成し、それをユーザーに当ててもらうプログラムです。exit、quit、空白の入力があった際と、数字が当たった際にプログラムを終了させています。
#!/usr/bin/perl use strict; use warnings; use 5.010; #ランダムな数値を生成。 my $random = int(1 + rand 100); while(<>){ if($_ =~ /^\s/ ){ last; }elsif($_ =~ m/exit|quit| /){ last; }elsif($_ == $random){ print "MATCH\n"; last; }elsif($_ > $random){ print "Too High\n"; }elsif($_ < $random){ print "Too low\n"; }else{ last; } } =pod #こちらも上記と同じ動きをします。 while(<>){ last if $_ =~ m/^\s/; last if $_ =~ m/exit|quit| /; print "Too High\n" if $_ > $random; print "Too Low\n" if $_ < $random; if ($_ == $random){ print "MATCH\n"; last; } } =cut
実行コマンドは以下の通りです。
$ ./practice1
数字がマッチした時の結果です。
50
Too High
40
Too High
30
Too low
35
MATCH
exitが入力された時の結果です。
50
Too low
60
Too low
exit
$(コマンドの入力に戻る)
※ifを一文で書くコードも考える。