Computer >> Máy Tính >  >> Lập trình >> Python

Kiểm tra xem vòng kết nối đã cho có nằm trong ranh giới được duy trì bởi hai vòng kết nối khác trong Python hay không

Giả sử chúng ta có hai giá trị bán kính r1 và r2 của hai đường tròn đồng tâm. Chúng ta có một coord tọa độ đầu vào khác và một giá trị bán kính r. Chúng ta phải kiểm tra xem hình tròn có tâm được đặt ở vị trí đồng nhất và nó có nằm trong ranh giới của hai đường tròn đồng tâm đã cho hay không.

Vì vậy, nếu đầu vào giống như r1 =4 r2 =2 coord =(3, 0) r =1, thì đầu ra sẽ là True.

Kiểm tra xem vòng kết nối đã cho có nằm trong ranh giới được duy trì bởi hai vòng kết nối khác trong Python hay không

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • val:=căn bậc hai của (x ^ 2 + y ^ 2)
  • nếu val + r <=r1 và val - r> =r1 - r2, thì
    • trả về True
  • trả về Sai

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

Mã mẫu

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))

Đầu vào

4,2,(3, 0),1

Đầu ra

True