Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- public class JavaApp1 {
- public static void main(String[] args) {
- String[] subject = { "英語", "国語", "数学"};
- int len = subject.length;
- int[] num = new int[len];
- String[][] name = new String[len][];
- int[][] score = new int[len][];
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- for(int i = 0; i < len; i++) {
- num[i] = readInt(br, subject[i] + "の受験者数");
- name[i] = new String[num[i]];
- score[i] = new int[num[i]];
- }
- for (int i = 0; i < len; i++) {
- for (int j = 0; j < num[i]; j++) {
- name[i][j] = readString(br, subject[i] + "の" + (j + 1) + "人目の名前");
- while (true) {
- score[i][j] = readInt(br, name[i][j] + "さんの" + subject[i] + "の点数");
- if (score[i][j] >= 0 && score[i][j] <= 100)
- break;
- }
- }
- }
- System.out.println("入力結果");
- for (int i = 0; i < len; i++) {
- System.out.print(subject[i] + " ");
- double avg = 0;
- int max = 0;
- for (int j = 0; j < num[i]; j++) {
- System.out.print(name[i][j] + ":" + score[i][j] + "点 ");
- avg += score[i][j];
- if (max < score[i][j]) {
- max = score[i][j];
- }
- }
- avg /= num[i];
- String[] who = new String[num[i]];
- int tmp = 0;
- for (int j = 0; j < num[i]; j++) {
- if (score[i][j] == max) {
- who[tmp++] = name[i][j];
- }
- }
- System.out.println();
- System.out.println(subject[i] + "の平均点は" + avg + "点");
- System.out.println(subject[i] + "の最高点は" + max + "点");
- System.out.print(subject[i] + "の最高点獲得者は");
- for (int k = 0; k < tmp; k++) {
- System.out.print(who[k] + "さん");
- if (k != tmp - 1) {
- System.out.print("と");
- } else {
- System.out.println("です");
- }
- }
- }
- }
- public static String readString(BufferedReader br, String msg) {
- String buf = null;
- if (msg != null)
- System.out.print(msg + " >");
- try {
- buf = br.readLine();
- } catch (IOException e) {
- System.err.println(e);
- System.exit(1);
- }
- return buf;
- }
- public static int readInt(BufferedReader br,String msg) {
- int ret;
- while (true) {
- try {
- ret = Integer.parseInt(readString(br, msg));
- break;
- } catch (NumberFormatException e) {
- System.err.println("not an integer");
- }
- }
- return ret;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement