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

Kiểm tra tổng hiệu tuyệt đối các cặp chữ số liền kề có phải số nguyên tố không trong Python

Cho số n. Tính tổng hiệu tuyệt đối giữa các cặp chữ số liền kề, kiểm tra tổng đó có phải số nguyên tố.

Ví dụ: n=574 → |5-7|+|7-4|=2+3=5 (nguyên tố) → True.

Thuật toán

  • Chuyển n thành chuỗi.
  • Duyệt từ i=1 đến cuối, cộng dồn abs(int(s[i-1]) - int(s[i])).
  • Kiểm tra tổng có phải nguyên tố (hàm isPrime đơn giản).

Ví dụ code

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))

Đầu vào

574

Đầu ra

True