문제는///
반 인원수와 점수가 주어질 때 반 평균 초과인 사람의 백분률을 구하는 문제이다.
백분률 = 반평균초과인사람수 / 전체인원수 * 100
인원 수는 1000 이하이고 , 점수는 0 이상 100 이하이다.
입력7 100 95 90 80 70 60 50출력57.143%
////////////////////////////////////
요문제인데요 입출력 예 값은 잘~ 출력됩니다.
그런데.. 첫 테스트값인
5
50 50 70 80 100 은
답 : 40.000%
당신의 답 : 36.000%
로 출력되는데 뭘잘못한건가요? 모르겠네요..
프로그램은 dev-c++입니다.
제 코드입니다.
///////////////////////////////////////////////////////////
#include <stdio.h>
int main(){
int sum=0,real_sum=0; // sum 모든 값 더한 것 real_sum 평균 초과 값의 합
int n,i; // n 넣고싶은 수의 갯수 i 포문변수
scanf("%d",&n);
int a[n];
for(i=0; i<n; i++){ // a[0]~a[n-1] 까지 입력반복
scanf("%d",&a[i]);
sum+=a[i]; //모든값 sum에 합함
}
for(i=0; i<n; i++){ //초과값 구하기 반복
if(sum/n<a[i]) //평균값보다 초과한 a[i]값을
real_sum+=a[i];// real_sum 에 더함.
}
printf("%0.3f%%",(float)real_sum/n); // real_sum의 평균 출력.
return 0;
}