Сообщение от Malleys
|
Да, возможно. Например, вычисление дня пасхи Пасхалия
Вот я попробовал...
<h4>Православная пасха</h4>
<input id="input" type="number" value="2019">
<output id="output"></output>
<script>
function psh(Y){
var a = (19 * (Y % 19) + 15) % 30;
var b = (2 * (Y % 4) + 4 * (Y % 7) + 6 * a + 6) % 7;
if(a + b > 26)
return (a + b - 26) + " мая " + Y;
else
return (a + b + 4) + " апреля " + Y;
}
(input.oninput = function() {
output.textContent = psh(+input.value);
})();
</script>
|
как из этого скрипта добавить функцию
function psh(Y){
var a = (19 * (Y % 19) + 15) % 30;
var b = (2 * (Y % 4) + 4 * (Y % 7) + 6 * a + 6) % 7;
if(a + b > 26)
return (a + b - 26) + " мая " + Y;
else
return (a + b + 4) + " апреля " + Y;
}
и вывести поздравление с пасхой, и радуницей(+9 дней)
и эту функцию
function catholicDate(year) {
// [url]https://ru.wikipedia.org/wiki/Алгоритм_Гаусса_вычисления_даты_Пасхи[/url]
var a = year % 19,
b = year % 4,
c = year % 7,
k = Math.floor(year / 100),
p = Math.floor((13 + 8 * k) / 25),
q = Math.floor(k / 4),
m = (15 - p + k - q) % 30,
n = (4 + k - q) % 7,
d = (19 * a + m) % 30,
e = (2 * b + 4 * c + 6 * d + n) % 7;
if (d === 29 && e === 6) return new Date(year, 3, 19);
if (d === 28 && e === 6 && ((11 * m + 11) % 30 < 19)) return new Date(year, 3, 18);
if (d + e > 9) return new Date(year, 3, d + e - 9);
else return new Date(year, 2, 22 + d + e);
}
и вывести поздравление с католической пасхой?