求600到900之间素数的个数clearn=0for x=600 to 900z=.t.for i=2 to sqrt(x)if x%i=0(这个地方什么意思?为什么X除以I等于0?)z=.f.exitendifnextif z=.t.n=n+1endifnextreturn整个程序的原理是什么?我不懂!

来源:学生作业帮助网 编辑:作业帮 时间:2024/12/04 03:12:55
求600到900之间素数的个数clearn=0for x=600 to 900z=.t.for i=2 to sqrt(x)if x%i=0(这个地方什么意思?为什么X除以I等于0?)z=.f.exitendifnextif z=.t.n=n+1endifnextreturn整个程序的原理是什么?我不懂!
xSN@PTT719T'g+mmReRHVOV@$QhT%!(F`'ݵ}:\BE>سy޼͗ Vp{'I(h$I4l# uC%u,jsC/rФ&h0_Y˚*X/5Yſz= FAl;>,"kIof袎Mx{SjF4S?jX&td\^Ibn:iO"7ŸyvȾIm_I"}VVfL;GgI)hKw,*gZwT0q7]Tg'_A9?Ϣ˒xI 1E}8.&yLvb lf"KmQp딮y/7o/R?v^`>A5[a||`qp AAD1g4Eov?u@ ๶K1tPՐMDo8N&-J=d˥u@ot

求600到900之间素数的个数clearn=0for x=600 to 900z=.t.for i=2 to sqrt(x)if x%i=0(这个地方什么意思?为什么X除以I等于0?)z=.f.exitendifnextif z=.t.n=n+1endifnextreturn整个程序的原理是什么?我不懂!
求600到900之间素数的个数
clear
n=0
for x=600 to 900
z=.t.
for i=2 to sqrt(x)
if x%i=0(这个地方什么意思?为什么X除以I等于0?)
z=.f.
exit
endif
next
if z=.t.
n=n+1
endif
next
return
整个程序的原理是什么?我不懂!

求600到900之间素数的个数clearn=0for x=600 to 900z=.t.for i=2 to sqrt(x)if x%i=0(这个地方什么意思?为什么X除以I等于0?)z=.f.exitendifnextif z=.t.n=n+1endifnextreturn整个程序的原理是什么?我不懂!
有2个for循环
外面的for循环是从600-900逐个检查各个数字
里面的for循环是检查对外面的for指定的数字是不是素数, 是,就记录, 否,就检查下一个数字
for i=2 to sqrt(x) &&如果该数不能被从2到平方根都不能被整除,那么就是素数,无需从1到x之间每个都检查
if x%i=0 &&取余函数, 如果结果为0,表示可以整除,那么x就不是素数.
z=.f.
exit
endif
next