百练 3177 判决素数个数

核能气质少年 提交于 2020-01-01 02:54:52

原题链接

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

Input

两个整数X和Y(1 <= X,Y <= 10 5)。

Output

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

Sample Input

1 100

Sample Output

25

#include<iostream>
#include<math.h>
using namespace std;
int sushu(int s)//判断素数
{
	for (int i = 2; i <= (int)sqrt(s*1.0); i++)
	{
		if (s % i == 0)
			return 0;
	}
	return 1;
}
int main()
{
	int x, y,i,sum=0;
	cin >> x >> y;
	if (x > y)//x和y的值不确定,需要判断大小然后互换。 
	{
		int t = x;
		x = y;
		y = t;
	}
	for (i = x; i <= y; i++)
	{
		if (i == 1)
			continue;
		if (sushu(i))
			sum++;
	}
	cout << sum;
	return 0;
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!