3.1
孪生素数是指间隔为 2 的相邻素数,例如最小的孪生素数是3和5,5和7也是。输入N找出2-N之间的孪生素数的个数。
输入:N
输出:个数
样例:
10
2
法一
#include<stdio.h>
int a;
int isprime(int a)//判断素数的函数isprime
{
int i, put = 1;
for (i = 2; i < a; i++)//从2开始判断,无需判断该数目本身,故不用≤
if (a%i == 0)
put = 0;
return put;//1代表素数,0代表合数
}
int main()
{
int N, b, sum;
scanf("%d", &N);
sum = 0;
{
if (isprime(b) == 1 && isprime(b + 2) == 1)
sum++;
}
printf("%d", sum);
system("pause");
return 0;
}
法二
#include<stdio.h>
int a;
int isprime(int a)
{
int j, put;
put = 1;
for (j = 2; j < a; j++)
if (a%j == 0)
put = 0;
return put;
}
int main()
{
int h, b, sum, a_1, a_2;
scanf("%d", &h);
sum = 0;
a_1 = 2; a_2 = 2;
for (b = 2; b <= h; b++)
{
if (isprime(b) == 1)
{
a_2 = b;
}
if (a_2 - a_1 == 2)
{
sum++;
}
a_1 = a_2;
}
printf("%d", sum);
return 0;
}