前提・実現したいこと
多次元配列を使って、国語、数学、英語の合計、平均点を出すプログラムを作っています。下記のプログラムを改良し、機能を追加したいと思っています。
追加する項目としては、
・個人の各教科の成績を全員分(A~E)足し合わせて、更に成績の総合計を出す
・各教科の平均点を全教科足し合わせて科目数で割り、更に成績の総平均を出す
この2つです。
発生している問題
・計算式の中身
・計算式をどこに挿入するか
が分かりません。
該当のソースコード
java
1import java.util.Scanner; 2 3import java.util.Scanner; 4 5import java.util.Scanner; 6 7class Seiseki3 { 8 public static void main(String[] args) { 9 Scanner stdIn = new Scanner(System.in); 10 11 double[][] test = new double[6][4]; 12 int i, j; 13 14 for (i = 0; i < 5; i++) 15 { 16 System.out.print((i + 1) + "番目の人の国語の点数は?"); 17 test[i][0] = stdIn.nextDouble(); 18 } 19 for (i = 0; i < 5; i++) 20 { 21 System.out.print((i + 1) + "番目の人の数学の点数は?"); 22 test[i][1] = stdIn.nextDouble(); 23 } 24 for (i = 0; i < 5; i++) 25 { 26 System.out.print((i + 1) + "番目の人の英語の点数は?"); 27 test[i][2] = stdIn.nextDouble(); 28 } 29 System.out.println(); 30 31 for (i = 0; i < 5; i++) 32 { 33 test[i][3] = 0.0; 34 for (j = 0; j < 3; j = j + 1) 35 { 36 test[i][3] = test[i][3] + test[i][j]; 37 } 38 } 39 40 // 追加事項 始め 41 for (j = 0; j < 2; j++) 42 { 43 test[5][3] = 0.0; 44 for (i = 0; i < 5; i = i + 1) 45 { 46 test[5][3] = test[5][3] + test[i][j]; 47 } 48 } 49 // 追加事項 終わり 50 51 for (i = 0; i < 5; i = i + 1) 52 { 53 System.out.println((i + 1) + "番目の人の合計点は" + test[i][3] + "点です。"); 54 } 55 56 // 追加事項 始め 57 System.out.println("総合計点は" + test[5][3] + "点です。"); 58 // 追加事項 終わり 59 60 for (j = 0; j < 3; j = j + 1) 61 { 62 test[5][j] = 0.0; 63 for (i = 0; i < 5; i++) 64 { 65 test[5][j] = test[5][j] + test[i][j]; 66 } 67 test[5][j] = test[5][j] / 5.0; 68 } 69 70 // 追加事項 始め 71 for (j = 0; j < 3; j = j + 1) 72 { 73 test[5][j] = 0.0; 74 for (i = 0; i < 2; i++) 75 { 76 test[5][4] = test[5][4] + test[i][j]; 77 } 78 test[5][4] = test[5][4] / 3.0; 79 } 80 // 追加事項 終わり 81 82 System.out.println("国語の平均点は" + test[5][0] + "点です。"); 83 System.out.println("数学の平均点は" + test[5][1] + "点です。"); 84 System.out.println("英語の平均点は" + test[5][2] + "点です。"); 85 86 // 追加事項 始め 87 System.out.println("成績の総平均は" + test[5][4] + "点です。"); 88 // 追加事項 終わり 89 } 90}
試したこと
思い当たる場所に計算式の挿入をしてみたが、上手く行かなかった。
補足情報
出力結果としては、
1番目の人の合計点は80.0点です。
2番目の人の合計点は50.0点です。
3番目の人の合計点は60.0点です。
4番目の人の合計点は70.0点です。
5番目の人の合計点は50.0点です。
5番目の人の合計点は50.0点です。
成績の総合計は360.0点です。←追加事項
国語の平均点は44.0点です。
数学の平均点は40.0点です。
英語の平均点は40.0点です。
成績の総平均は41.3点です。←追加事項
回答1件
あなたの回答
tips
プレビュー