输入一个大于100的正整数输出这个这个整数的最小质因数。输入无效数据时要求重新输入。
这里是一个Python的实现:
while True: n = int(input("请输入一个大于100的正整数:")) if n <= 100: print("输入无效,请重新输入!") else: for i in range(2, int(n ** 0.5) + 1): if n % i == 0: print("最小质因数为:", i) break else: print("该数为质数!") break
首先通过一个无限循环来保证输入有效的正整数,如果输入的数小于等于100则要求重新输入。然后利用一个for循环来遍历2到sqrt(n)之间的所有数,判断是否能整除n。如果能整除,则说明这个数是n的一个质因数,直接输出并break退出循环。如果for循环正常结束,则说明n是一个质数,直接输出即可。最后在循环结束时使用break来退出while循环。
原文地址: https://www.cveoy.top/t/topic/dqhh 著作权归作者所有。请勿转载和采集!