SELECTステートメント

調査などで「1.非常によい,2.よい,3.悪い,4.非常に悪い」という回答に対し,良い方から4点,3点,2点,1点とする,なんてことはよくある。しかし,回答には順序はあるけど等間隔とは限らないといった場合に,if-then文以外の解決方法もある。それがselectステートメント。以下,例示。if-then文の場合も書いてみたが,そんなに文字数は変わらないか。この他にも,1か2に回答したらYES,それ以外はNOなんてことも可。(なお,下記プログラムには全角空白が入ってます)

select(x);
 when (1) score=5;
 when (2) score=4;
 when (3) score=2;
 when (4) score=1;
 otherwise score=.;
end;

if x=1 then score=5;
else if x=2 then score=4;
else if x=3 then score=2;
else if x=4 then score=1;
else score=.;