编写程序存储20个100~500以内的随机整数并找出列表中的素数
1个回答
关注
展开全部
以下是 Python 代码,用于存储20个100~500以内的随机整数,并找出列表中的素数:import random# 存储20个100~500以内的随机整数numbers = [random.randint(100, 500) for _ in range(20)]# 找出列表中的素数primes = []for num in numbers: if num > 1: for i in range(2, num): if (num % i) == 0: break else: primes.append(num)# 输出结果print("随机整数列表:", numbers)print("素数列表:", primes)
咨询记录 · 回答于2023-04-27
编写程序存储20个100~500以内的随机整数并找出列表中的素数
以下是 Python 代码,用于存储20个100~500以内的随机整数,并找出列表中的素数:import random# 存储20个100~500以内的随机整数numbers = [random.randint(100, 500) for _ in range(20)]# 找出列表中的素数primes = []for num in numbers: if num > 1: for i in range(2, num): if (num % i) == 0: break else: primes.append(num)# 输出结果print("随机整数列表:", numbers)print("素数列表:", primes)
上述代码首先使用 Python 的 random 模块生成20个100~500以内的随机整数,并将它们存储在列表变量 numbers 中。然后,使用循环遍历 numbers 中的每个数,判断它是否为素数。如果是素数,则将它添加到素数列表 primes 中。在判断一个数是否为素数时,代码使用了简单的试除法,即从2到这个数本身的开方范围内的整数逐一尝试是否能够整除这个数,如果找到了一个可以整除的数,就说明这个数不是素数。最后,代码输出随机整数列表和素数列表。运行上述代码,可以得到类似如下的输出:
随机整数列表: [334, 147, 269, 400, 334, 484, 385, 413, 430, 401, 361, 204, 105, 174, 157, 312, 414, 471, 266, 184]素数列表: [269, 157]
试除法并不是判断素数的最优算法,当判断的数比较大时,效率会比较低。如果需要判断更大的素数,可以考虑使用更高效的素数测试算法,例如 Miller-Rabin 算法、AKS 算法等
您好 图片看不清