检查Python中相邻数字的绝对差之和是否为素数

假设我们有一个数字n。我们必须检查相邻数字对的绝对差之和是否为质数。

因此,如果输入类似于n = 574,则输出将为True,例如| 5-7 |。+ | 7-4 | = 5,这是素数。

为了解决这个问题,我们将遵循以下步骤-

  • num_str:= n作为字符串

  • 总计:= 0

  • 对于范围在1到num_str-1的i

    • 总数:=总数+ |位数num_str [i-1]-位数num_str [i] |

  • 如果总数是素数,则

    • 返回True

  • 返回False

让我们看下面的实现以更好地理解-

范例程式码

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