C++/문제풀이

[C++] 2차원 배열을 이용하여 3개 학급 학생들의 평균 성적 구하기

year.number 2022. 6. 13. 20:34

 

power C++ 230p

2차원 배열을 이용하여 3개 학급 학생들의 평균 성적 구하기

 

[목표]

각 학급의 평균, 총 학생의 평균을 구한다.

 

//
//  main.cpp
//
//  Created by yeonsu on 2022/06/13.
//

// 3개 학급 학생들의 평균 성적 구하기
// [목표]
// 각 학급의 평균, 총 학생의 평균을 구한다.

#include <iostream>
#include <ctime>        //rand 함수
#include <iomanip>
using namespace std;

const int CLASSES = 3;
const int STUDENTS = 5;


int main(){
    int array[CLASSES][STUDENTS] = {
        {1,2,3,4,5},
        {6,7,8,9,10},
        {11,12,13,14,15},
    };
    
    int class_sum = 0;
    int all_sum = 0;
    

    for (int i = 0; i<CLASSES; i++){
        //각 학급의 평균이기 때문에 루핑을 한 번 돌 때마다 초기화를 해줘야 한다.
        class_sum = 0;
        for(int j = 0; j<STUDENTS; j++)
            class_sum += array[i][j];
    cout << "학급 " << i << "의 평균 성적 = " << class_sum / STUDENTS << endl;
        //루핑을 끝내기 전 각 학급의 평균을 변수에 누적해서 저장한다.
        all_sum += class_sum;
    }
    
    cout << "전체 학급 학생들의 평균 성적 = " << all_sum / (CLASSES * STUDENTS) << endl;
    
    
    return 0;
}

실행 결과


Key Point

1. 각 학급의 평균이기 때문에 첫 번째 루핑을 한 번 돌 때마다 평균값을 0으로 초기화를 해줘야 한다.

    for (int i = 0; i<CLASSES; i++){

        class_sum = 0;

        for(int j = 0; j<STUDENTS; j++)

            class_sum += array[i][j];

    cout << "학급 " << i << "의 평균 성적 = " << class_sum / STUDENTS << endl;

2. 루핑을 끝내기 전 각 학급의 평균을 변수에 누적해서 저장한다.

        all_sum += class_sum;

    }