[Dev] 수 자료형 - 정수형, 실수형

2024. 3. 30. 19:32·Dev

수 자료형(Number)

수 자료형은 가장 기본적인 자료형이며 데이터는 모두 수(Number)로 표현할 수 있습니다
대부분의 프로그램에서는 정수, 실수가 많이 사용되지만, 그중에서도 정수를 기본으로 사용합니다

파이썬에서는 크게 숫자를 두 가지 자료형(데이터 타입)으로 구분하는데
소수점이 없는 숫자를 정수형(int), 소수점이 있는 숫자를 실수형(float)으로
두 가지 자료형(데이터 타입)으로 구분합니다


정수형(integer)
정수를 다루는 자료형이며 양의 정수, 음의 정수 0 이 있습니다

a = 6 		# 양의 정수
print(a)	# 6

a = -7 		# 음의 정수
print(a)	# -7

a = 0 		# 0
print(a)	# 0​​

실수형(Real Number)
소수점 아래의 데이터를 포함하는 수이며 변수에 소수점을 붙인 수를 대입하면 실수형 변수로 처리합니다

a = 3.14	# 양의 실수
print(a)	# 3.14

a = -3.14	# 음의 실수
print(a)	# -3.14

a = 6.		# 소수부분이 0일 때 0을 생략할 수 있다
print(a)	# 6.0

a = -.7		# 정수부분이 0일 때 0을 생략할 수 있다
print(a)	# -0.7


추가로 실수형 데이터를 표현하는 방식으로 e나 E를 사용해 지수 표현을 할 수 있습니다 (코테에서 자주쓴다)

a = 1e9		# 10억의 지수 표현 방식
print(a)	# 100000000.0

a = 3.14e1	# 31.4
print(a)

a = 1234e-3	# 1.234
print(a)​​​


 * 컴퓨터는 실수를 정확하게 표현하지 못한다 * 

보통 컴퓨터 시스템은 수 데이터를 처리할 때 2진수를 사용해 계산합니다
그렇다면 컴퓨터가 실수(float) 데이터를 처리할때는?

부동 소수점 방식을 이용해 고정된 4바이트 or 8바이트의 메모리를 할당해 계산합니다, 이러한 실수 데이터의 연산 중 반올림 오차(rounding error)가 발생할 수 있으며, 특히 계산이 반복되거나 연속적으로 이루어지는 경우에는 오차가 누적되게 됩니다

(= 실수 정보를 표현하는 정확도에 한계가 있다!)

a = 0.1 + 0.2	# 0.30000000000000004
print(a)  

a = 0.3 + 0.6 	# 0.8999999999999999
print(a)

이러한 문제를 해결하고 싶다면 round() 함수를 이용하면 됩니다,

보통의 코딩테스트 문제에서는 실수형 데이터 타입을 비교할 때
 
소수점 다섯 번째 자리에서 반올림한 결과가 같으면 정답으로 인정하는 식으로 처리하곤 합니다    

a = 0.3 + 0.6
print(round(a, 4))	# 5번째 자리에서 반올림, 0.9
# round('실수형 데이터', 반올림하고자 하는 위치 -1)

 

 

'Dev' 카테고리의 다른 글
  • [Dev] 코딩 테스트에서 자주 쓰는 입력방식에 대해 (input, split, map)
  • [Dev] 포인터와 배열(Pointer & Array)
  • [Dev] max, min 없이 리스트 최댓값, 최솟값 구하기
  • [Dev] TypeScript #1
너굴먹
너굴먹
해랑사 을신당는 나
  • 너굴먹
    햄스터가 갱스터가 될때까지
    너굴먹
  • 전체
    오늘
    어제
    • 분류 전체보기 (36)
      • Dev (17)
      • Computer (6)
      • Project (7)
      • CodingTest (2)
      • 일상 (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    10진수
    아이패드 m4
    R-S래치
    파이썬
    YOLOv5
    소수 변환
    래치
    actions secrets and variables
    vercel
    Lightsail
    GithubAction
    cbt
    오답노트
    AWS
    정보처리기사
    2진수
    숫자 자료형
    코딩테스트
    실수 변환
    정처기 필기
    python
    roboflow
    c라이브러리
    경기도갭이어프로그램
    trunk-based
    숫 자료형
    RS래치
    python #max #min #최댓값 #최솟값
    필기
    플립플롭
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
너굴먹
[Dev] 수 자료형 - 정수형, 실수형
상단으로

티스토리툴바