c++/백준 브론즈
[백준] 1008번:A/B [c++]
모든 것을 처음 시작하는 초짜 개발자
2023. 7. 30. 22:52
https://www.acmicpc.net/problem/1008
1008번: A/B
두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
#include <iostream>
using namespace std;
int main() {
int A, B;
cin >> A >> B;
cout.precision(10);//(a)
cout << A / (double)B;//(b)
return 0;
}
(a): 아무런 조치를 취하지 않으면 cout에서는 숫자가 6자리를 넘으면 넘은 만큼 소수점 아래 자리에서 숫자를 자른다.
현재 주어진 문제에서 출력값의 절대오차 또는 상대오차가 10^-9 이하를 원한다고 했으므로 cout.precision(10)을 사용하여 숫자를 10자리까지 늘려준다.
숫자를 10으로 한 이유는 조건에서 0<A,B<10이여서 소수점 윗자리 숫자가 2자리가 되지 않기 때문이다.
(b) int을 (double)로 바꾸지 않으면 A/B을 한 몫의 값이 나온다.