#74. 백준 2587번 문제 풀이: 대표값2 문제 원본 보기
어떤수들이 있을 때, 그 수들을 대표하는 값으로 흔히 쓰이는 건 평균값이다. 또 다른 대표값으로 중앙값이라는 것이 있다. 수들을 순서대로 늘어 놓았을 때 중앙에 놓인 값을 말한다. 다섯 개의 자연수가 주어질 때 이들의 평균과 중앙값을 구하시오. 입력: 한 줄에 하나씩의 자연수, 5개 출력: 첫줄에 평균, 둘째 줄에 중앙값 출력. 모두 자연수로 출력하시오.
입력/출력
--입력--
10
40
30
60
30
--출력--
34
30
문제풀이+해설
평균값은 루프를 돌려 전체 값을 더하고 나누어주면 된다. 
유의할 점은 자연수로 출력해야 한다.

대표값은 개수의 중앙값, 즉 2로 나누고, 숫자들을 소팅한 후에 중앙순서에 해당하는 값을 출력해 주면 된다.

여기서는 언어별 내장된 소팅함수 사용에 대한 제한이 없으므로, 내장 소팅함수를 사용해서 풀어보도록 하겠다.
code sol.
#include <iostream>
#include <algorithm>
using namespace std;

int main() {
  int i;
  int ns[5]; // 숫자들을 저장할 배열
  int sum = 0; // 평균계산을 위해 합계를 저장할 변수. 
  for(i = 0; i < 5; i++) { // 5회 루프
    cin >> ns[i]; // 값을 하나씩 받아 정수형으로 변환 후 대입
    sum += ns[i]; // 수들의 합 계산
  }
  sort(ns, ns + 5); // 내장 소팅함수로 소팅
  cout << sum / 5 << '\n' << ns[5 / 2]; 
  // 총합을 5로 나눈 평균과  전체개수(5)를 반으로 나눈 중앙값의 값 출력
  return 0;
}
© 코드솔 - CodeSol. All Rights Reserved.