• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javascript計算についての質問)

javascript計算についての質問

このQ&Aのポイント
  • 単位の計算でSなら4、Aなら3、Bなら2、Cなら1、D、Fなら0で、それぞれ取得した単位数を入力したら平均を求めるjavascriptを作りたいのですがどのようにすればいいのかわかりません
  • たとえばSのところに4を入力してBのところに3を入力したなら、平均のところに3を出力するみたいな
  • 全体の平均=(Sの総得点+Aの総得点+Bの総得点+Cの総得点+Dの総得点+Eの総得点+Fの総得点)/(Sの総単位数+Aの総単位数+Bの総単位数+Cの総単位数+Dの総単位数+Eの総単位数+Fの総単位数)

質問者が選んだベストアンサー

  • ベストアンサー
  • duron
  • ベストアンサー率77% (73/94)
回答No.2

多分こんな感じにしたいのかな?ということを想像して書いてみました inputに文字列が入力されたら・・・とかのチェックがいるかもしれませんが 必要なら適当に付け加えてください。 計算式の出力は確認用のおまけです。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=Shift_JIS"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <title>QPA</title> <script type="text/javascript"> //<!-- function calc(theForm){ num_s = Number(theForm.num_s.value); num_a = Number(theForm.num_a.value); num_b = Number(theForm.num_b.value); num_c = Number(theForm.num_c.value); num_d = Number(theForm.num_d.value); num_e = Number(theForm.num_e.value); num_f = Number(theForm.num_f.value); num = num_s + num_a + num_b + num_c + num_d + num_e + num_f; if(num > 0) { // 各単位の合計得点を求める result = (4 * num_s + 3 * num_a + 2 * num_b + 1 * num_c) / num; // 小数点以下を切り捨てる theForm.result.value = Math.floor(result); document.getElementById("text").innerText = "( 4×"+num_s+" + 3×"+num_a+" + 2×"+num_b+" + 1×"+num_c+" ) / ( "+num_s+" + "+num_a+" + "+num_b+" + "+num_c+" + "+num_d+" + "+num_e+" + "+num_f+" ) = "+result; } else { theForm.result.value = "0"; document.getElementById("text").innerText = ""; } } //--> </script> </head> <body bgcolor="#ffffff"> <h2>指定したQPAを足した平均</h2> 全体の平均=(Sの総得点+Aの総得点+Bの総得点+Cの総得点+Dの総得点+Eの総得点+Fの総得点)/(Sの総単位数+Aの総単位数+Bの総単位数+Cの総単位数+Dの総単位数+Eの総単位数+Fの総単位数) <form name="myForm"> <p>S:<input type="text" name="num_s" value="0"></p> <p>A:<input type="text" name="num_a" value="0"></p> <p>B:<input type="text" name="num_b" value="0"></p> <p>C:<input type="text" name="num_c" value="0"></p> <p>D:<input type="text" name="num_d" value="0"></p> <p>E:<input type="text" name="num_e" value="0"></p> <p>F:<input type="text" name="num_f" value="0"></p> <p><input type="button" value="計算" onclick="calc(this.form);"></p> <div id="text"></div> <p>平均点<input type="text" value="0" name="result" ></p> </form> </body> </html>

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

釣りっぽさが満載ですが・・・ まずインタフェースはどうするのでしょう? inputでS~Fまで列記? それとロジックがわからない S=4、B=2という命題で、Sに4,Bに3を入れるとどういう根拠で 平均が3になるのですか?

関連するQ&A