Wolfram言語

復活祭の日付を計算する

Wolfram Compilerは,数だけでなく,数の配列を取って数の配列を返す関数をコンパイルすることができる.以下の関数は,ある範囲の最初と最後の年を取ってその範囲の各年の復活祭の日付{month, day}ペアの配列を返す.この例は,ModQuotientを含む多数の数学的整数関数をコンパイラがどのようにサポートするかも示す.

関数easterは,復活祭の日付のためのガウスのコンプトゥスアルゴリズムを実装する.コンパイルなしの実装に比べ,easterの実行時間は,macOS Mojaveを実行している2018年のMacBook Proでは,ほぼ60倍の速さになる.

コンパイルされた関数は1年から570万年までの日付を,数分ではなく数秒で計算する.

繰返しパターンを生ずる周期の唯一の約数が1なので,復活祭の最短反復周期は570万年である.

繰返し期間中の復活祭の各日付の出現数を可視化すると,比較的平らで非対称的な非正規分布になる.

関連する例

de en es fr ko pt-br zh