本题要求统计给定整数M和N区间内素数的个数并对它们求和。
输入格式
输入在一行中给出两个正整数M和N(1≤M≤N≤500)。
输出格式
在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。
输入样例
10 31
输出样例
7 143
#include <stdio.h>
int main()
{
int M, N;
scanf("%d %d", &M, &N);
int count = 0;
int sum = 0;
for (int i = M; i <= N; i++) //被除数,区间[M,N]
{
int flag = 0; //flag=1是素数
//1既不是质数也不是合数
if (i == 2)
{
flag = 1;
}
else if(i > 2)
{
for (int j = 2; j < i; j++) //除数,区间[2,i-1](i为被除数)
{
if (i % j != 0) //不能整除,验证下一个除数
{
if (j == i - 1)
{
flag = 1;
break;
}
continue;
}
if (i % j == 0) //能整除,不是素数,验证下一个被除数
break;
}
}
if (flag == 1)
{
sum += i;
count++;
}
}
printf("%d %d\n", count, sum);
return 0;
}