From 63985dc023f5ccd1d86a2604c3be473902e425a2 Mon Sep 17 00:00:00 2001 From: AlternateWalls <71268229+AlternateWalls@users.noreply.github.com> Date: Mon, 11 Oct 2021 09:39:44 -0400 Subject: [PATCH] Update easter.cpp --- others/easter.cpp | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/others/easter.cpp b/others/easter.cpp index bf72b63b8..97a50b6f0 100644 --- a/others/easter.cpp +++ b/others/easter.cpp @@ -25,9 +25,9 @@ */ class EasterYearMonthDay { public: - int year; ///< year Easter is on - int month; ///< month Easter is on - int day; ///< day Easter is on + uint64_t year; ///< year Easter is on + uint64_t month; ///< month Easter is on + uint64_t day; ///< day Easter is on EasterYearMonthDay(int newYear, int newMonth, int newDay) { year = newYear; // Assigns year to class @@ -45,22 +45,22 @@ class EasterYearMonthDay { */ EasterYearMonthDay findEaster(int y) { if (y > 1582) { - int a = y % 19; // Year's location on Metonic Calendar - int b = y / 100; // Century index - int c = y % 100; - int d = b / 4; - int e = b % 4; // Takes into account leap years - int f = (b + 8) / 25; - int g = (b - f + 1) / 3; - int h = (19 * a + b - d - g + 15) % + uint64_t a = y % 19; // Year's location on Metonic Calendar + uint64_t b = y / 100; // Century index + uint64_t c = y % 100; + uint64_t d = b / 4; + uint64_t e = b % 4; // Takes into account leap years + uint64_t f = (b + 8) / 25; + uint64_t g = (b - f + 1) / 3; + uint64_t h = (19 * a + b - d - g + 15) % 30; // Days from Mar. 21st until the full moon - int i = c / 4; - int k = c % 4; - int r = (32 + 2 * e + 2 * i - h - k) % + uint64_t i = c / 4; + uint64_t k = c % 4; + uint64_t r = (32 + 2 * e + 2 * i - h - k) % 7; // The number of days from Paschal full moon to next Sunday - int m = (a + 11 * h + 22 * r) / 451; - int n = (h + r - 7 * m + 114) / 31; // Month of Easter - int p = (h + r - 7 * m + 114) % 31; // p + 1 is the day of Easter + uint64_t m = (a + 11 * h + 22 * r) / 451; + uint64_t n = (h + r - 7 * m + 114) / 31; // Month of Easter + uint64_t p = (h + r - 7 * m + 114) % 31; // p + 1 is the day of Easter // Assign values EasterYearMonthDay date(