![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
問題7-1:次の配列データの合計と平均を求めるプログラムを作成してください。
double [] x = { 12.3, 45.4, 45.9, 3.56, 6.6, 8.9, 2.3, 0.5, 4.3, 1.2, };
(自分が書いたもの)
public class Sample8_4 {
public static void main(String[] args) {
double[] x = { 12.3, 45.4, 45.9, 3.56, 6.6, 8.9, 2.3, 0.5, 4.3, 1.2, };
double sum = 0.0;
for (int i = 0; i < x.length; i++) {
;
sum += x[i];
double average = sum / x.length;
System.out.println("平均:" + average + ",合計:" + sum);
}
}
}
(実行結果)
平均:1.23,合計:12.3
平均:5.7700000000000005,合計:57.7
平均:10.36,合計:103.6
平均:10.716,合計:107.16
平均:11.376,合計:113.75999999999999
平均:12.266,合計:122.66
平均:12.495999999999999,合計:124.96
平均:12.546,合計:125.46
平均:12.975999999999999,合計:129.76
平均:13.095999999999998,合計:130.95999999999998
(答え)
総計:130.95999999999998, 平均:13.095999999999998
for文についていまいち理解できていません(拡張for文も)
回答よろしくお願いします。
No.1ベストアンサー
- 回答日時:
public class Sample8_4 {
public static void main(String[] args) {
double[] x = { 12.3, 45.4, 45.9, 3.56, 6.6, 8.9, 2.3, 0.5, 4.3, 1.2, };
double sum = 0.0;
for (int i = 0; i < x.length; i++) {
sum += x[i];
}
double average = sum / x.length; //ここ2行を外に出すだけ。
System.out.println("平均:" + average + ",合計:" + sum);
}
}
No.2
- 回答日時:
今JAVAの実行環境がないので実行していませんがこんな感じでできると思います。
double型は計算すると誤差が発生します。
ですのでBigDecimalクラスを使って計算します。
(そこまで正確に計算する必要なければdouble型でもOKです)
public class Sample8_4 {
public static void main(String[] args) {
double[] x = { 12.3, 45.4, 45.9, 3.56, 6.6, 8.9, 2.3, 0.5, 4.3, 1.2, };
BigDecimal sum = new BigDecimal();
for (double y : x) { //拡張for文
sum = sum.add(new BigDecimal(y));
}
BigDecimal average = sum.divide(x.length, 5, BigDecimal.ROUND_HALF_UP);//小数点以下第5位まで求める
System.out.println("平均:" + average.toString() + ",合計:" + sum.toString());
}
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
- Excel(エクセル) 別シートに毎回異なるデータをコピーする 7 2022/06/24 09:02
- 統計学 標準誤差の求め方 2 2022/07/04 19:59
- 統計学 統計学の問題です よろしくお願いします 代表値 次の15件のデータについて,以下の問いに答えよ。 結 5 2023/01/31 23:35
- 統計学 統計学の問題です よろしくお願いします 代表値 次の15件のデータについて,以下の問いに答えよ。 結 1 2023/01/31 18:53
- 統計学 生物統計学の質問 7 2022/05/17 13:59
- 統計学 有給の週平均出し方 2 2023/05/24 10:25
- 統計学 移動平均について 統計を勉強し始めましたが何度読んでも理解が出来ないので教えてください。 ①過去1週 3 2022/06/18 08:34
- C言語・C++・C# プログラミングを教えて欲しいです。 配列aは、int a[9]={7,6,12,8,3,5,10,9 4 2022/12/19 23:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
べき乗
-
実数からの小数部の取得
-
0dの意味を教えてください
-
演算子について
-
Javaで何パーセント%かを表示...
-
モンテカルロ法を用いた球の体...
-
javaで質問です。 文字列2023/2...
-
C言語のポインターに関する警告
-
続・ZZZ,ZZZ,ZZ9形式の金額形式...
-
VBAで配列の計算
-
ダブルクォーテーションを含む...
-
ダブルクォーテーションのrepla...
-
IF関数でEmpty値を設定する方法。
-
変数を動的に利用するには?
-
ループ処理の際、最後だけ","を...
-
JSPやサーブレットでSystem.out...
-
javascriptで文字列のsjis利用...
-
大量のデータを読み込んで表示...
-
EXCEL VBA で、0から?1から?
-
wsprintf関数の使い方について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
0dの意味を教えてください
-
べき乗
-
Javaで何パーセント%かを表示...
-
実数からの小数部の取得
-
double型変数値の整数部分のみ...
-
doubleとintの違い
-
最大値と最小値の求め方
-
double型の足し算について
-
少数50桁以上を表示するには
-
自然対数の底Eを含むStringの数...
-
Java言語プログラミングについ...
-
printfでのエラーがわからない...
-
モンテカルロ法を用いた球の体...
-
Javaプログラムのフローチャー...
-
double型で収まりきれない小数...
-
Javaで計算
-
JAVAのプログラムで、2乗計算...
-
フラクタルで雲を作る。
-
java のfor文について質問です。
-
doubleで入力するには?
おすすめ情報