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

Kotivalosta
Siirry navigaatioon Siirry hakuun
pEi muokkausyhteenvetoa
pEi muokkausyhteenvetoa
 
(6 välissä olevaa versiota samalta käyttäjältä ei näytetä)
Rivi 5: Rivi 5:
On yksinkertaisinta laskea kuiden vaiheiden vuosikohtaiset päivät muualla ja panna ne muuttujiin.
On yksinkertaisinta laskea kuiden vaiheiden vuosikohtaiset päivät muualla ja panna ne muuttujiin.


4564:
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.
 
<pre>
<pre>
<nowiki>
<nowiki>
{{#ifexpr:{{{2}}}=1 and {{{3}}}=13|<span style="color:#606060">&#128901;</span><span style="color:#e00000">&#128901;</span>|}}
<?php
</nowiki>
//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.


Daran:
function kuuhullu() {
Uusi <span style="color:#606060">&#9677;</span>
    global $daran, $mang, $dd, $kk;
1. neljännes <span style="color:#606060">&#9680;</span>
Täysi <span style="color:#606060">&#128901;</span>
Viimeinen neljännes <span style="color:#606060">&#9681;</span>


Mang:
    //Täysi
Uusi <span style="color:#e00000">&#9677;</span>
    if ($daran==31) { echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">&#128901;</span>}}'; $daran = 0; }
1. neljännes <span style="color:#e00000">&#9680;</span>
    if ($mang==29) { echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">&#128901;</span>|}}'; $mang = 0; }
Täysi <span style="color:#e00000">&#128901;</span>
Viimeinen neljännes: <span style="color:#e00000">&#9681;</span>


    //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">&#9681;</span>}}';
    if ($kk%2!=0) $dmod=7; else $dmod=8;
    if ($mang==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">&#9681;</span>|}}';


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


<?php
    //1. Neljännes
//Kotivalon kuiden vaiheiden laskenta. Toistaiseksi vasta täysikuut.
    if ($kk%2!=0) $dmod=22; else $dmod=23;
//Daran ja Mang olivat molemmat täysiä 13.1.4564.
    if ($daran==$dmod) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">&#9680;</span>}}';
//Vuodessa on 357 päivää. Daranin kiertonopeus on 31 päivää ja Mangin 29.
    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>|}}';
}


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


for ($kk=1;$kk<4;$kk++) {
for ($kk=1;$kk<4;$kk++) {
   for ($dd=1;$dd<30;$dd++) {
   for ($dd=1;$dd<30;$dd++) {
     if ($daran%31==0) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">&#128901;</span>}}';
     kuuhullu($daran,$mang,$dd,$kk);
    if ($mang%29==0) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">&#128901;</span>|}}';
     $daran++; $mang++;
     $daran++; $mang++;
   }
   }
Rivi 44: Rivi 57:
for ($kk=4;$kk<9;$kk++) {
for ($kk=4;$kk<9;$kk++) {
   for ($dd=1;$dd<31;$dd++) {
   for ($dd=1;$dd<31;$dd++) {
     if ($daran%31==0) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">&#128901;</span>}}';
     kuuhullu($daran,$mang,$dd,$kk);
    if ($mang%29==0) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">&#128901;</span>|}}';
     $daran++; $mang++;
     $daran++; $mang++;
   }
   }
Rivi 51: Rivi 63:
for ($kk=9;$kk<13;$kk++) {
for ($kk=9;$kk<13;$kk++) {
   for ($dd=1;$dd<30;$dd++) {
   for ($dd=1;$dd<30;$dd++) {
     if ($daran%31==0) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">&#128901;</span>}}';
     kuuhullu($daran,$mang,$dd,$kk);
    if ($mang%29==0) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">&#128901;</span>|}}';
     $daran++; $mang++;
     $daran++; $mang++;
   }
   }
Rivi 58: Rivi 69:
//Jumalkuu
//Jumalkuu
for ($dd=1;$dd<30;$dd++) {
for ($dd=1;$dd<30;$dd++) {
if ($daran%31==0) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#606060">&#128901;</span>}}';
  kuuhullu($daran,$mang,$dd,$kk);
if ($mang%29==0) echo '{{#ifexpr:{{{2}}}='.$kk.' and {{{3}}}='.$dd.'|<span style="color:#e00000">&#128901;</span>|}}';
  $daran++; $mang++;
$daran++; $mang++;
}
}
echo "\n";
echo "\n";
echo $daran."\n";
echo $mang."\n";
?>
</nowiki>
</nowiki>
</pre>
</pre>

Nykyinen versio 6. tammikuuta 2025 kello 09.09

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=5;
//$mang=25;

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";
?>