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

주어진 원이 Python의 다른 두 원이 유지 관리하는 경계에 있는지 확인하십시오.

<시간/>

두 개의 동심원의 반지름 값 r1과 r2가 있다고 가정합니다. 또 다른 입력 좌표 좌표와 반경 값 r이 있습니다. 중심이 같은 위치에 있는 원이 주어진 두 동심원의 경계 안에 맞는지 확인해야 합니다.

따라서 입력이 r1 =4 r2 =2 coord =(3, 0) r =1과 같으면 출력은 True가 됩니다.

주어진 원이 Python의 다른 두 원이 유지 관리하는 경계에 있는지 확인하십시오.

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

  • val :=(x^2 + y^2)의 제곱근
  • val + r <=r1 및 val - r>=r1 - r2이면
    • 참 반환
  • 거짓을 반환

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

예시 코드

from math import pow, sqrt

def solve(r1, r2, coord, r) :
   val = sqrt(pow(coord[0], 2) + pow(coord[1], 2)) 
     
   if val + r <= r1 and val - r >= r1 - r2 :
      return True 
   return False 

r1 = 4
r2 = 2
coord = (3, 0)
r = 1
print(solve(r1, r2, coord, r))

입력

4,2,(3, 0),1

출력

True