สมมุติว่าเรามีตัวเลขสามตัว และเราต้องตรวจสอบว่าเป็นจำนวนเฉพาะที่อยู่ติดกันหรือไม่ จำนวนเฉพาะที่อยู่ติดกันคือจำนวนเฉพาะที่ไม่มีจำนวนเฉพาะอื่นอยู่ระหว่างจำนวนเฉพาะ
ดังนั้น หากอินพุตมีค่าเท่ากับ nums =[5,7,11] ผลลัพธ์จะเป็น True
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- หากหนึ่งในสามจำนวนนี้ไม่เป็นจำนวนเฉพาะ
- คืนค่าเท็จ
- ถ้าจำนวนเฉพาะตัวถัดไปของ x ไม่เหมือนกับ y แล้ว
- คืนค่าเท็จ
- ถ้าจำนวนเฉพาะตัวถัดไปของ y ไม่เหมือนกับ z แล้ว
- คืนค่าเท็จ
- คืนค่า True
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
โค้ดตัวอย่าง
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 isPrime(x) == False or isPrime(y) == False or isPrime(z) == False : return False next_prime = get_next_prime(x) if next_prime != y: return False if get_next_prime(y) != z: return False return True nums = [5,7,11] print(solve(*nums))
อินพุต
[5,7,11]
ผลลัพธ์
True