auddl0756   10달 전

c++을 연습 중인데 틀린 이유가 범위때문인가요?

하지만 int도 32바이트니까 대략 2^32 이하는 표현할 수 있고,

문제에서 a와 b도 나누어 떨어지는데 무엇이 문제인거죠? (저는 입력받는 순서대로 a,b라고 했습니다.)

djm03178   10달 전

k*k는 최대 얼마가 될 수 있을까요?

yclock   10달 전

k가 최대 106의 값을 가질 수 있으므로, k*k의 최댓값은 1012입니다. 231 < 2.2 x 109 < 1012이므로, int로는 답을 표현할 수 없습니다. 더 큰 자료형을 사용해주세요.

여담입니다만, int는  -231 이상 231 미만의 정수를 저장할 수 있습니다.

auddl0756   10달 전

두 분 답변 감사드립니다.

cout은 그냥 출력하는거라 생각했는데 cout도 객체였고 디폴트로 int로 출력하는 것을 간과했네요.

 

댓글을 작성하려면 로그인해야 합니다.