プログラミング言語コースで標準 ML を学び始めています。
is_older
最初の宿題では、 2 つの日付を取り、評価結果がtrue
orになる関数を書きますfalse
。最初の引数が 2 番目の引数よりも前の日付であるかどうかを評価しtrue
ます (2 つの日付が同じ場合、結果はfalse
. になります)。
そこで、次のコードを書きます。
fun is_older(first: int * int * int, second: int * int * int) =
if(#1 first = #1 second andalso #2 first = #2 second andalso #3 first = #3 second) then false
else if (#1 first < #1 second) then true
else if (#1 first = #1 second andalso #2 first < #2 second) then true
else if (#1 first = #1 second andalso #2 first = #2 second andalso #3 first < #3 second) then true
else false
コードは問題なく動作しますが、見栄えが悪いです。
このコードを機能的なスタイルに書き直すにはどうすればよいですか?