A37675. 找素数问题描述小明刚刚学习了素数的概念:如果一个大于 1 的正整数,除了 1 和它自身外, 不能被其他正整数整除,则这个正整数是素数。现在,小明想找到两个正整数�和�之间(包括�和�)有多少个素数?输入描述输入 2 行,第一行包含正整数�,第二行包含正整数�。约定 2 ≤ � ≤ � ≤ 1000。输出描述输出一行,包含一个整数�,表示找到�个素数。样例输入 1210样例输出 14样例解释 1在…
填空题
中等
知识点
题目描述
找素数
问题描述
小明刚刚学习了素数的概念:如果一个大于 1 的正整数,除了 1 和它自身外, 不能被其他正整数整除,则这个正整数是素数。现在,小明想找到两个正整数�
和�之间(包括�和�)有多少个素数?
输入描述
输入 2 行,第一行包含正整数�,第二行包含正整数�。约
定 2 ≤ � ≤ � ≤ 1000。
输出描述
输出一行,包含一个整数�,表示找到�个素数。
样例输入 1
2
10
样例输出 1
4
样例解释 1
在 2 和 10 之间有 4 个素数,分别为:2、3、5、7。
参考答案
#include <iostream>
using namespace std;
int main() {
int a = 0, b = 0, cnt = 0;
cin >> a >> b;
for (int n = a; n <= b; n++) {
bool isPrime = true;
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
isPrime = false;
break;
}
}
if (isPrime) cnt++;
}
cout << cnt << endl;
return 0;
}
上一题
下一题