当前位置:   article > 正文

04-3. 统计素数并求和(20)_7-4 统计素数并求和 分数 20 全屏浏览题目 切换布局 作者 张彤彧 单位 浙江大学

7-4 统计素数并求和 分数 20 全屏浏览题目 切换布局 作者 张彤彧 单位 浙江大学

时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
张彤彧(浙江大学)
本题要求统计给定整数M和N区间内素数的个数并对它们求和。

输入格式:

输入在一行中给出2个正整数M和N(1<=M<=N<=500)。

输出格式:

在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。

输入样例:
10 31
输出样例:
7 143
————————————————
版权声明:本文为CSDN博主「coderstory」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/fjinhao/article/details/46853171

标准答案:

#include <stdio.h>
#include <stdbool.h> 
int nums(int x)
{
    int i;
    if(x ==1 ){
        return 0;
    }
    for(i=2; i*i<=x; i++){
        if(x%i == 0){
            return 0;
        }
    }
    return 1;
}
int main()
{
    int m,n;
    int j;
    scanf("%d %d", &m, &n);
    int count = 0;
    int sum = 0;
    for(j=m; j<=n; j++)
    {
        if(nums(j) == 1)
        {
            count++;
            sum += j;
        }
    }
    printf("%d %d", count, sum);
    
    return 0;

}

这个答案里的很多东西我都没学到 但是我用一个break硬是做出来了

我的答案:

int main(){
    int x,y,x1;
    int i = 2;
    int sum = 0;
    int i1 = 0;
    scanf("%d%d",&x,&y);
    while(x<=y){
        while(i<x){
            if(x%i==0){
                break;
            }
            i++;
        }
        if(x==i){
            sum = sum+x;
            i1++;
        }
        i = 2;
        x++;
        
        
    }
    printf("%d %d",i1,sum);
    return 0;
}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/329207
推荐阅读
相关标签
  

闽ICP备14008679号