以下是使用 Python 3.11 编写的解决方案:

import math

def is_prime(num):
    if num < 2:
        return False
    for i in range(2, math.isqrt(num) + 1):
        if num % i == 0:
            return False
    return True

def find_larger_prime(n):
    for i in range(n-1, 1, -1):
        if n % i == 0 and is_prime(i):
            return i

n = int(input('请输入正整数 n: '))
larger_prime = find_larger_prime(n)
print('较大的质数是:', larger_prime)

首先,我们定义了一个 is_prime 函数,用于判断一个数是否是质数。然后,我们定义了 find_larger_prime 函数,用于找到较大的质数。

find_larger_prime 函数中,我们从 n-1 开始递减遍历,如果 n 能被 i 整除,并且 i 是质数,则返回 i

最后,我们通过调用 input 函数获取用户输入的正整数 n,然后调用 find_larger_prime 函数求解较大的质数,并将结果打印出来。

Python 3.11 找出两个质数乘积中的较大质数

原文地址: https://www.cveoy.top/t/topic/o6Gz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录