

程序主体已经搞定
如何才能使程序robust enough,在输入小于等于1,及非整数类型的input后能提示输入错误,并提示重新输入直至输入qualified number,并重新运行程序
本人已经被条件、判断、循环语句整不会了
请回答问题的朋友直接写成代码并附上井号解释,感谢

修改了一下,无法解决else中怎样让新的N回到主体语句中执行,也无法解决如何能无限次input直至input符合条件



# 问题5(本次作业的20%):编写一个程序,允许用户输入整数N,并打印所有小于N的素数。
# 例如,当用户输入N=10时,程序应输出小于10的素数包括:程序每行最多应输出8个素数。
# 您的程序还应该足够健壮,能够处理可能的不正确输入(例如,userInputs字符串
n = input("Please input an integer larger than 1:")
for i in n:
if i < '0' or i > '9' or n <= '1':#小于1 或者字符串里面有非数字
n = input("The num is null,Please input an integer larger than 1")#重复输入
print(f"The prime numbers smaller than {n} include:")#输出提示
num1 = int(n)#转成整数
lit = []
if num1 == 2:
lit.append(num1)
else:
for i in range(2, num1):
k = 0
for j in range(1, i+1):#判断是否为素数
if i % j == 0:
k += 1
if k == 2:
lit.append(i)
a = 1
for x in lit:
if a % 8 != 0:#单行输出8个数字
print(x,end="\t")
a += 1
else:
print(x)
a = 1