码迷,mamicode.com
首页 > Windows程序 > 详细

在c#用控制语句完成哥德巴赫猜想(一个大于二的偶数一定是两个质数之和)

时间:2017-08-20 12:38:54      阅读:304      评论:0      收藏:0      [点我收藏+]

标签:put   adl   ++   clear   大于   创建   用户输入   思路   input   

思路:首先分析判断,整个程序都是重复输入数字,所以整个过程都是在一个死循环语句中,这是就可以用一个whil语句,条件为true;其次对用户输入的数字input进行判断,去除小于等于2和大于2的基数,剩下的数字就能满足条件了;再然后找出1-input之间的的一个质数i;这是定义一个k,k等于input-i;再判断i,如果i也是质数,那就可以输出input=i+k;最终完成计算。(当编码太多时,最好创建区间来分开,这易于分析和找错)

代码如下:

while (true)
{

Console.Write("请输入一个大于2的偶数:");
int input = int.Parse(Console.ReadLine());
#region\\去除小于等于2的数
if (input <= 2)
{
Console.Write("输入有误,请按回车键重新输入!");
Console.ReadLine();
Console.Clear();
}
#endregion
else
{
#region//去除基数
if (input % 2 != 0)
{
Console.Write("输入有误,请按回车键重新输入!");
Console.ReadLine();
Console.Clear();
}
#endregion

else
{


for (int i = 2; i <( input/2)+1; i++)
{
bool falg = false;
for (int j = 2; j < i; j++)
{
if (i % j == 0)
{
falg = true;
}

}
if (!falg)
{
int k = input - i;
if(k>1){
bool abc = false;
for (int x = 2; x < k; x++)
{
if (k % x == 0)
{
abc = true;
}
}
if (!abc)
{
Console.Write(input + "=" + i + "+" + k);
Console.ReadLine();
Console.Clear();
}
}

}
}


}

}
}

在c#用控制语句完成哥德巴赫猜想(一个大于二的偶数一定是两个质数之和)

标签:put   adl   ++   clear   大于   创建   用户输入   思路   input   

原文地址:http://www.cnblogs.com/zldblogs/p/7399365.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!