- 締切済み
プログラミングお願いします(JAVA)
キーボードより数値データを10件連続入力し、そのデータの平均値を求め、その平均値より大 きな値のみを1行で連続出力するプログラムを作成しなさい。平均値の小数点以下は切り捨てでかま いません。できたら配列を使い、for文やif文を使って簡単にお願いします 数値1> 81 数値2> -12 数値3> -3 数値4> 12 数値5> 16 数値6> 65 数値7> -45 数値8> 2 数値9> -74 数値10> 55 平均値 : 9 81 12 16 65 55
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Ogre7077
- ベストアンサー率65% (170/258)
ヒントその弐 <script>addEventListener('load',function(){ function calculate(ev) { ev.preventDefault(); var dat = ev.target.elements['dats'].value; var arr = dat.split(/\s*[\n,]\s*/).map(function(d){return parseFloat(d)}); var avr = (arr.reduce(function(p, c){return p + c}, 0) / arr.length) | 0; var rep = arr.filter(function(n){return avr < n}).join(' '); ev.target.elements['reps'].value = rep; } document.getElementsByName('calc')[0].addEventListener('submit', calculate, false); }, false)</script> <form name="calc"> <p> <textarea cols=32 name=dats>81,-12,-3,12,16,65,-45,2,-74,55</textarea> <button type=submit>calc</button> <p> <output name=reps></output> </form> 配列を使って簡単に記述しました JavaScript ですが
- ok-kaneto
- ベストアンサー率39% (1798/4531)
大ヒント!! #include <stdio.h> int main(void) { int i,cnt=0,n[10],sum=0,ave; for( i=0; i<10; i++) { printf("数値%d>", i); scanf("%d", &n[i]); sum += n[i]; } ave = sum / 10; for( i=0; i<10; i++) { if(n[i] > ave) { printf("%d ", n[i]); } } puts(""); } C言語ですけど。
- ok-kaneto
- ベストアンサー率39% (1798/4531)
テスト込みで1人月程度かかるので100万円はもらわないといけませんが、支払えますか?