問題解答編
 
別に解答はひとつではないので
解答編というより答え合わせ編とでも呼ぶべきか。
 
 
○コメント欄 Mrさん
 
 IIf(Args(1) = Args(2),0,IIf(Args(1) > Args(2),1,-1)
 
○拍手コメント
 
 1:03 解1 ☆ = iif(X(Args(1)) > X(Args(2)),1,iif(X(Args(1)) = X(Args(2)),0,-1))
 
 
ifが駄目ならiifを使えばいいだけじゃないと言わんばかりのやり方。
正直この関数の存在を忘れてました。何かずるい気がするけど、間違いなく正解のひとつです。
 
 
○拍手コメント
 
 1:03 解2 ☆ = (X(Args(1)) - X(Args(2))) / max(abs(X(Args(1)) - X(Args(2))),1)
 
 
差を差の絶対値で割れば1か-1が出ることに注目したやり方。
実は私が最初に思いつき、回答例として出そうとしてたのもこれです。
0で割らないよう注意が必要。これも正解。
 
 
○せっかくなのでさらに他を考えてひねり出した方法
 
 min(max((X(Args(1)) - X(Args(2))), 1), max*1
 
トラックバック 蒼城醒さん
 
 Return Min(Max(X(Args(1)) - X(Args(2)),-1),1)
 
 
MinとMaxだけでもできるんだぜな方法。
かぶった上にどう見ても蒼城さんの方が精錬されてますね。無念。
これも正解のひとつでしょう。
 
 
当たり前のことながら、一行なら何でもいいとした今回の問題設定では
これらの回答の間に単純な優劣はございません。
 
いろいろ出てきて楽しかったなコンチキショウ!ということです。
 
時間を割いて参加してくださった皆々様、どうもありがとうございました。
 
 
 
○コメント欄 KOKA@携帯さん
 
 ☆だからティクビだ!
 
 ぱいぱい。

*1:X(Args(2) - X(Args(1))), -1