关于我的第一个解决方案,你确认的另一件事是正确的。
在“for”循环中要检查的范围是:
for i in range(2, number)
但是,如果我错了,请纠正我,我认为这足够有范围=(2,数字/2)
例如,让我们考虑数字541,它是质数。我的代码将按如下方式检查模块:
541/2
541/3
541/4
.
.
.
541/538年
541/539年
541/540个
但是检查大于270值(几乎是541的一半)的分型是完全无用的。如果541不除以270,很明显它不能除以271、272、273、274、275等等。
所以我认为有以下条件就足够了:
for i in range(2, round(number/2)+1)
我必须添加+1,否则我在运行3号函数时会出错。
你怎么认为?
我说的对吗,它足够有检查范围(2,数字/2)而不是(2,数字)?