标题:[求助]将一个偶数表示成两个素数之和
只看楼主
ljfljf2006
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-11
 问题点数:0 回复次数:1 
[求助]将一个偶数表示成两个素数之和
输入一个偶数,按回车后就会直接退出.望高手指点错误的地方.

#include "math.h"
int sushu(int);
void even(int);
main()
{int a;
printf("enter a number ");
scanf("%d",&a);
if (a%2==0) even(a);
else printf ("%d is not a ou shu",a);
int sushu(int a)
{ int i;
for(i=2;i<=sqrt(a);i++)
if(a%i==0) return 0;
return 1;
}
void even(int a)
{ int i;
for(i=2;i<=a/2;i++)
if(sushu(i) && shusu(a-i))
{printf("%d=%d+%d",a,i,a-i);return;}
}
}

[此贴子已经被作者于2007-6-16 20:56:34编辑过]

搜索更多相关主题的帖子: 素数 int 偶数 之和 
2007-06-16 20:54
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
#include "math.h"
int sushu(int);
void even(int);
main()
{int a;
printf("enter a number ");
scanf("%d",&a);
if (a%2==0) even(a);
else printf ("%d is not a ou shu",a);
getch();
}
int sushu(int a)
{ int i;
for(i=2;i<=sqrt(a);i++)
if(a%i==0) return 0;
return 1;
}
void even(int a)
{ int i;
for(i=2;i<=a/2;i++)
if(sushu(i) && sushu(a-i))
{printf("%d=%d+%d",a,i,a-i);return;}
}

小问题.
注意的是要考虑2的处理还有一个偶数不止对应一组素数.

倚天照海花无数,流水高山心自知。
2007-06-16 22:21



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-148093-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.810104 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved