Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 주어진 방향 코사인으로 직선을 그릴 수 있는지 확인

<시간/>

3차원 공간에 3개의 방향 코사인 l, m, n이 있다고 가정하면 이 방향 코사인으로 직선을 그릴 수 있는지 여부를 확인해야 합니다.

따라서 입력이 l =0.42426 m =0.56568 n =0.7071과 같으면 출력은 벡터 {3, 4, 5}의 방향 코사인이므로 True가 됩니다.

이를 해결하기 위해 다음과 같은 몇 가지 규칙을 따릅니다.

  • l =cos(a), 여기서 a는 직선과 x축 사이의 각도입니다.
  • m =cos(b), 여기서 b는 직선과 y축 사이의 각도입니다.
  • n =cos(c), 여기서 c는 직선과 z축 사이의 각도입니다.
  • l^2 + m^2 + n^2 =1

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 각도:=l * l + m * m + n * n
  • angle :=소수점 이하 8자리까지 각도 값의 반올림
  • if |1 - 각도| <0.0001, 그럼
    • 참 반환
  • 거짓을 반환

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

def solve(l, m, n) :
   angle = l * l + m * m + n * n
   angle = round(angle, 8)
   if abs(1 - angle) < 0.0001:
      return True
   return False
l = 0.42426
m = 0.56568
n = 0.7071
print (solve(l, m, n))

입력

0.42426, 0.56568, 0.7071

출력

True