- 332 名前:デフォルトの名無しさん [2005/11/29(火) 11:37:19 ]
- 設問ごとの得点表を
%SCORE_TABLE = ( Q001 => { 1 => { rika => 2, rekishi => 2 }, 2 => { rika => 2, rekishi => 1 }, .... }, .... } という形で用意する。 cgi入力のうち、QNNNに対応する値を%input = (Q001 => 2, Q002 => 1 ,... ) という形のハッシュにまとめる。 あとは while (my($q, $a) = each %input) { while (my($k, $s) = each %{$SCORE_TABLE{$q}->{$a}}) { $score{$k} += $s; } } とまわせば%scoreにそれっぽい結果が得られるだろう。
|

|