Giả sử chúng ta có một số n. Chúng ta phải kiểm tra xem tất cả các bit có được đặt (1) cho số n đã cho hay không.
Vì vậy, nếu đầu vào là n =255, thì đầu ra sẽ là True vì biểu diễn nhị phân của 255 là 11111111.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- nếu số giống 0, thì
- trả về Sai
- trong khi số> 0, thực hiện
- nếu số là số chẵn thì
- trả về Sai
- number:=thương số của (số / 2)
- nếu số là số chẵn thì
- trả về True
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Ví dụ
def solve(number): if number == 0: return False while number > 0: if (number & 1) == 0: return False number = number >> 1 return True n = 255 print(solve(n))
Đầu vào
255
Đầu ra
True