Nguyên tắc được sử dụng trong giải pháp sau cho bài toán này là chia một số đã cho với tất cả từ căn bậc hai của nó, căn bậc hai của một số là hệ số lớn nhất có thể mà không cần kiểm tra xem nó có chia hết cho bất kỳ số nào khác để quyết định rằng nó là số nguyên tố.
Hàm trả về false cho tất cả các số chia hết cho 2 và nhỏ hơn 2. Đối với các số khác trả về giá trị của tất cả) hàm sẽ false nếu nó chia hết cho bất kỳ số nào tính đến căn bậc hai của nó và true nếu không chia hết cho bất kỳ số nào
Ví dụ
def is_prime(a): if a < 2: return False elif a!=2 and a % 2 == 0: return False else: return all (a % i for i in range(3, int(a**0.5)+1) ) num=int(input('enter a number')) if is_prime(num)==True: print ("{} is a prime number".format(num)) else: print ("{} is not a prime number".format(num))
Đầu ra
Chạy mẫu chương trình trên -
enter a number24 24 is not a prime number enter a number47 47 is a prime number