Perl入学式復習問題2013-4-1
直近のPerl入学式(第4回in東京)が終わった頃からずっとどピークだった仕事がやや収まりつつあるので、リハビリがてら一個だけやった。
復習問題全体はこちら。
https://github.com/note103/perl_entrance/blob/master/2013_4/calc.pl
今回の問題はこのような。
2つの数値を引数として, add, sub, mul, div, mod といった key に演算結果を代入し, そのハッシュリファレンスを返り値とするような関数 calc を作成してください.
この「add」とか「sub」とかが足し算とか引き算とかのことだとわかるまで小一時間・・いや数分ですがしばらくわからず検索して理解しました。いろいろ勉強になる!
で、回答はこのような。
#!/usr/bin/env perl use strict; use warnings; use Data::Dumper; sub calc { my ($num1, $num2) = @_; my $add = $num1 + $num2; my $sub = $num1 - $num2; my $mul = $num1 * $num2; my $div = $num1 / $num2; my $mod = $num1 % $num2; my $results = { add => "$add", sub => "$sub", mul => "$mul", div => "$div", mod => "$mod", }; return $results; } my $var = calc(6, 3); print Dumper $var;
出力結果。
$VAR1 = { 'div' => '2', 'sub' => '3', 'add' => '9', 'mul' => '18', 'mod' => '0' };
どうでしょうか・・。
*
関係ないですがこの1〜2本は久しぶりにhateblo.vimで書いてます。便利&ラク!
https://github.com/moznion/hateblo.vim