티스토리 뷰

노트

c++) pow 함수와 부동소수점

tose33 2022. 2. 10. 22:11

pow 함수를 사용하다가 계속 이상한 값이 리턴되서 찾아봤는데 부동소수점 오차 때문이었다.

저번에 PS 문제 풀다가도 비슷한 일이 있었다 (https://tose33.tistory.com/441).

 

이번에 문제는 pow() 함수가 리턴한 값을 int 형에 받아버려서 일어났다.

pow() 함수는 double 형을 리턴하고 이때 부동소수점 오차가 일어날수 있다.

예를들어 pow() 함수가 24.99999999999.. 를 리턴하고 이 값을 int 형으로 받아버리면 내가 원한 값은 25였지만 저장되는 값은 24가 되버린다.

 

https://stackoverflow.com/questions/14714115/strange-powx-y-behaviour

 

Strange pow(x, y); behaviour

While doing my homework I noticed something really strange that I just can't figure out why. int x = 5; cout << pow(x, 2); The result is 25. That's fine. But if I write the same program lik...

stackoverflow.com

 

 

'노트' 카테고리의 다른 글

c++) Priority Queue 구현  (0) 2022.03.07
JAVA의 우선순위 큐  (0) 2022.03.03
python 자주 쓰는 함수 정리  (0) 2022.01.29
c#) 가변배열  (0) 2022.01.09
c++) 함수 별 시간복잡도  (0) 2022.01.04
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
글 보관함