코딩해징징징징
72
2019-01-11 21:05:56 작성 2019-01-11 21:26:27 수정됨
3
236

C언어 왜 이렇게 나오는지 잠깐 봐주세요ㅠㅠㅠ젭알,,


여기서  질문이 디버거로 보면 중간에 0.59999.. 나오고 결국엔 0.999999...로 false가 출력되네요 ㅠㅠ

뒤에 9999가 붙는 이유가 뭘까요?ㅠㅠㅠ


0
0
  • 답변 3

  • 하모
    60
    2019-01-11 21:32:04

    컴퓨터가 실수를 표현할 때 왜 오차를 허용할 수 밖에 없는지를 아셔야합니다.

    프로그래밍 언어와 관련된 내용은 아니고, 한번 검색해보세요. 컴퓨터의 실수 표현 방식이라구요.

    0
  • 코딩해징징징징
    72
    2019-01-11 22:09:42

    감사합니다 ㅠㅠㅠ 정말 도움 많이 됐습니다~~


    0
  • MJ_9999
    199
    2019-01-15 19:27:56

    0.3333333333333333 x 3 = 0.999999999999990

    머 이런식으로 나올수가있습니다

    즉 double a = 1/3

    a * 3 하면 1이 나오지가 않습니다.

    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.