哥德巴赫猜想c#语言,哥德巴赫猜想算法c#实现方法_裴一飞的博客-程序员秘密

技术标签: 哥德巴赫猜想c#语言  

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace GDBHArith

{

class Program

{

#region  判断一个数是否是素数

///

/// 判断一个数是否是素数

///

/// 要判断的数

/// 如果是,返回true,否则,返回false

static bool IsPrimeNumber(int intNum)

{

bool blFlag = true;                 //标识是否是素数

if (intNum == 1 || intNum == 2)     //判断输入的数字是否是1或者2

blFlag = true;                  //为bool类型变量赋值

else

{

int sqr = Convert.ToInt32(Math.Sqrt(intNum));   //对要判断的数字进行开方运算

for (int i = sqr; i >= 2; i--)  //从开方后的数进行循环

{

if (intNum % i == 0)        //对要判断的数字和指定数字进行求余运算

{

blFlag = false;         //如果余数为0,说明不是素数

}

}

}

return blFlag;                      //返回bool型变量

}

#endregion

#region 判断一个数是否符合哥德巴赫猜想

///

/// codego.net/1/1/1/判断一个数是否符合哥德巴赫猜想

///

/// 要判断的数

/// 如果符合,返回true,否则,返回false

static bool ISGDBHArith(int intNum)

{

bool blFlag = false;                //标识是否符合哥德巴赫猜想

if (intNum % 2 == 0 && intNum > 6)  //对要判断的数字进行判断

{

for (int i = 1; i <= intNum / 2; i++)

{

bool bl1 = IsPrimeNumber(i);             //判断i是否为素数

bool bl2 = IsPrimeNumber(intNum - i);    //判断intNum-i是否为素数

if (bl1 & bl2)

{

//输出等式

Console.WriteLine("{0}={1}+{2}", intNum, i, intNum - i);

blFlag = true;          //符合哥德巴赫猜想

}

}

}

return blFlag;                      //返回bool型变量

}

#endregion

static void Main(string[] args)

{

Console.WriteLine("输入一个大于6的偶数:");          //提示输入信息

int intNum = Convert.ToInt32(Console.ReadLine());   //记录输入的数字

bool blFlag = ISGDBHArith(intNum);                  //判断是否符合哥德巴赫猜想

if (blFlag)                                         //如果为true,说明符合,并输出信息

{

Console.WriteLine("{0}能写成两个素数的和,所以其符合哥德巴赫猜想。", intNum);

}

else

{

Console.WriteLine("猜想错误。");

}

Console.ReadLine();

}

}

}

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_35009071/article/details/117270602

智能推荐

node架构与模块机制_sara098的博客-程序员秘密

回到nodenode特性基于chrome V8特性基于事件驱动非阻塞ionode的web开发优势高并发服务高性能io node内部有一个进程池前后端代码统一node内部架构 通过绑定调用C++,js可以调用c++程序。js是单线程的,如何去调用底层呢 node有一个插件比如libuv用来读取文件。node底层c++有一个线程池,这个跟js无关。还有事件循环,有一个循环机制维护一个消息队列node...

anychat for android sdk,AnyChat For Android SDK_涂诗语的博客-程序员秘密

SDK包概述AnyChat是一套跨平台的音、视频即时通讯解决方案,支持Windows、Linux、Mobile、Android、iOS、Mac等操作系统平台,提供客户端SDK、服务器端SDK,可与第三方平台紧密集成。AnyChat for Android采用JNI接口技术,提供纯JAVA接口,支持Android 2.1、Android 2.2 Android 2.3以及Android 4.x等平台...

react/react native 组件的刷新机制_react-native 强制刷新组件_ohyeahhhh的博客-程序员秘密

组件(Component)的刷新机制一个组件在加载完毕后,如果既没有外部驱动,也没有内部驱动,是不会进行重新渲染的。按照React文档上说的,组件想要对自身进行刷新,可以通过调用setState()或者forceUpdate()来实现,这是让组件刷新的其中一种办法,也就是我说的内部驱动。而另一中则是由外部驱动,也就是让父组件驱动子组件进行重新渲染,那么下面就是阐述父组件如何让子组件发生重新渲染。先说

The Way to Home(动态规划,模拟)_oj the way to home_小兔崽崽!的博客-程序员秘密

A frog lives on the axis Ox and needs to reach home which is in the point n. She starts from the point 1. The frog can jump to the right at a distance not more than d. So, after she jumped from the po...

[转贴]计算机编程名言精选_大熊猫侯佩的博客-程序员秘密

