본문 바로가기

백준/C

[BaeKJoon/C] 백준1546 c 평균

반응형

https://www.acmicpc.net/problem/1546

 

1546번: 평균

첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보

www.acmicpc.net

 

문제

세준이는 자기 점수 중에 최댓값을 고르고 이값을 M이라고 정합니다. 그리고 나서 모든 점수를 /M*100으로 고쳤습니다.

ex) max값이 70이고 과목점수가 50점이라면 50/70*100이 되어 71.43이 됩니다.

 

 

코드

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <stdio.h>
 
int main() {
 
int a;
double arr[1000]; //해당 배열 값을 1000보다 더 많이 할당할 경우 런타임에러가 발생하기에 문제 조건을 충족해주시는 것이 중요합니다
double max=0, sum=0// 이 문제에서 나오는 결과값이 double형이기에 inArr를 포함한 max와 avg 변수 모두 double형으로 지정해야함.)
scanf("%d",&a);          // 몇회 반복할껀지 입력받습니다.
 
for(int i=0; i<a; i++){
    scanf("%lf"&arr[i]);   //arr[1000]을 double형으로 선언해주었기 때문에 %d가 아닌 실수형 %lf로 입력해야합니다.
 
    if(arr[i]>max)           //최댓값 구하는 코드
    max = arr[i];
}
 
for(int i=0; i<a; i++){         // 위 그림 참조
    arr[i] = arr[i]/max*100;  //각 점수를 최댓값으로 나누고 100을 곱한다.
    sum+=arr[i];                //그 값을 다 더해준다.
}
 
printf("%.2lf", sum/(double)a); //sum과 출력하고자 하는 값이 double형이기에 int형인 num에 (double)을 붙여 강제 형변환 시켜줍니다
 
}
cs

 

 

https://www.acmicpc.net/problem/1546

 

1546번: 평균

첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보

www.acmicpc.net

 

반응형

'백준 > C' 카테고리의 다른 글

[BaeKJoon/C] 백준1008 c A/B  (0) 2021.05.16
[BaeKJoon/C] 백준2163 c 초콜릿 자르기  (0) 2021.05.16
[BaeKJoon/C] 백준1977 c 완전제곱수  (0) 2021.05.16
[BaeKJoon/C] 백준1330 c 두 수 비교하기  (0) 2021.05.16
[BaeKJoon/C] 1001번 A-B  (0) 2021.05.16