สมมติว่าเรามีตัวเลข n เราต้องตรวจสอบว่าผลรวมของผลต่างสัมบูรณ์ของคู่หลักที่อยู่ติดกันเป็นจำนวนเฉพาะหรือไม่
ดังนั้น หากอินพุตเท่ากับ n =574 ผลลัพธ์จะเป็น True เป็น |5-7| + |7-4| =5 นี่คือจำนวนเฉพาะ
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- num_str :=n เป็นสตริง
- รวม :=0
- สำหรับฉันในช่วง 1 ถึงขนาด num_str - 1 ทำ
- ผลรวม :=รวม + |หลักที่ตำแหน่ง num_str[i - 1] - หลักที่ตำแหน่ง num_str[i]|
- ถ้าผลรวมเป็นจำนวนเฉพาะ แล้ว
- คืนค่า True
- คืนค่าเท็จ
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
โค้ดตัวอย่าง
def isPrime(num): if num > 1: for i in range(2, num): if num % i == 0: return False return True return False def solve(n): num_str = str(n) total = 0 for i in range(1, len(num_str)): total += abs(int(num_str[i - 1]) - int(num_str[i])) if isPrime(total): return True return False n = 574 print(solve(n))
อินพุต
574
ผลลัพธ์
True