追記…というか、修正の御報告

変換式を再検討してみたのだが、どうも、猫では性成熟後 1年で 4歳加齢というのが主流のようなので、式を書き換えてみた。
というわけで、犬と猫に関しては出力結果が以前とだいぶ変わります。ごめんなさい。
犬に関しては、大型・中型・小型で本当は寿命が全く異なるので式も違ってくるのだが、相違厳密なものではないということでばっさりスポイル。すみません。そもそも年齢換算自体に無理がある話なんで、厳密さなどというものを求めていくとどこかで破綻する。

ソースはこちら。

<HTML>
<HEAD>
<META name="GENERATOR" content="WZ EDITOR Version 4.00E">
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<META http-equiv="Content-Style-Type" content="text/css">
<TITLE>「猫で言うと○歳!」</TITLE>
</HEAD>
<BODY bgcolor="#ccbbc0">
<H2>どうぶつ年齢換算</H2>
<P><font color="#cc3399">PHP版(携帯対応)</font><BR>
<FONT color="#cc0000" size="-1">※注:諸説あるうちの一例です</FONT>
</P>

<?php

$x = true;
$s = "<font color='#0099cc'>";
$xh = "";  $sh = "<font>";
$xi = "";  $si = "<font>";
$xn = "";  $sn = "<font>";
$xu = "";  $su = "<font>";
$xr = "";  $sr = "<font>";

    $age = (float) $_GET['age'];
    if ($age <= 0) {
        $age = $_POST['age'];
        if ($_POST['age'] <= 0) {
            $age = 18; 
            $x = false;
        }
    }

    if       (($_POST['base'] == "i") || ($_GET['inu']) || ($_GET['dog'])) {
        $i = $age;
        $xi = "checked";
        $si = $s; 
        if     ($i < 1) { $h = 17 * $i; }
        else            { $h = 5 * $i + 12; }
    } elseif (($_POST['base'] == "n") || ($_GET['neko']) || ($_GET['cat'])) {
        $n = $age;
        $xn = "checked";
        $sn = $s; 
        if     ($n < 1) { $h = 18 * $n; }
        elseif ($n < 2) { $h = 6 * $n + 12; }
        else            { $h = 4 * $n + 16; }
    } elseif (($_POST['base'] == "u")  || ($_GET['uma']) || ($_GET['horse'])) {
        $u = $age;
        $xu = "checked";
        $su = $s; 
        if     ($u < 2) { $h = 6 * $u;}
        elseif ($u < 3) { $h = 5 * $u + 2; }
    } elseif (($_POST['base'] == "r")  || ($_GET['usagi']) || ($_GET['rabit'])) {
        $r = $age;
        $xr = "checked";
        $sr = $s; 
        if     ($r < 2 / 3 ) { $h = 27 * $r;}
        elseif ($r < 4 / 3 ) { $h = 9 * $r + 12; }
        else                 { $h = 6 * $r + 16; }
    } else {
        $h = $age;
        $xh = "checked";
        $sh = $s; 
    }

    if     ($h < 18) { $i = $h / 17; }
        else         { $i = ($h - 12) / 5; }

    if     ($h < 18) { $n = $h / 18; }
    elseif ($h < 24) { $n = ($h - 12) / 6; }
        else         { $n = ($h - 16) / 4; }

    if     ($h < 12) { $u = $h / 6; }
    elseif ($h < 17) { $u = ($h - 2) / 5; }
        else         { $u = ($h - 8) / 3; }

    if     ($h < 18) { $r = $h / 27; }
    elseif ($h < 24) { $r = ($h - 12) / 9; }
        else         { $r = ($h - 16) / 6; }



    if ($x) {
        print  ($sh);
        printf ("ひと:%1.1f歳 (%d歳%d月)<br>" , $h , $h , ($h - floor($h)) * 12 );
        print  ("</font>" . $si);
        printf ("いぬ:%1.1f歳 (%d歳%d月)<br>" , $i , $i , ($i - floor($i)) * 12 );
        print  ("</font>" . $sn);
        printf ("ねこ:%1.1f歳 (%d歳%d月)<br>" , $n , $n , ($n - floor($n)) * 12 );
        print  ("</font>" . $su);
        printf ("うま:%1.1f歳 (%d歳%d月)<br>" , $u , $u , ($u - floor($u)) * 12 );
        print  ("</font>" . $sr);
        printf ("うさ:%1.1f歳 (%d歳%d月)<br>" , $r , $r , ($r - floor($r)) * 12 );
        print  ("</font><HR>");
    }

?>

<FORM action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
年齢:<INPUT size="5" type="text" name="age" tabindex="1" style="text-align : right;" istyle="4" mode="numeric" value="<?php echo $age; ?>"><BR>
  <input type="radio" name="base" value="h" accesskey="1" <?php echo $xh; ?> /> ひと<br>
  <input type="radio" name="base" value="i" accesskey="2" <?php echo $xi; ?> /> いぬ<br>
  <input type="radio" name="base" value="n" accesskey="3" <?php echo $xn; ?> /> ねこ<br>
  <input type="radio" name="base" value="u" accesskey="4" <?php echo $xu; ?> /> うま<br>
  <input type="radio" name="base" value="r" accesskey="5" <?php echo $xr; ?> /> うさぎ<br>
<INPUT type="submit" accesskey="#" tabindex="2" name="btn_calc" value=" CALC "> 
<INPUT type="reset" accesskey="*" name="btn_clr" value=" C ">
<BR>
</FORM>

<hr>
<P><IMG src="BBY_icn4.gif" width="32" height="32" border="0"> <A href="http://d.hatena.ne.jp/owl/20060701#age">
熾火研究所</A>謹製 <br>2006/07/09
</P>

<P><A href="http://hum.uah.jp/age.php"><IMG src="qr_age_php_uah.gif" height="87" width="87" border="0"></A>
 携帯でもOK
</P>
</BODY>
</HTML>