정수형에서 실수형 변환시에도 데이터 손실이 일어난다고 봐야 하나요?

yann8166의 이미지

보통 실수형에서 정수형 변환시 소수 아래 자리가 날라가므로 데이터 손실이 일어난다고 하죠.

반대로

정수형에서 실수형을 변환하는 과정에서, 부동소수점 표현 방식의 문제상 정확한 수치를 표현하지 못하는데

이때 일어나는 현상도 데이터 손실이라고들 말하나요?

예를 들어

int a = 1234567891;
float b = 1234567891;

을 입력하고 출력을 하게 되면

b 는 123456792.0 으로 출력이 됩니다.

ifree의 이미지

유효 숫자 범위를 벗어나니까 그렇죠.
단정밀도는 10진수로 7자리 정도, 배정밀도는 15자리 정도인데, 이 범위 내의 정수에서는 손실이 일어나지 않습니다.

yann8166의 이미지

네 단 배 정도 소수 표현의 유효 숫자 표현 범위가 그렇다는건

결국 우리가 흔히 말하는 실수 -> 정수 변환시에 데이터 손실이 일어난다고 하듯이

결국 정수 -> 실수에서도 데이터 손실이 일어난다는 말을 적용할 수 있느냐는 것이 궁금합니다.

아니면 위와같은 경우는 그저 실수표현의 한계일뿐 데이터 손실이 아니다! 라고 말하는 것인지요. 그 개념이 궁금한겁니다! ^^

익명 사용자의 이미지

사전적으로 데이터 손실은 맞습니다.
하지만 애초에 그걸 고려해서 쓰기 때문에, 데이터 손실이 있다기보다는,
같은 값인 것 같아도 정수값과 실수값의 동등함을 비교하지 말라거나, 실수값을 나타낼때 정확하지 않을 수 있다라고 하죠.

yann8166의 이미지

잘 알겠습니다~ 감사합니다.

yeonpil_net의 이미지

유효 10진 자리는 최소 6자리이고 최대 9자리입니다. 예외가 있지만.

보통 최소 6자리인 것을 고려한 프로그래밍을 하게 되죠.

따라서 실수 리터럴은 단정밀도에도 최소 9자리는 써주는 것이 좋습니다. 좋은게 좋은거죠. 계산의 정확도를 위해.

믿을 것은 6자리지만...

!23456---1----+----2----+----3----+----4----+----5----+----6----+----7-2--+----8
"배웠다"는 "할 수 있다"의 동의어가 아니다.

yann8166의 이미지

알겠습니다~ 감사합니다

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.