C#实现哥德巴赫猜想
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#实现哥德巴赫猜想相关的知识,希望对你有一定的参考价值。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace GoetheOfArithmetic { class Program { static void Main(string[] args) { Console.WriteLine("请输入一个大于6的偶数:"); int intNum = Convert.ToInt32(Console.ReadLine()); bool blFlag = ISGDBHArith(intNum); if (blFlag) { Console.WriteLine("{0}能写成两个素数的和,所以其符合哥德巴赫猜想。", intNum); } else { Console.WriteLine("猜想错误"); } Console.ReadLine(); } static bool ISGDBHArith(int intNum) { bool blFlag = false; if (intNum % 2 == 0 && intNum > 6) { for (int i = 0; i < intNum / 2; i++) { bool bl1 = IsPrimeNumber(i); bool bl2 = IsPrimeNumber(intNum - i); if (bl1 & bl2) { Console.WriteLine("{0}={1}+{2}", intNum, i, intNum - i); blFlag = true; } } } return blFlag; } static bool IsPrimeNumber(int intNum) { bool blFlag = true; if (intNum == 1 || intNum == 2) { blFlag = true; } else { int sqr = Convert.ToInt32(Math.Sqrt(intNum)); for (int i = sqr; i >= 2; i--) { if (intNum % i == 0) { blFlag = false; } } } return blFlag; } } }
以上是关于C#实现哥德巴赫猜想的主要内容,如果未能解决你的问题,请参考以下文章