본문 바로가기
cs/CS50

2: C언어-6(오버플로우)

by 이쟝 2021. 11. 24.

6. 하드웨어의 한계

  • 컴퓨터는 RAM이라는 저장장치를 포함하는데 RAM은 유한한 크기의 비트만 저장할 수 있기 때문에 때때로 부정확한 결과를 내기도 함
  • 오버플로우: 컴퓨터 하드웨어의 한계로 인해 발생하는 문제 중 하나로, 변수가 담을 수 있는 최대 허용 범위를 벗어난 값을 저장해 예상치 못한 결과가 나오는 현상

*부동 소수점 부정확성*

 

 

  • 나눈 결과를 소수점 50자리까지 출력하기로 하기 때문에 %.50f라고 씀!
  • x에 1을 y에 10을 입력하면 정확한 결과는 0.1이 되어야 하지만, float 에서 저장 가능한 비트 수가 유한하기 때문에 부정확한 결과를 내게 되는 것

결과

 

https://www.boostcourse.org/cs112/joinLectures/41307

 

모두를 위한 컴퓨터 과학 (CS50 2019)

부스트코스 무료 강의

www.boostcourse.org

 

지금까지 소소하게 느낀점

C언어가 나올줄은 몰랐는데.. 생각보다 더 어려운 구조로 되어있는 것 같다..

그래도 조금이라도 C언어에 대해 맛은 본 것 같고 나머지 수업이 좀 무섭지만 계속 해봐야겠다!

'cs > CS50' 카테고리의 다른 글

3: 배열-2(버그와 디버그)  (0) 2021.11.25
3: 배열-1(컴파일링)  (0) 2021.11.25
2: C언어-5(중첩 루프)  (0) 2021.11.24
2: C언어-4(자료형, 연산자)  (0) 2021.11.24
2: C언어-3(조건문과 반복문)  (0) 2021.11.24