求“判断整数n(n>2)是否为质数”的算法!
问题描述:
求“判断整数n(n>2)是否为质数”的算法!
正确算法如下:第一步,给定大于2的整数n.第二步,令i=2(用i表示2~(n-1)中的任意整数).第三步,用i除n,得到余数r.第四步,判断“r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示.第五步,判断“i>(n-1)”是否成立.若是,则n是质数,结束算法;否则,返回第三步.为什么在第五步中是判断“i>(n-1)”是否成立?不是可以取(n-1)吗?不应该是判断“i大于等于(n-1)”吗?因为小弟正在预习新课,可能问的问题比较弱智,★.★
答
你的算法相当于这个循环了...
while(i n is not prime
i=i+1
}
n is prime
i>n-1 就跳出循环了嘛 n以内每个数都试除了一遍