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

Kiểm tra xem bit K có được đặt hay không trong Python

Giả sử chúng ta có một số n và một giá trị khác k. Chúng ta phải kiểm tra xem bit thứ k trong n có được đặt (1) hay không. Giá trị của k được xem xét từ phía bên phải.

Vì vậy, nếu đầu vào là n =23, k =3, thì đầu ra sẽ là True vì dạng nhị phân của 23 là 10111 nên bit cuối cùng thứ ba là 1 (set).

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

  • temp:=n sau khi dịch chuyển các bit (k - 1) lần sang bên phải
  • nếu tạm thời VÀ 1 là 1, 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

def solve(n,k):
   temp = n >> (k - 1)
   if temp & 1:
      return True
   return False

n = 23
k = 3
print(solve(n, k))

Đầu vào

23, 3

Đầu ra

True