Comment detail

除算・余剰を使わずに閏年 (Nested Flatten)

This comment is reply for 5337 にしお: とても素朴な書き方。剰余の計算を禁止して...(除算・余剰を使わずに閏年). Go to thread root.

まあ、かけ算でも出来るわけでして。
#なんか揚げ足取りばっかしているように思われ
#ちゃうだろうなぁ。マイナス評価でもしょうがないか。


$ pl -qs 124.pl
?- uru(1900).

No
?- uru(2000).

Yes
?- uru(2008).

Yes
?- uru(2100).

No
?-
1
2
3
4
5
6
7
uru(X):- divideby400(X).
uru(X):- divideby4(X), not(divideby100(X)).

divideby(X, Y, Z) :- 0 =:= X - integer(X * Y) * Z.
divideby4(X) :- divideby(X, 0.25, 4).
divideby100(X) :- divideby(X, 0.01, 100).
divideby400(X) :- divideby(X, 0.0025, 400).

Index

Feed

Other

Link

Pathtraq

loading...