프로그래밍언어/C & CPP

분산 예제 (배열 + 반복문)

Isaac87 2014. 8. 30. 16:25

5의 크기를 같은 int형 배열의 분산을 구하는 프로그램을 작성하여라.

 

1. 5개의 값 사용자 입력

2. 5개의 값 총점 계산

3. 평균 계산

4. 차이값 제곱의 평균을 통해 분산 계산  (차이값 = 각각의 값 - 평균)

 

#include<stdio.h>
int main(void)
{
 int arr[5]; // 5개의 값을 저장할 배열
 int i;
 int total=0; // 총점
 double avg; // 평균
 double t = 0;
 double v;

 for(i=0; i<5; i++) { // 0 ~ 4
  scanf("%d", &arr[i]);
  total += arr[i]; // total = total + arr[i]
 }

 avg = total / 5.0;

 printf("총점 : %d\n", total);
 printf("평균 : %lf\n", avg);

 for(i=0; i<5; i++) {
  t += ((arr[i] - avg) * (arr[i] - avg));
  // 차이값의 제곱을 누적
 }

 v = t / 5.0; // 분산 - 누적된 값을 총 개수로 나눔
 
 printf("분산 : %lf\n", v);

 return 0;