• 締切済み

javascriptプログラムについての質問です。

javascriptプログラムについての質問です。 javascriptで点数を15回入力したあとで、平均点数を表示するプログラムを作りたいのですが、どうしてもわかりません。本当に完全な初心者です。どなたか教えてください。お願いします(-_-);

みんなの回答

回答No.5

ととのいました~! 「おぶじぇくとしこうっぽくかいた」とかけて「さらにみじかくもかけた」ととく。 そのこころは! 「い~ばるんじゃね~よ」 ぜんかくくうはくは、はんかくにしてちょ。 <!DOCTYPE html> <title></title> <body> <script><!-- var Heikin = function () {  var ary;  this.reset = function () {   ary = [ ];  };    this.push = function (n) {   ary.push (n);   return this.getCount();  };    this.getCount = function() {   return ary.length  };  this.getAverage = function() {   return eval (ary.join ('+')) / ary.length;  }; } //____________ var keisan = new Heikin; var max = 5; //ここ15ね var inp; var cnt; keisan.reset(); do {  inp = window.prompt ('点数を入力してください。');  cnt = keisan.push (inp); } while (cnt < max) alert( "heikin =" + keisan.getAverage() ); //--> </script>

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.4

適当に直して <input id="max" type="text" value="15">回以上点数を入力すると...<br> <button id="btn1">点数入力</button> <script type="text/javascript"> var ave1 = new averager(parseInt(document.getElementById("max").value)); document.getElementById("btn1").addEventListener("click",(function(ave){  return function(){   while(!ave1.count_check())    ave.add(window.prompt('点数を入力してください。'));    alert("回の平均は"+ave1.get_average()+"です。");  } })(ave1),false); function averager(max){  this.counter=0;  var stack=0;  this.add=function(point){    if(point&&!isNaN(point)&&point!=''){    stack += Number(point);    this.counter++;    }else alert("数値を入れてください");  }  this.count_check=function(){   if(this.counter!=0 && this.counter==max) return true;    else return false;  }  this.get_average=function(){   return (stack/this.counter);  } } </script> </body>

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.3

どのような使い勝手なのか不明なので、何とも回答しにくいけれど… 同じテキストボックスに順に入力していく例。(Enterで入力) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="ja"> <head><title>test</title> <meta http-equiv="Content-Script-Type" content="text/javascript"> <script type="text/javascript"> <!-- var check = function(evt) { var data = [], max = 15, warn = "数字を入力してください"; if (evt.keyCode != 13) { check = function(evt) { if (data.length >= max || evt.keyCode != 13) return; var t = evt.target || evt.srcElement; var i, e, av = 0, v = t.value, n = Number(v); if (v == "" || isNaN(n)) { alert(warn); } else { data[data.length] = n; e = document.getElementById("result"); e.innerHTML += "<br>" + n; t.value = "", t.focus(); if (data.length>=max) { for (i=0; i<max; i++) av += data[i]; e.innerHTML += "<hr>合計:" + av + " 平均:" + av/max; } } } } else { alert(warn); } } //--> </script> </head> <body> <div> 入力欄<br> <input type="text" onkeydown="check(event)"> </div> <hr> <div id="result">結果表示欄</div> </body> </html>

  • nine999
  • ベストアンサー率44% (512/1140)
回答No.2

<script type="text/javascript"> var count = 0; var total = 0; var max = 15; do { var s = prompt((count+1) + "回目の入力","") if (! isNaN(s)) { count++; total += eval(s); } } while (count < max) alert(total/max); </script> 画面には表示せずに、全てダイヤログで処理する例です。 最後を document.write(total/max); にすると画面に答えが表示されます。 画面を更新すると再計算。

回答No.1

