以下是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的情况。同时,判断质数的方法可以使用更高效的算法,但本题限定了要求最小质因数,因此选择了简单直观的方法

输入一个大于100的正整数输出这个整数的最小质因数。输入无效数据时要求重新输入。

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

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