计算机4、跟计算机工作酷就酷在这里,它们不会生气,能记住所有东西,还有,它们不会喝光你的啤酒.(保罗利里,吉他手)5、如果汽车能赶上计算机的发展周期的话,一辆今天的劳斯莱斯仅值100美元,每加仑要跑100万英里,每年还得爆炸一次,把里面的人杀个精光.(Robert X. Cringely,技术作家)计算机智能8、计算机会不会思考这个问题就像问潜水艇会不会游泳一样

用 Python 将 html 转为 pdf、word_平静愉悦的博客-程序员秘密

在日常中有时需将 html 文件转换为 pdf、word 文件。网上免费的大多数不支持多个文件转换的情况,而且在转换几个后就开始收费了。转 pdf转 pdf 中使用 pdfkit 库,它可以让 web 网页直接转为 pdf 文件,多个 url 可以合并成一个文件。安装 pdfkit 库pip3installpdfkit安装 wkhtmltopdf 文件pdfkit 是基于 wkhtmltopdf 的 python 封装库,所以需要安装 wkhtmltopdf 软件。...

随便推点

不学了,不学了,不学Android了,干嘛一直逼我学“落伍”的技术...... 朋友:学好了字节年薪百万!_android 编程系统已经落伍了_Android725的博客-程序员秘密

我觉得我们首先应该明确的就是,安卓开发目前的发展对象;还有就是什么是Android(安卓),Android(安卓)学习方向和知识要点,以及Android(安卓)学成后会成为哪个方向的人才,最后,还要分析一下目前,当这些情况分析总结后,我们才能够更好的知道,学习完安卓的课程后,我们会成为哪些工作领域的精英。接下来我们就先了解一下何为Android(安卓)的由来、Android(安卓)工程师、Android(安卓)系统架构等。附:系统学习视频 (点击跳转B站学习)点击直接下载视频:【点击获取】

radius介绍_radius coa相关协议_mi_mang的博客-程序员秘密

今天看了一片关于网络接入卡的介绍。下面是看了这片文章后,关于radius协议的见解。 

scipy.cluster模块实现kmeans聚类_布衣书生real的博客-程序员秘密

简单验证该模块功能whiten(数组) 函数:先将数组各列求标准差,然后将数组每个元素分别除以该标准差例如: [[1,1], [1,0], [5,5] [5,4]]二维数组,第一列1,1,5,5标准差为2,则该函数输出结果第一列分别为0.5,0.5,2.5,2.5import numpyfrom scipy.cluster.vq import *matrix = [[1,

OSS云存储_oss region_SZH勿忘初心的博客-程序员秘密

阿里云对象存储服务(Object Storage Service 简称OSS) 是阿里云提供的海量 安全 低成本 高可靠的云存储服务。OSS云存储简介阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存储服务。其数据设计持久性不低于 99.9999999999%(12 个 9),服务设计可用性(或业务连续性)不低于 99.995%。可以使用阿里云提供的 API、SDK 接口或者 OSS 迁移工具轻松地将海量数据移入或移出阿

CPU卡密钥管理系统_用户cpu卡 传输秘钥_lonet的博客-程序员秘密

在传统的密钥管理系统中,密钥通常是存储在设计机或磁盘里,并借助于网络、磁盘以邮件的方式进行传递。为了安全起见,通常在传递之前,必须先将所要传递的密钥进行加密处理,接收方收到后再对其进行解密处理。由于采用这种方式时仍然需要传递密钥,只是具体的密钥对象改变了,因此安全性还是没有明显地提高;即命名采用专门的硬件加密机器进行加密处理,但由于储存和传递环节的影响,其安全性能仍等同于软件加密效果,为此有必要提

矩阵是否正定/负定、半正定/半负定的判断_半正定矩阵_使君杭千秋的博客-程序员秘密

矩阵是否正定/负定、半正定/半负定的判断一、常用定义正定矩阵:一个n阶的实对称矩阵M是正定的的条件是当且仅当对于所有的非零实系数向量z,都有z’Mz&gt;0,其中z’表示z的转置;负定矩阵:一个n阶的实对称矩阵M是正定的的条件是当且仅当对于所有的非零实系数向量z,都有z’Mz&gt;0,其中z’表示z的转置;半正定矩阵:一个n阶的实对称矩阵M是正定的的条件是当且仅当对于所有的非零实系数向量z,都有z’Mz≥0,其中z’表示z的转置;半负定矩阵:一个n阶的实对称矩阵M是正定的的条件是当且仅当对于所