プログラムとしては、ダメダメ。 さらに、タブが効かないんで、見にくい。 さらにさらに、めんどくさいので動作確認してないwww あくまで、例。 すこし分かってくれば、もっとマシなの作れるようになる。 例として2個の平均。 (1)「input」タグを作る。 <input type="text"> <input type="text"> (2)「div」タグを作る。 <div id="average"></div> (3)「button」タグを作る。 <button id="BT">平均</button> (4)javascriptでボタンの設定。 window.onolad=function(){ //ボタンの要素取得 var ButtonElm = document.getElementById("BT"); //ボタンをクリックした時の設定 BT.onclick = function(){ //input要素の取得 var InputElms = document.getElementsByTagName("input"); //div要素の取得 var AverageElm = document.getElementById("average"); //平均計算(もちろん、15とかなら、forなど使う) var ave = ((InputElms[0].value||0)+(InputElms[1].value||0))/2; //平均を表示する。 Average.innerHTML = ave; } }

関連するQ&A

  • javascriptのプログラムについての質問です。

    javascriptのプログラムについての質問です。 1掛ける6から始めてその後ひたすら6を掛けていき30桁になった時点で終わらせるというプログラムを作りたいです。 参考書を読み始めたばかりの初心者ですのでできるだけ砕いて説明いただけると幸いです。 よろしくお願いします。

  • 配列を使って平均を求めるプログラムの異常 JavaScript

    配列を使って平均を求めるプログラムをJavaScriptで書いているのですが、 実行して得られる平均の値が異常です。(*具体的には後述します) 正しい書き方を教えていただけたら幸いです。 仕様は ・実行と同時にポップアップウインドウで、「生徒1~3」の点数を記入させる ・記入が終わると、ページに生徒の点数と、3人の平均点が表示される というものです。以下がソースです。 var array = new Array(3); var i; array[0] = prompt("生徒1の点数を入力してください。", ""); array[1] = prompt("生徒2の点数をを入力してください。", ""); array[2] = prompt("生徒3の点数を入力してください。", ""); for(i = 0; i < 3; i++){ document.write("生徒 ", i + 1 ); document.write(":", array[i], "<br>"); } var sum = array[0]; for(i = 0; i < 3; i++){ sum += array[i]; var mean = sum/3; } document.write("<hr>"); document.write("平均点: ", mean, "点", "<br>"); *平均値が異常というのは、例えば生徒1に10,生徒2に20,生徒3に30を入力した時の平均点が 3367343.3333333335になってしまう、というようなものです。 原因がわからず困り果てております。 どなたかご親切な方、よろしくお願いします。

  • C言語プログラムの作成方法がわかりません

    キーボードから5人の点数を入力すると平均点を表示するようにし、平均点以上の学生の点数を表示させるC言語のプログラムの作成方法を教えてください

  • プログラム作りです。:Basic

    ポケットコンピュータでプログラミングをしている とある者です。 次の問題を言語、Basicを用いて作ってください。 ※ 私は、それを利用するとか宿題だぁ!とか そういったものではありません。 専門知識のある方のプログラムの作り方をみて勉強をさせていただきたいのです。 なるべく簡単な文でお願いいたします。 ┏━┓ ┃1┃ ┗━┛ 5人に英語のテストを行い、次のような結果が得られました Aくん= 20 Bくん= 40 Cくん= 30 Dくん= 80 Eくん= 50 (1)それぞれの点数を(READ,DATAを使い)読んでから、5人の平均を求め、さらに平均点に最も近い点数を見つけ、平均点にもっともちかい点数を表示するプログラム (2) ↑(1)のやつを、READで読むのではなく、INPUTに書き換えるのならば、その書き換えた部分のプログラム ┏━┓ ┃2┃ ┗━┛ (1)X,Yの値を入力して Z=X*(かける)Y+Y を計算し、Zの値を表示し、プラスの時は、”プラス”、マイナスの時は”マイナス”、ゼロの時は”ゼロ”と表示するプログラム。 その表示と同時に、その計算結果を表示させる。 (2) ↑(1)のプログラムを改良して、最後まで計算をしたら、 ”Pless any key!”と点滅表示させて、何かキーを押したら、最初の行に戻るプログラムにする。 どうか、面倒さまですが、おしえてください。 また、こんな初心者にも(でなくても)わかるようなHPがありましたら、教えてくださいね。 ご回答お待ちしています。

  • C言語のプログラムについて質問です。

    C言語のプログラムについて伺いたいことがあるんですが5人くらいの名前、数学、英語、国語の点数を入力して各教科の最高点、最低点、平均点、それぞれの数+英+国の合計点を表示するプログラムを構造体を使って作りたいと思っています。 もしよろしければ事細かに教えていただけないでしょうか。 よろしくお願いします。

  • javascript・jQueryのプログラム

    javascript・jQueryのプログラムについて javascript・jQuery初心者です。 ホームページ制作でやりたいと思っていることがあるですが、うまくいかないのでご教授願います。 写真にも書いているのですが、一番外枠に<div id="main">で外枠を作り、 その枠の中に<div id="karenda">と<div id="jouhou">と2つのボックスを作っています。 上の<div id="karenda">にjavascriptかjQueryでカレンダーを表示するようして、 カレンダーの日付をクリックすると、下の<div id="jouhou">の枠内に クリックした日の情報をリスト形式で表示させるようにしたいのです。 表示させる情報とは、友達に自分で作った作品を売っている仲間がいるのですが、 まだお店を持っていなくてフリマなどの路上販売なので、 「どこどこに、時間、場所」などを表示させたいです。 色々考えてみたのですがいまいちうまくいかなかったので 表記の仕方など教えていただけたらありがたいです。 よろしくお願いいたします。

  • javascriptでブログ作成

    javascript初心者です。 ブログを作ってみたいのですが、できたら 携帯電話からでも、入力が出来るようにしたいと思ってます。javascriptで作成するのは可能でしょうか? できたら、そういうプログラムを紹介してる サイトなどを教えて欲しいのですが・・・。 宜しくお願いします。

  • javascriptのわかる方へ

    ASP初心者です。 現在、ASPで開発をしています。 script言語はjavascriptを使っています。 ASPだけでなく、javascriptも初心者なので、本を読んでもさっぱりわかりません。 そこで質問いたします。 テキストボックスに値を入力させ、ボタンがクリックされたら、次のページで入力内容を表示させたいのですが、 1.次のページを表示させるにはどのように記述するのでしょうか? 2.入力された値を次のページで参照するにはどのように記述すればよいのでしょ うか? よろしくおねがいします。m(_ _)m

  • jsp javaScript

    javaScript初心者です。 質問させてください。 テキストに入力された数値を、判定して trueならjspページへ移動 falseならクリアみたいな形のプログラムを作ろうと思っています。 どなたかアドバイスいただけませんか。 よろしくお願いします。

  • JavaScriptのプログラム

    「はい」「いいえ」「その他」などのリンク(<a>タグ)があり、そのうちの一つをクリックすると、 「投票完了!」と表示されるようなJavaScriptプログラムを作れる方いませんか? 例:「はい いいえ その他」とリンクで表示されていて、「はい」をクリックすると、すべてが消え「投票完了!」と表示される。 よろしくお願いします! P.S.これは必須ではありませんが、指定されたメールアドレスに送信できるようにしたいです。Javaじゃなくても、PHPとかでも結構です。