<개인공부>/[Python]

[python] 파이썬 삼각함수(sin, cos, tan)와 각도(degree, radian) 정리

사용자 BlockDMask 2021. 5. 28. 00:30
반응형

안녕하세요. BlockDMask입니다.
오늘은 파이썬의 삼각함수 sin, cod, tan에 대해서 알아보려고 합니다.

<목차>
1. 파이썬에서 각도 degree, radian 정리
2. 파이썬에서 삼각함수 sin, cos, tan 값 구하기

 

1. 파이썬에서 degree, radian 그리고 상수 파이


파이썬에서 삼각함수, 각도와 같이 수학 관련 함수들을 사용하기 위해서는 math라는 모듈(라이브러리)을 import 해야 합니다.

우리가 사용하는 0 ~ 360도를 나타내는 것은 60분법으로 계산을 하는 것이며, degree라고 부릅니다.
"360도 회전 킥" 뭐 이런 식으로 쓰이죠?
이것은 한 바퀴를 360 등분으로 나누어서 사용하는 것입니다.

하지만 우리에겐 익숙하지 않지만, 국제적으로는 라디안 (rad, radian)이라는 것을 사용합니다. 
이것은 360도. 즉 1바퀴(1회전)를 2π 라디안이라고 부릅니다.
이렇게 라디안을 이용해서 각도를 계산하는 방법을 호도법이라고 합니다.

1 라디안은 반지름의 길이와 호의 길이가 같아질 때의 그 각도를 1 라디안이라고 부릅니다.
아래 그림과 같이 말이죠. (제가 직접 그렸습니다. ppt로)

라디안과 각도의 관계는 아래와 같습니다.
2π 라디안 = 360도
1 라디안 = 360도/2π 
2π  / 360 = 1도

 

라디안 값 구하기 : math.radian(x)

math.radian(x)은 각도 값을 인자로 받으면 그 각도(360도 단위)에 맞는 값을 라디안 표기법으로 변환하여 반환해줍니다.
즉, 각도 x를 라디안으로 변경해주는 함수

 

 

각도(degree) 구하기  : math.degree(x)

math.degree(x) 함수는 라디안 값을 인자로 받으면, 그 라디안 값을 각도 표기 법으로 변환하여 반환해줍니다.
즉, 라디안을 각도로 변환해서 반환하는 함수

 

 

상수 파이값(원주율) : math.pi

파이썬에서 3.141592.... 를 나타내는 파이값을 사용하려면 3.141592... 이런 식으로 직접 숫자를 써도 되지만, 파이썬이 파이를 나타내는 상수를 위와 같이 만들어 두었습니다.
우리는 math.pi를 이용해서 파이 값을 사용하면 됩니다.

 

 

math.radian, math.degree, math.pi 예제

import math

a = math.pi  # 원주율 파이 상수
b = math.radians(360)  # 360도를 라디안 표기법으로
c = math.degrees(2 * math.pi)  # 2파이 라디안을 degree 표기법으로


print(f"math.pi : {a}")
print(f"math.radians(360) : {b}")
print(f"math.degrees(2 * math.pi) : {c}")

math.pi 는 우리가 아는 그 파이(π) 3.141592... 값이 잘 나오는 걸 볼 수 있고
360도를 rad 표기법으로 변경하면(2 * 3.14..) 값인 값 6.28.. 이 나온 것을 볼 수 있습니다.
반대로 2π (2*math.pi)를 degree 표기법으로 변경하면 360도가 잘 나오는 걸 볼 수 있습니다.

 

 

2. 파이썬 sin 함수, cos 함수 , tan 함숫값 구하기


삼각함수는 간단합니다. math. 함수를 입력하면 됩니다.

사인 함수 : math.sin(x)

코사인 함수 : math.cos(x)

탄젠트 함수 :  math.tan(x)

세 함수 모두 인자 값으로 라디안 값을 집어넣어야 합니다.
이 함수는 각각 라디안 값으로 들어온 값의 사인 값, 코사인 값, 탄젠트 값을 반환합니다.

대표적인 각도인 0도 45도 90도에서 삼각함수의 값을 구해보겠습니다.

import math
print("degree\tsin(x)\tcos(x)\ttan(x)")
print("=" * 40)

degrees = [0, 30, 45, 60, 90] # 0, π/6, π/4, π/3, π/2 

for val in degrees:
    a = math.sin(math.pi * (val / 180))
    b = math.cos(math.pi * (val / 180))
    c = math.tan(math.pi * (val / 180))
    print(f"{val:2d}\t{a:.4f}\t{b:.4f}\t{c:.4f}")  # 이쁘게 출력
    

0도 일 때는 사인 값은 0, 코사인 값은 1, 탄젠트 값은 0이 나온 것을 알 수 있습니다.
30도(π/6), 45도(π/4), 60도(π/3), 90도(π/2)일 때 각각 sin, cos, tan 값에 맞는 값이 나오는 것을 알 수 있습니다.
탄젠트 90도의 무한대 값이 저렇게 나오는 것을 볼 수 있습니다.

 

 

이상으로 파이썬에서 삼각함수를 구하는 방법에 대해서 알아보았습니다.
감사합니다.

반응형