这么将100分解成两个质数的和
谢谢
2020-05-06 15:39
2020-05-06 16:01
程序代码:#include<stdio.h>
int isprime(unsigned int val);
int main(void)
{
unsigned int i;
printf("100 is decomposed into two prime numbers:\n");
for(i=2; i <= 100; ++i){
if(isprime(i) && isprime(100-i)){
printf(" %d and %d\n", i, 100-i);
}
}
return 0;
}
int isprime(unsigned int val)
{
unsigned int i;
for(i=2; i!=val; ++i){
if(0 == val%i){
break;
}
}
if(i >= val){
return 1;
}else{
return 0;
}
}

2020-05-06 18:11
程序代码:#include<stdio.h>
#define MAX 100
int main()
{
int a[MAX],num,i,j=0,k;
for(num=2; num<MAX; num++) //筛法找出100以内的素数
{
for(i=2; i<num; i++)
{
if(num%i==0)
break;
}
if(i==num)
a[j++]=num;
}
for(i=0;i<j;i++) //对每一个素数 查表检查 100-素数 是不是素数
{
if(a[i]>MAX/2)
break;
for(k=0;k<j;k++)
{
if(100-a[i]==a[k])
{
printf("%d,%d\n",a[i],a[k]);
break;
}
}
}
return 0;
}

2020-05-07 18:54