哥德巴赫猜想c语言流程图
展开全部
网上标准答案
一)设计思想:
1:为了证明一个小于都2000的偶数,能被两个素数相加,首先求出1-2000内的所有素数,以方便相加,我们将保存在一个sushu[2000]数组中备用。
2:从键盘输入一个偶数后在核心函数中处理,寻找合适的两个素数。
3:输出结果。
二)流程图:
(画不出来改成文字了)
1:声明所需的变量及数组
2:求出所有2000以内的素数保存在数组中备用。
3:输入一个偶数,并在素数组中寻找合适的两个素数
4:将结果输出
三)难重点及解决方法:
1:2000以内的素数的求出,我们用了两个循环套来使得素数各方面条件都得到满足后保存入数组。
2:查找满足的两个素数,为了能查到匹配的两个素数,我们也用了两个循环套来保证一个不漏的找到。
四)核心内容:
1:求素数的内容如下:
s=ss=0;
sushu[0]=2;
xiabiao=1;
for (int s=3;s<2000;s++)
{
for (int ss=2;ss<=s;ss++)
{
if (0==s%ss) break;
}
if (s==ss) sushu[xiabiao++]=s;
}
////////////////////////////////////////////////////
2:查找匹配的两个素数的内容如下:
for (s=0;s<xiabiao-1;s++)
{
for (ss=s+1;ss<xiabiao;ss++)
{
if (m_1==sushu[s]+sushu[ss])
{
m_2=sushu[s];
m_3=sushu[ss];
UpdateData(FALSE);
return ;
}
}
}
一)设计思想:
1:为了证明一个小于都2000的偶数,能被两个素数相加,首先求出1-2000内的所有素数,以方便相加,我们将保存在一个sushu[2000]数组中备用。
2:从键盘输入一个偶数后在核心函数中处理,寻找合适的两个素数。
3:输出结果。
二)流程图:
(画不出来改成文字了)
1:声明所需的变量及数组
2:求出所有2000以内的素数保存在数组中备用。
3:输入一个偶数,并在素数组中寻找合适的两个素数
4:将结果输出
三)难重点及解决方法:
1:2000以内的素数的求出,我们用了两个循环套来使得素数各方面条件都得到满足后保存入数组。
2:查找满足的两个素数,为了能查到匹配的两个素数,我们也用了两个循环套来保证一个不漏的找到。
四)核心内容:
1:求素数的内容如下:
s=ss=0;
sushu[0]=2;
xiabiao=1;
for (int s=3;s<2000;s++)
{
for (int ss=2;ss<=s;ss++)
{
if (0==s%ss) break;
}
if (s==ss) sushu[xiabiao++]=s;
}
////////////////////////////////////////////////////
2:查找匹配的两个素数的内容如下:
for (s=0;s<xiabiao-1;s++)
{
for (ss=s+1;ss<xiabiao;ss++)
{
if (m_1==sushu[s]+sushu[ss])
{
m_2=sushu[s];
m_3=sushu[ss];
UpdateData(FALSE);
return ;
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询