소수점 두번째 자리까지 반올림해서 출력해야하는 문제
출력 cout 사용 전에
cout << fixed;
cout.precision(2);
위 두 줄을 써주면 된다.
처음에 sum 변수를 int 자료형으로 선언해서 결과값이 xx.00이렇게 나왔는데
double형으로 변경해서 문제해결
#include<iostream>
#define MAX_SIZE 1000000+1
using namespace std;
int n, k;
int arr[MAX_SIZE];
int main()
{
cin >> n >> k;
for(int i=0; i< n; i++){
cin >> arr[i];
}
int start, end;
for(int i=0; i<k; i++){
cin >> start >> end;
double sum =0;
for(int j=start-1; j<end; j++){
sum = sum + arr[j];
}
cout << fixed;
cout.precision(2);
cout<< sum/(end-start+1)<<endl;
}
return 0;
}
참고 블로그
'코딩테스트 대비' 카테고리의 다른 글
[프로그래머스 c++] 같은 숫자는 싫어 (1) | 2022.08.22 |
---|---|
[프로그래머스 c++] 구명보트 (0) | 2022.08.22 |
평범한 배낭 문제 (0) | 2022.05.12 |
[프로그래머스 Lv.1] 3진법 뒤집기 (0) | 2022.05.06 |
[프로그래머스 Lv.1] 약수의 개수와 덧셈 (0) | 2022.05.06 |