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

Kiểm tra ba số cho trước có phải là các số nguyên tố liền kề trong Python

Cho ba số, kiểm tra xem chúng có phải là ba số nguyên tố liền kề hay không (tức là không có số nguyên tố nào nằm giữa chúng).

Ví dụ: [5,7,11] → True vì 5, 7, 11 là ba số nguyên tố liên tiếp.

Giải thuật

  • Kiểm tra cả ba số có phải số nguyên tố không.
  • Tìm số nguyên tố tiếp theo của số đầu tiên, so sánh với số thứ hai.
  • Tìm số nguyên tố tiếp theo của số thứ hai, so sánh với số thứ ba.
  • Nếu cả hai khớp thì trả về True.

Mã ví dụ

def isPrime(num):
    if num > 1:
        for i in range(2, num):
            if num % i == 0:
                return False
        return True
    return False

def get_next_prime(num):
    next_prime = num + 1
    while not isPrime(next_prime):
        next_prime += 1
    return next_prime

def solve(x, y, z):
    if not isPrime(x) or not isPrime(y) or not isPrime(z):
        return False
    if get_next_prime(x) != y:
        return False
    if get_next_prime(y) != z:
        return False
    return True

nums = [5,7,11]
print(solve(*nums))

Đầu vào

[5,7,11]

Đầu ra

True