哥德巴赫猜想(java)
哥德巴赫猜想:每一个不小于6的偶数都是两个奇素数之和,在这里的关键就是把一个大于等于6的偶数分解成两个质数,把一个数分解成两个数之和很好办,但要是两个质数,我们就需要先掌握判断质数的方法。
判断质数:
public static boolean isPrime(int i){if(i<2)return false; //true代表是质数,false代表不是质数if(i==2)return true;if(i%2==0)return false;for(int i1 =3;i1<i/2;i1+=2){if(i%i1==0)return false;}return true;}
当掌握了判断质数的方法,后面的事情就很好做了。
完整代码:
public class ABC {public static void main(String[] args) {Scanner sc =new Scanner(System.in);System.out.println("请输入一个大于等于6的偶数:");int n =sc.nextInt();while(n<6||n%2==1){System.out.println("请重新输入:");n=sc.nextInt();}for(int i =3;i<=n/2;i+=2){if(isPrime(i)&&isPrime(n-i))//如果n的两个分解数是质数,则输出{System.out.println(n+"="+i+"+"+(n-i));}}}
//判断i是否是质数public static boolean isPrime(int i){if(i<2)return false;if(i==2)return true;if(i%2==0)return false;for(int i1 =3;i1<i/2;i1+=2){if(i%i1==0)return false;}return true;}
}
测试结果:
总结: 要想实现哥德巴赫猜想,就要掌握判断质数的方法,这是核心吧。
哥德巴赫猜想(java)相关推荐
- 哥德巴赫猜想(洛谷P1304题题解,Java语言描述)
题目要求 P1304题目链接 分析 哥德巴赫猜想~~这题名字真敢起,666 既然看的是大于2的偶数,那我们不如step=2的方式来迭代~~ 需要编写prime~素数的算法 我写的也不是很好啦,但是看起 ...
- Java实现哥德巴赫猜想
验证哥德巴赫猜想:任何一个大于 6 的偶数,都能分解成两个质数的和.要求输入一个整数,输出这个 数能被分解成哪两个质数的和. eg : 14 14=3+11 14=7+7 public class T ...
- Java编程验证哥德巴赫猜想:任何一个大于6的偶数,都能分解成两个质数的和
package com.pzhu.demo;import java.util.Scanner;public class Goldbach {//Java编程验证哥德巴赫猜想:任何一个大于6的偶数,都能 ...
- Java编程序哥德巴赫猜想
著名的哥德巴赫猜想是:每个不小于 6 的偶数都可以表示为两个奇素数之和. 例如16=3+13=5+11.下面需要你来编程验证一下哥德巴赫猜想是否正确. Input 在输入一个偶数N(6<=N&l ...
- 练习-Java循环综合练习二之哥德巴赫猜想
本题使用了isPrime()函数,如果整数是素数,返回True,否则返回False. 加油,未来在等你去创造. public class GeTest {// 判断整数是否是素数public stat ...
- Java用(函数)方法验证哥德巴赫猜想(Goldbach)(一个偶数一定等于两个素数之和)本题以100以内的偶数为例
public class function2 { //记得修改文件名或类名public static void main(String[] args) {// TODO Auto-generated ...
- 1224 哥德巴赫猜想(2)
1224 哥德巴赫猜想(2) Time Limit : 2000/1000 MS(Java/Others) | Memory Limit :65536/32768 KB(Java/Others) Su ...
- 洛谷 P1304 哥德巴赫猜想
文章目录 题目 题解 代码 Java 版 C++ 版 题目 题目链接 题解 1.首先编写求质数函数,注意 两个语言的求根方法 Java : Math.sqrt(n) 其中 Math 在 Java.la ...
- 洛谷P1304 哥德巴赫猜想
输入一个偶数 N(N<=10000),验证4~N所有偶数是否符合哥德巴赫猜想:任一大于 2 的偶数都可写成两个质数之和.如果一个数不止一种分法,则输出第一个加数相比其他分法最小的方案.例如 10 ...
最新文章
- java数组简单介绍以及其方法
- 中国蚁剑的下载、安装与使用
- wxWidgets:wxRichTextStyleListCtrl类用法
- Java多线程:线程安全和非线程安全的集合对象
- python安装运行时提示不是内部或外部命令怎么办_如何解决cmd运行python提示不是内部命令...
- php 图片合成,PHP中多张图片合成一张图片例子
- 产品经理如何利用ER图,指导原型设计?
- mysql最小费用最大流问题_图论-网络流之最小费用最大流问题
- python壁纸超清全面屏_iOS 关于全面屏适配的方案及UI在不同尺寸下适配方案
- 交换知识 VLAN VTP STP 单臂路由
- nettry 入站事件如何传递到下一个handler
- SpringBoot+Swagger2
- android 车牌字符分割,车牌识别 之 字符分割
- CSS 控制边框样式
- 李沐-->深度学习计算
- Android复杂页面代码拆分方法
- oracle创建索引指定用户,循序渐进学Oracle之索引、权限、角色
- 【手把手教学】利用七牛云免费CDN服务为自己网站启用图片CDN加速 - 免费版10G/月
- 保研面试,考研复试-万能模板,一分钟到三分钟英语口语自我介绍。
- 微信小程序版“美图秀秀”源码