歌德巴赫猜想:任何一个大于6的偶数都可以写为两个素数之和。 看代码: using System; using System.Collections.Generic; using System.Text; namespace ExGoldbachConjecture { class GoldbachConjecture { public bool IsPrimeNumber(int n) { bool b = true; if (n == 1 || n == 2) b = true; else { int sqr = Convert.ToInt32(Math.Sqrt(n)); for (int i = sqr; i >= 2; i--) { if (n % i == 0) { b = false; } } } return b; } public bool goldbachConjecture(int n) { bool b = false; if (n % 2 == 0 && n > 6) { for (int i = 1; i <= n / 2; i++) { bool b1 = IsPrimeNumber(i);//判断i是否为素数 bool b2 = IsPrimeNumber(n - i);//判断n-i是否为素数 if (b1 & b2) { Console.WriteLine("{0}={1}+{2}",n,i,n-i); b = true; } } } return b; } static void Main(string[] args) { Console.WriteLine("输入一个大于6的偶数"); int n = Convert.ToInt32(Console .ReadLine ()); GoldbachConjecture g=new GoldbachConjecture (); bool b = g.goldbachConjecture(n); if (b) { Console.WriteLine("{0}能写成两个素数的和。", n); } else { Console.WriteLine("猜想错误。"); } } } }