/*
3.验证1-100之內的数是否符合哥德巴赫猜想:
哥德巴赫猜想: 所有大于2的偶数都是两个素数之和.
素数定义为: 一个数除了1和自己本身之外不被任何数整除.
*/
public class GeBaDaGuess {
private int number;
private Set<Integer> numbers = new HashSet<Integer>();
public GeBaDaGuess(int number) {
this.number = number;
}
public void Guess() {
for (int i = 2; i <= number; i++) {
if (i % 2 == 0) {
boolean b = false;
for(int k:numbers) {
if(numbers.contains(i-k)) {
b = true;
break;
}
}
//if(b) System.out.println(i + "符合");
//else System.out.println(i + "不符合 ");
} else {
boolean b = true;
int temp = (int)Math.sqrt(i);
for (int j = 2; j < temp; j++) {
if (i % j == 0) {
b = false;
break;
}
}
if (b) {
numbers.add(i);
}
}
}
}
//测试
public static void main(String[] args) {
long startTime = System.currentTimeMillis();
new GeBaDaGuess(10000000).Guess();
System.out.println(System.currentTimeMillis() - startTime);
//System.out.println(Math.sqrt(100));
}
}
思想:一个偶数是否是两个素数的之和
当遇到是偶数的时候我们就进行判断,当遇到时奇数的时候就判断它是不是素数,如果是的话就把它放到素数集合numbers当中,
然后每个是偶数的时候判断就是遍历所有的素数,用这个偶数减去正在遍历的素数,看看结果的数在不在素数集合中,在的话就满足
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/why7282299/archive/2010/12/21/6089515.aspx
分享到:
相关推荐
【哥德巴赫猜想】是数学领域中一个著名的未解决问题,它由18世纪的普鲁士数学家克里斯蒂安·哥德巴赫提出。哥德巴赫猜想的基本表述是:每一个大于2的偶数都可以表示为两个质数之和。这个猜想至今未被证明,但已引发...
1157:哥德巴赫猜想 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 14300 通过数: 8298 【题目描述】 哥德巴赫猜想的命题之一是:大于6 的偶数等于两个素数之和。编程将6~100所有偶数表示成两个素数之和。 【输入...
哥德巴赫猜想,是数学领域中未解决的难题之一,由18世纪的普鲁士数学家克里斯蒂安·哥德巴赫提出。这个猜想陈述了一个关于偶数的基本假设:**任何大于2的偶数都可以表示为两个素数之和**。至今,尽管经过众多数学家...
从关于偶数的哥德巴赫猜想,可推出:任一大于7的奇数都可写成三个质数之和的猜想。后者称为“弱哥德巴赫猜想”或“关于奇数的哥德巴赫猜想”。若关于偶数的哥德巴赫猜想是对的,则关于奇数的哥德巴赫猜想也会是对的...
哥德巴赫猜想是数学领域的一个著名未解决问题,由普鲁士数学家克里斯蒂安·哥德巴赫在1742年提出。这个猜想简单来说是:每一个大于2的偶数都可以表示为两个质数之和。至今,尽管经过众多数学家的努力,但这个猜想...
标题:“C++实现哥德巴赫猜想之一:任意大于5的奇数可表示为三个素数之和” 描述:本文将深入探讨如何利用C++编程语言实现哥德巴赫猜想的一个特例,即“任意大于5的奇数可以表示为三个素数之和”。我们将通过一个...
### 哥德巴赫猜想及其C语言实现详解 #### 一、哥德巴赫猜想简介 哥德巴赫猜想是数学领域一个著名的未解决猜想,由德国数学家克里斯蒂安·哥德巴赫在1742年提出。该猜想可以表述为:任何大于2的偶数都可以表示为两...
### 哥德巴赫猜想与Python实现 #### 哥德巴赫猜想简介 哥德巴赫猜想是数学中的一个未解决的问题,由克里斯蒂安·哥德巴赫于1742年提出。该猜想可以分为两部分: 1. **弱哥德巴赫猜想**:每个大于5的奇数都可以...
数学领域著名的“哥德巴赫猜想”的大致意思是:任何一个大于2的偶数总能表示为两个素数之和。比如:24=5+19,其中5和19都是素数。本实验的任务是设计一个程序,验证20亿以内的偶数都可以分解成两个素数之和。 输入...
PTA【C语言】验证“哥德巴赫猜想”
哥德巴赫猜想 数据结构(C语言实现) 用C语言实现哥德巴赫猜想的数据结构!cpp文件。
**哥德巴赫猜想**是数学领域的一个著名未解决问题,由18世纪的普鲁士数学家克里斯蒂安·哥德巴赫提出。这个猜想表明,任何大于2的偶数都可以表示为两个质数之和。至今,尽管经过无数数学家的尝试,但尚未找到一个...
哥德巴赫猜想是数学领域的一个著名未解决问题,属于数论的一部分。这个猜想是由18世纪的普鲁士数学家克里斯蒂安·哥德巴赫提出的,它简单来说就是:“每一个大于2的偶数都可以表示为两个质数之和。”尽管至今为止...
**哥德巴赫猜想** 哥德巴赫猜想是数学领域中的一个未解决的难题,由18世纪的普鲁士数学家克里斯蒂安·哥德巴赫提出。这个猜想表述为:“任何大于2的偶数都可以表示为两个质数之和。”简单来说,就是所有偶数(除了2...
哥德巴赫猜想是数论领域的一个著名未解决问题,由18世纪的普鲁士数学家克里斯蒂安·哥德巴赫提出。这个猜想简单来说就是:任何大于2的偶数都可以表示为两个质数(素数)之和。虽然至今为止这个猜想尚未得到数学上的...
其中,哥德巴赫猜想和孪生素数猜想是数论中最为著名的未解决问题之一。Matlab,作为一款强大的数值计算和符号计算软件,被广泛应用于科研和教育领域,包括数论的研究。本资料包“Matlab在数论研究中的应用——用...
哥德巴赫猜想是数学领域一个著名的未解决问题,它由普鲁士数学家克里斯蒂安·哥德巴赫在1742年提出。猜想的内容是:任何大于2的偶数都可以表示为两个质数之和。这个猜想至今未被证明,也未被否定,成为了数论中的一...
哥德巴赫猜想\哥德巴赫猜想 C++验证源码
哥德巴赫猜想是数学上的一个未解决问题,由18世纪德国数学家哥德巴赫提出。它指出:每一个大于2的偶数都可以写成两个素数之和。尽管这个猜想至今未被证明,但众多数学家对其进行了大量的研究和验证。在本文中,庄严...