求出1到n中所有的素数,并计算这些素数的总和
答案:1 悬赏:60 手机版
解决时间 2021-11-26 03:42
- 提问者网友:听门外雪花风
- 2021-11-25 05:07
求出1到n中所有的素数,并计算这些素数的总和
最佳答案
- 五星知识达人网友:人類模型
- 2021-11-25 05:17
素数是只有1和它本身,没有其他因数的数。换句话说,就是用所有小于n但大于1的数去除n,均无法整除,那n就是素数。一般的,也没必要一定要循环使用到n-1,只要用小于√n的数就可以了。
代码示例如下:
bool isPrime(long n) {
int i=0;
if (n <= 3) {
return n > 1;
} else {
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false;
}
}
}
return true;
}
int main(){
long n = 0;
long i = 0;
long count = 0;
bool isPrime = false;
scanf("输入n的值:", &n);
for(i=1;i<=n;i++){
isPrime = isPrime(i);
if(isPrime){
printf("%d是素数
", i);
count = count + i;
}
}
printf("1到%d中所有素数的和为:%d", n, count);
return 0;
}
代码示例如下:
bool isPrime(long n) {
int i=0;
if (n <= 3) {
return n > 1;
} else {
for (i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false;
}
}
}
return true;
}
int main(){
long n = 0;
long i = 0;
long count = 0;
bool isPrime = false;
scanf("输入n的值:", &n);
for(i=1;i<=n;i++){
isPrime = isPrime(i);
if(isPrime){
printf("%d是素数
", i);
count = count + i;
}
}
printf("1到%d中所有素数的和为:%d", n, count);
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