본문 바로가기

코딩테스트 대비

[c++] 소수점 자릿수 출력하기 / [Softeer] 성적평균 문제 풀이

소수점 두번째 자리까지 반올림해서 출력해야하는 문제

출력 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;
}

참고 블로그 

https://jokerkwu.tistory.com/127