读书人

正在看c++STL标准库这本书.里面是不是

发布时间: 2012-02-05 12:07:14 作者: rapoo

正在看c++STL标准库这本书.里面是不是有一个函数写错了,帮忙看一眼
有一个求质数的函数,书上这样写的
bool IsPrime(int number){
number = abs(number);

// 书中把0和1都定为质数了
if(number == 0 || number == 1){
return true;
}

int divisor;
for(divisor = number/2; number%divisor != 0; --divisor){
;
}

return divisor == 1;
}

// 我修改了一下,不知道对不对
bool IsPrime(int number){
number = abs(number);

if(number == 0 || number == 1){
return false;
}

int divisor;
for(divisor = number/2; number%divisor != 0; --divisor){
;
}

return divisor == 1;
}

小学的知识了,有点淡忘,使我记错了,还是书写错了,我记得0和1不能是质数吧?谁能告诉我下那个对?

[解决办法]
即不是质数也不是合数
[解决办法]
质数: 2, 3, 5, 7 。。。
合数:4,6,。。。
[解决办法]
质数的概念,只能被自身和1整除的数

读书人网 >C++

热点推荐