输入一个大于100的正整数输出这个整数的最小质因数。输入无效数据时要求重新输入。
以下是Python代码实现:
while True:
num = int(input("请输入大于100的正整数:"))
if num <= 100:
print("输入无效,请重新输入。")
else:
for i in range(2, int(num**0.5)+1):
if num % i == 0:
print("最小质因数为:", i)
break
else:
print("该数为质数,无最小质因数。")
break
首先使用一个while循环,反复要求用户输入大于100的正整数,直到输入有效数据为止。
接着使用for循环遍历2到num的平方根(注意要加1),判断是否能被整除,如果能被整除,则输出该数为最小质因数并退出循环。如果for循环正常结束,即没有找到最小质因数,则说明该数为质数,输出相应提示即可。
需要注意的是,由于输入的是正整数,所以不需要考虑小于2的情况。同时,判断质数的方法可以使用更高效的算法,但本题限定了要求最小质因数,因此选择了简单直观的方法
原文地址: https://www.cveoy.top/t/topic/dqpJ 著作权归作者所有。请勿转载和采集!