Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình Python kiểm tra số có phải lũy thừa của 2


Trong bài viết này, chúng ta sẽ học về giải pháp và phương pháp giải quyết bài toán cho trước.

Đề bài

Cho một số n, chúng ta cần kiểm tra xem số cho trước có phải là lũy thừa của 2 hay không.

Phương pháp

  • Tiếp tục chia số đầu vào cho 2, tức là n = n/2 lặp lại.
  • Chúng ta sẽ kiểm tra trong mỗi lần lặp, nếu n%2 khác 0 và n không phải 1 thì n không phải là lũy thừa của 2.
  • Nếu n trở thành 1 thì nó là lũy thừa của 2.

Hãy xem triển khai dưới đây:

Ví dụ

def isPowerOfTwo(n):
    if (n == 0):
        return False
    while (n != 1):
        if (n % 2 != 0):
            return False
        n = n // 2
    return True
# main
if(isPowerOfTwo(40)):
    print('Yes')
else:
    print('No')

Kết quả

No

Tất cả biến và hàm được khai báo trong phạm vi toàn cục như hình dưới đây:

Chương trình Python kiểm tra số có phải lũy thừa của 2

Kết luận

Trong bài viết này, chúng ta đã học về cách tìm xem một số có phải là lũy thừa của 2 hay không.