Ero sivun ”Keskustelu mallineesta:Qvaih” versioiden välillä

Kotivalosta
Siirry navigaatioon Siirry hakuun
pEi muokkausyhteenvetoa
pEi muokkausyhteenvetoa
Rivi 34: Rivi 34:


     //1. Neljännes
     //1. Neljännes
     if ($kk%2!=0) $dmod=31-4; else $dmod=31-5;
     if ($kk%2!=0) $dmod=22; else $dmod=23;
     if ($daran==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">&#9680;</span>}}';
     if ($daran==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">&#9680;</span>}}';
     if ($kk%2!=0) $dmod=29-3; else $dmod=21-4;
     if ($kk%2!=0) $dmod=21; else $dmod=22;
     if ($mang==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">&#9680;</span>|}}';
     if ($mang==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">&#9680;</span>|}}';
}
}

Versio 6. tammikuuta 2025 kello 08.10

Kotivalon kuiden vaiheiden laskenta. {{1}} = vuosi, {{2}} = kuukausi, {{3}} = päivä.

Daran ja Mang olivat molemmat täysiä 13.1.4564. Vuodessa on 357 päivää. Daranin kiertonopeus on 31 päivää ja Mangin 29.

On yksinkertaisinta laskea kuiden vaiheiden vuosikohtaiset päivät muualla ja panna ne muuttujiin.

Kummankin kuun vaiheille lienee joku yhden rivin laskukaava kun otetaan vuosi, kuukausi ja päivä. Wikin matematiikkafunktiot eivät ehkä riitä mutta php:llä ne saisi. Alla on huono "brute force" -ratkaisu.


<?php
//Kotivalon kuiden vaiheiden laskenta.
//Daran ja Mang olivat molemmat täysiä 13.1.4564.
//Vuodessa on 357 päivää. Daranin kiertonopeus on 31 päivää ja Mangin 29.

function kuuhullu() {
    global $daran, $mang, $dd, $kk;

    //Täysi
    if ($daran==31) { echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">🞅</span>}}'; $daran = 0; }
    if ($mang==29) { echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">🞅</span>|}}'; $mang = 0; }

    //Viimeinen neljännes
    if ($kk%2!=0) $dmod=7; else $dmod=8;
    if ($daran==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">◑</span>}}';
    if ($kk%2!=0) $dmod=7; else $dmod=8;
    if ($mang==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">◑</span>|}}';

    //Uusi
    if ($kk%2!=0) $dmod=15; else $dmod=16;
    if ($daran==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">◍</span>}}';
    if ($kk%2!=0) $dmod=14; else $dmod=15;
    if ($mang==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">◍</span>|}}';

    //1. Neljännes
    if ($kk%2!=0) $dmod=22; else $dmod=23;
    if ($daran==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">◐</span>}}';
    if ($kk%2!=0) $dmod=21; else $dmod=22;
    if ($mang==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">◐</span>|}}';
}

//Vuosi 4564:
$dd = 1;
$daran = (31-12);
$mang = (29-12);

//Vuosi 4565:
//$daran=29;
//$mang=22;

for ($kk=1;$kk<4;$kk++) {
  for ($dd=1;$dd<30;$dd++) {
    kuuhullu($daran,$mang,$dd,$kk);
    $daran++; $mang++;
  }
}
for ($kk=4;$kk<9;$kk++) {
  for ($dd=1;$dd<31;$dd++) {
    kuuhullu($daran,$mang,$dd,$kk);
    $daran++; $mang++;
  }
}
for ($kk=9;$kk<13;$kk++) {
  for ($dd=1;$dd<30;$dd++) {
    kuuhullu($daran,$mang,$dd,$kk);
    $daran++; $mang++;
  }
}
//Jumalkuu
for ($dd=1;$dd<30;$dd++) {
  kuuhullu($daran,$mang,$dd,$kk);
  $daran++; $mang++;
}
echo "\n";
echo $daran."\n";
echo $mang."\n";