早教吧作业答案频道 -->其他-->
3.(哥德巴赫猜想)C++编程题,希望大家帮忙做做,只要程序就行,任何解释内容都不需要。以下是题目要求题目描述著名的哥德巴赫猜想是:每个不小于6的偶数都可以表示为两个奇素数之
题目详情
3.(哥德巴赫猜想)C++编程题,希望大家帮忙做做,只要程序就行,任何解释内容都不需要。 以下是题目要求
题目描述
著名的哥德巴赫猜想是:每个不小于6的偶数都可以表示为两个奇素数之和。例如,16=3+13=5+11。下面需要你来编程验证一下哥德巴赫猜想是否正确。
输入
在输入的若干行数据中,每行仅有一个偶数N(6<=N<=2000000000)。
输出
你需要输出N行数据,每行以升序输出两个素数,这两个素数的和等于输入中的那个偶数,如果有多种选择,输出乘积最大的,例如 N==16时,输出5 11,而不是3 13。当你发现偶数N不能拆分成两个素数时,请立刻放下手中的程序,直接到A9找院长,因为你和大连东软信息学院都将名垂青史。
样例输入
6
16
20
样例输出
3 3
5 11
7 13
题目描述
著名的哥德巴赫猜想是:每个不小于6的偶数都可以表示为两个奇素数之和。例如,16=3+13=5+11。下面需要你来编程验证一下哥德巴赫猜想是否正确。
输入
在输入的若干行数据中,每行仅有一个偶数N(6<=N<=2000000000)。
输出
你需要输出N行数据,每行以升序输出两个素数,这两个素数的和等于输入中的那个偶数,如果有多种选择,输出乘积最大的,例如 N==16时,输出5 11,而不是3 13。当你发现偶数N不能拆分成两个素数时,请立刻放下手中的程序,直接到A9找院长,因为你和大连东软信息学院都将名垂青史。
样例输入
6
16
20
样例输出
3 3
5 11
7 13
▼优质解答
答案和解析
#include
int prime(int n)
{
int i;
for(i=2;i<=n/2;i++){
if(n%i==0)return 0; }
if(i>n/2)return 1;
}
int main()
{
int n,i,j;
printf("Input n:");
scanf("%d",&n);
for(i=3;i<=n/2;i++)
if((prime(i)==1)&&(prime(n-i)==1))j=i;
printf("%d=%d+%d ",n,j,n-j);
return 0;
}
int prime(int n)
{
int i;
for(i=2;i<=n/2;i++){
if(n%i==0)return 0; }
if(i>n/2)return 1;
}
int main()
{
int n,i,j;
printf("Input n:");
scanf("%d",&n);
for(i=3;i<=n/2;i++)
if((prime(i)==1)&&(prime(n-i)==1))j=i;
printf("%d=%d+%d ",n,j,n-j);
return 0;
}
看了 3.(哥德巴赫猜想)C++编...的网友还看了以下:
2sin15°cos15°怎么算?我很久以来N节课没听懂,我也不想去问同学,不是不说就是数落一顿还是 2020-03-30 …
你能否构造一个二元一次方程组,使它同时满足下列条件:(1)x=2,y=2是两个方程的公共解(2)x 2020-04-26 …
无氧呼吸的第二阶段是否释放能量?应该是不释放 老师说的,乱说胡说混分来的请闪开 禁水素质楼 2020-05-14 …
关于人和狗的哲学问题为什么狗要咬人时,人若打狗就是狗咬狗,要是不打就白咬了!如果狗主人是个有社会江 2020-05-16 …
怎么背8句长句快老师让背8个句子,句子倒是不长就是名人的名字和国家挺长的,明天就要默写,怎么快速被 2020-06-13 …
这样算不算反义疑问范畴?或者一个道理?不懂的不要混淆视听比如反义疑问,don'tuwanttogo 2020-06-29 …
数学不好怎么办呀?我的其它科目都好,就是数学丢人!我也不是不会!就是一见数学题就脑子一片空白什么都不 2020-11-21 …
运算符号的权限范围内可实现某种操作.权限大于该运算符号的一个或几个运算符号相组合亦可实现上述的运算. 2020-11-25 …
表达“永远不放弃”的意思,用neverandeverdontgiveup,这个dont是要还是不要就 2020-12-22 …
三极管是什么?怎么用?据说它是小电流控制大电流的,那就是变化微弱的电流从而控制变化大的电流.那么大电 2021-01-04 …