问题标题: 酷町堂:1106 素数

0
0
已解决
王一帆
王一帆
中级守护
中级守护
1106   素数

题目描述 Description
期中考试刚刚结束,聪聪是班上的学习委员,可是这次数学成绩班上好多同学都考了满分,聪聪只考了 98 分,就错在一道求素数的题目上,题目是这样的:已知 N 和 M 两个正整数,求 N 至 M 之间(包括 N 和M)有多少个素数。聪聪觉得很懊恼,他决定必须研究清楚这个问题。由于聪聪今年刚加入学校的计算机兴趣班,于是他决定利用编程来解决这个问题,你能帮助他吗?

样例输入 Sample Input
3 7

样例输出 Sample Output
3

数据范围及提示 Data Size & Hint
【数据说明】
1≤N<M≤32767。
#include<iostream>
using namespace std;
int main()
{
    int n,m,sum=0;
    cin>>n>>m;
    for(int i=n;i<=m;i++){
        int f=1;
        for(int j=2;j<i;j++){
            if(i%j==0){
                f=0;
                break;
            }
        }
        if(f==1){
            if(n<=1){

            } 
            else{
                sum++;
            }
        }
    } 
    cout<<sum;
    return 0;
}

为啥只有90分?


0
已采纳
宣海宁
宣海宁
中级光能
中级光能

请解释下17行啥意思。

 

​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

宣海宁在2019-10-27 14:57:05追加了内容

@宣海宁

 

0
阚睿扬
阚睿扬
新手守护
新手守护

注意!

你没考虑n是1的情况

1既不是素数也不是和数,

No thanks.

0
褚俊皓
褚俊皓
新手天翼
新手天翼

加特判(1不是素数

0
0
侯平仄
侯平仄
新手天翼
新手天翼

加特判:是不是1

1既不是素数,也不是合数

我要回答