YSHUSH

루프문을 사용한 총점과 평균 구하기 본문

Coding/Java

루프문을 사용한 총점과 평균 구하기

코딩; 2021. 12. 8. 23:26
    Scanner sc = new Scanner(System.in);
		
    /*
    사용자가 원하는 학생수로 점수를 입력을 받는다.
    총점, 평균 그리고 최고점수를 구한다.
    입력 받은 점수 중에서 90점 이상인 학생의 수는 몇명인가? 
    그리고 그 점수들만을 새로운 배열에 저장하도록 한다.
    */
    int count = 0;
    int number[] = null;	//동적할당을 해줘야 하는 요소의 초기화는 null
    // 입력
    // 몇명?
    System.out.print("몇명의 통계를 구하시겠습니까? = ");
    count = sc.nextInt();

    number = new int[count];
    // 학생들의 점수 입력
    for(int i = 0; i < number.length; i++) {
    	System.out.println((i + 1) + "번째 점수 = ");
      	number[i] = sc.nextInt();
    }

    // 총점
    int sum = 0;
    for(int i = 0; i < number.length; i++) {
    	sum = sum + number[i];
    }

    // 평균
    double avg = sum / number.length;
    // 최고점수
    int max = number[0];
    for (int i = 1; i < number.length; i++) {
    	if(number[i] > max) {
    		max = number[i];
    	}
    }

    // 우등생 수 
    int high = 0;
    for (int i = 0; i < number.length; i++) {
    	if(number[i] >= 90) {
    		high++;
    	}
    }

    // 우등생의 점수를 배열에 저장
    int highCount[] = new int[high];
    int n = 0;
    for (int i = 0; i < number.length; i++) {
    	if(number[i] >= 90) {
    		highCount[n] = number[i];
    		n++;
    	}
    }

    //결과 출력
    System.out.println(Arrays.toString(number));
    System.out.println("합계: " + sum);
    System.out.println("평균: " + avg);
    System.out.println("최고점수: " + max);
    System.out.println("90점이상 점수의 학생수: " + high);
    System.out.println(Arrays.toString(highCount));

'Coding > Java' 카테고리의 다른 글

Wrapper  (0) 2021.12.09
루프문을 사용한 숫자 입력기  (0) 2021.12.08
Continue  (0) 2021.12.08
Break  (0) 2021.12.08
While  (0) 2021.12.08