728x90
문제는 매우 간단했으나 소수점 아래 n번째 자리까지 출력하기를 새로 알아서 써본다 !
방법은 2가지
1. String.format()
2. Math.round()
1번 String.format()을 이용하면
double a = 1.23456
System.out.println(".3%f",a);
하면 소수점 넷째자리에서 반올림되어 3번 째 자리까지 표시된다.
2번 Math.round() 이용
Math.round()는 반올림하는 함수인데 2째자리에서 반올림해서 첫쨰자리까지만 나타내고 싶다면
double a = 1.23456
System.out.println(Math.round(a*10)/10.0);
a에 10 곱해서 반올림해준다음에 다시 10.0으로 나눠주면 됨
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
for(int i=0;i<num;i++) {
StringTokenizer st = new StringTokenizer(br.readLine());
int count = Integer.parseInt(st.nextToken());
int score[] = new int[count];
int sum = 0;
for(int j = 0;j<count;j++) {
score[j] = Integer.parseInt(st.nextToken());
sum += score[j];
}
double avg = sum/count;
double high = 0;
for(int j=0;j<count;j++) {
if(score[j] > avg) {
high ++;
}
}
sb.append(String.format("%.3f",high/count*100)+"%\n");
}
System.out.println(sb);
}
}
728x90
'알고리즘 > 백준' 카테고리의 다른 글
1316번 문제 : 그룹 단어 체커 (0) | 2023.04.30 |
---|---|
2941번 문제 : 크로아티아 알파벳 (0) | 2023.04.26 |
10988번 문제 : 팰린드롬인지 확인하기 (0) | 2023.04.25 |
2444번 문제 : 별 찍기 - 7 (0) | 2023.04.24 |
10811번 문제 : 바구니 뒤집기 (0) | 2023.04.15 |