测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A24176. 判决素数个数

填空题 中等

题目描述

判决素数个数

题目描述

输入两个整数X和Y,输出两者之间的素数个数(包括X和Y)。

输入

两个整数X和Y(1≤X,Y≤105)。

输出

输出一个整数,表示X,Y之间的素数个数(包括X和Y)。

输入样例

1 100

输出样例

25

参考答案

#include<bits/stdc++.h> using namespace std; bool isPrime(int n)//判断正整数n是否是质数 { if(n < 2) return false; for(int i = 2; i <= sqrt(n); ++i) if(n % i == 0) return false; return true; } int main() { int ct = 0, x, y, t; cin >> x >> y; if(x > y) {//使x,y一定满足x<=y t = x; x = y; y = t; } for(int i = x; i <= y; ++i) { if(isPrime(i)) ct++; } cout << ct; return 0; }

答案解析

#include<bits/stdc++.h>
using namespace std;
bool isPrime(int n)//判断正整数n是否是质数 
{
    if(n < 2)
    	return false;
    for(int i = 2; i <= sqrt(n); ++i)
    	if(n % i == 0)
    		return false;
    return true;
}
int main()
{
    int ct = 0, x, y;
    cin >> x >> y;
    if(x > y)//使x,y一定满足x<=y 
    	swap(x, y);
    for(int i = x; i <= y; ++i)
        if(isPrime(i))
            ct++;
    cout << ct;
    return 0; 
}


上一题 下一题