メイン nmv2.html   Last modified: Sep 01, 2009
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;CHARSET=EUC-JP">
<link rel="shortcut icon" href="../favicon.ico">
<title>JavaScript</title>
<script src="io.js">document.write("io.js ファイルが見つかりません??<br>")</script>

<script language="JavaScript">
<!--
var which = 0

function outnum(x, unit)
{
  var x0, x1, x2, sign
  sign = x < 0 ? -1 : 1
  x0 = Math.abs(x)
  x1 = Math.floor(x0)
  x2 = x0-x1
  x2 *= unit[which][2]
  x0 *= unit[which][2]
  printf("      = %.5f%s\n", sign*x0, unit[which][1])
  printf("      = %i%s %.5f%s\n", sign*x1, unit[which][0], x2, unit[which][1])
}

function calc(data_string)
{
  var data, nc, i, j, x, x1, x2, mean, variance, p, unit
  unit = new Array(7)
  unit[0] = new Array("年",   "月",   12)
  unit[1] = new Array("歳",   "ヵ月", 12)
  unit[2] = new Array("月",   "日",   30)
  unit[3] = new Array("週",   "日",    7)
  unit[4] = new Array("日",   "時間", 24)
  unit[5] = new Array("時間", "分",   60)
  unit[6] = new Array("分",   "秒",   60)
  if ((data = getdata(data_string, -1)) != false) {
    nc = mean = variance = 0
    for (i = 0; i < data.length; i++) {
      for (j = 0; j < data[i].length; j++) {
        x = data[i][j]
        p = (""+x).indexOf(".")
        if (p != -1) {
          x1 = parseFloat((""+x).substring(0, p))
          x2 = parseFloat((""+x).substring(p+1, (""+x).length)) * (x1 < 0 ? -1 : 1)
          x = x1+x2/unit[which][2]
        }
        nc++
        x -= mean
        mean += x/nc
        variance += (nc-1)*x*x/nc
      }
    }
    if (nc < 2) {
      printf("ケース数が1以下です\n")
    }
    else {
      variance /= nc-1
      printf("サンプル数 = %i\n", nc)
      printf("  平均値 = %.6f%s\n", mean, unit[which][0])
      outnum(mean, unit)
      printf(" 標準偏差 = %.6f%s\n", Math.sqrt(variance), unit[which][0])
      outnum(Math.sqrt(variance), unit)
    }
  }
  sep2(25)
}
//-->
</script>
</head>

<body bgcolor="#ffffff">
<font size="+2"><b>10 進法でない測定値の平均値・標準偏差</b></font> <a  href="src/nmv2.html"><img src="png/src.png" width=35 height=11 alt="src" align=top></a>     Last modified: Jun 01, 2006<hr noshade><p>
<font color="#ff0000" size="+2">以下のプログラムのサポートは終了しました。自己責任でお使い下さい。</font>

<form name=Result>
<script language="JavaScript">
<!--
//-->JavaScript がサポートされていないブラウザですか?
</script>
<font color="#ff0000">数値の入力は,例えば,「2 時間 5 分」は「2.05」または「2.5」のように,「2 時間 50 分」は「2.50」のようにします(最後の 0 を省略してはいけません)。つまり,小数点の前と後の文字列を二つの数値に変換して,計算しているのです。</font><p>
<img src="../gra/button3.png" width=9 height=9 alt="・"> <a href="exa/nmv2.html">使用法</a><p>
1 年は 365 日,一月は 30 日として換算しています。<p>
まず,測定単位を選んでから計算してください。<p>
<input type="radio" name="foo" onClick="which=0"> 年.月 
<input type="radio" name="foo" onClick="which=1"> 歳.月 
<input type="radio" name="foo" onClick="which=2"> 月.日 
<input type="radio" name="foo" onClick="which=3"> 週.日<br>
<input type="radio" name="foo" onClick="which=4"> 日.時 
<input type="radio" name="foo" onClick="which=5"> 時.分 
<input type="radio" name="foo" onClick="which=6"> 分.秒<p>
<input type="button" name="calcurate" value="計算開始" onClick="calc(this.form.data.value)">  
<input type="button" name="clear" value="入力欄クリア" onClick="this.form.data.value=''">  
<input type="button" name="clear" value="出力欄クリア" onClick="this.form.result.value=''">

<p>
<table><tr>
<td>入力欄<br><textarea name="data" ROWS=20 COLS=15></textarea></td><td>出力欄<br><textarea name="result" ROWS=20 COLS=80></textarea></td>
</tr></table>
</form>
入力欄には,データを<a href="exa/kugirimoji.html">区切り文字</a>で区切って何行でも
<p><hr noshade>
<img src="../gra/button3.png" width=9 height=9 alt="・"> <A HREF="javascript:history.go(-1)">直前のページへ戻る</A>  <img src="../gra/button3.png" width=9 height=9 alt="・"> <a href="../mail.html">E-mail to Shigenobu AOKI</a>
<p><center><IMG SRC="../gra/ume5.png" width=121 height=37 ALT="Made with Macintosh"></center>
</body>
</html>

サブ io.js   Last modified: Mar 25, 2004

・ 直前のページへ戻る  ・ E-mail to Shigenobu AOKI

Made with Macintosh