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

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; }
上一题 下一题