1.接口实现

package goldbach;
/**
* 输入一个大于6的偶数,请输出这个偶数能被分解为哪两个质数的和。如:10=3+7 12=5+7
* 此为按接口实现类完成
*
* @author GGGXXC
*
*/
public class InterfaceGoldbachGuess {
public static void main(String[] args) {
divideNum(new InterGoldBach(), 100);
} /**
* 将两个数字分成两个,分别判断是不是素数
* @param cp 传入的CheckPrime接口的实现类
* @param target 传入的目标值
*/
public static void divideNum(CheckPrime cp, int target) {
for (int i = 2; i <= target / 2; i++) { if (cp.isPrime(i) && cp.isPrime(100 - i)) {
System.out.println(i + "和" + (target - i));
} } } } /**
* 定义检查一个整数是不是素数的接口
*/
interface CheckPrime {
boolean isPrime(int n);
}
/**
* 采用接口的方式检查某个整数是不是素数
*
* @author GGGXXC
*
*/
class InterGoldBach implements CheckPrime {
public boolean isPrime(int n) { // 这里能加上static吗? int k = 2; while (k <= n / 2) {
if (n % k == 0) {
return false;
}
k++;
}
return true;
}
}

2.封装实现

package goldbach;

/**
* 输入一个大于6的偶数,请输出这个偶数能被分解为哪两个质数的和。如:10=3+7 12=5+7
* 此为封装成方法的方式
*
* @author GGGXXC
*
*/
public class Goldbach {
public static void main(String[] args) { int target = 100; for (int i = 2; i <= target / 2; i++) {
boolean ret = isPrime(i) && isPrime(100 - i); if (ret) {
System.out.println(i + "和" + (target - i));
}
} } /**
* 判断传入的数字是不是质数
*
* @param num 需要判断是否是质数的数字
* @return 是质数返回true,不是质数返回false
*/
public static boolean isPrime(int num) { int k = 2; while (k <= num / 2) {
if (num % k == 0) {
return false;
}
k++;
}
return true;
} }

哥德巴赫猜想 Java实现的更多相关文章

  1. P1579_哥德巴赫猜想(JAVA语言)

    题目背景 1742年6月7日哥德巴赫写信给当时的大数学家欧拉,正式提出了以下的猜想:任何一个大于9的奇数都可以表示成3个质数之和.质数是指除了1和本身之外没有其他约数的数,如2和11都是质数,而6不是 ...

  2. Java实现蓝桥杯算法提高 哥德巴赫猜想

    试题 算法提高 哥德巴赫猜想 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 根据所给函数(判断一个整数是否是素数),然后依托该函数,将输入N内的偶数(6-N),输出为两个素数之和( ...

  3. Java实现哥德巴赫猜想

    验证哥德巴赫猜想:任何一个大于 6 的偶数,都能分解成两个质数的和.要求输入一个整数,输出这个 数能被分解成哪两个质数的和. eg : 14 14=3+11 14=7+7 public class T ...

  4. Java实现 洛谷 P1579 哥德巴赫猜想(升级版)

    题目背景 1742年6月7日哥德巴赫写信给当时的大数学家欧拉,正式提出了以下的猜想:任何一个大于9的奇数都可以表示成3个质数之和.质数是指除了1和本身之外没有其他约数的数,如2和11都是质数,而6不是 ...

  5. *CF2.D(哥德巴赫猜想)

    D. Taxes time limit per test 2 seconds memory limit per test 256 megabytes input standard input outp ...

  6. C#实现哥德巴赫猜想

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Goet ...

  7. code forces 382 D Taxes(数论--哥德巴赫猜想)

    Taxes time limit per test 2 seconds memory limit per test 256 megabytes input standard input output ...

  8. CF735D Taxes 哥德巴赫猜想\判定素数 \进一步猜想

    http://codeforces.com/problemset/problem/735/D 题意是..一个数n的贡献是它的最大的因子,这个因子不能等于它本身 然后呢..现在我们可以将n拆成任意个数的 ...

  9. Codeforces Round #382 (Div. 2) D. Taxes 哥德巴赫猜想

    D. Taxes 题目链接 http://codeforces.com/contest/735/problem/D 题面 Mr. Funt now lives in a country with a ...

随机推荐

  1. 替换input单选框的样式

    实现效果:. css的input单选框的样式很丑,有时候不想使用原生的样式,如上照片,可以使用下面的方法. 思路是,给inpu加visibility:hidden隐藏,然后使用不同的图片绝对定位覆盖在 ...

  2. JAVA_WEB--jsp概述

    JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态网页技术 ...

  3. 积性函数初步(欧拉$\varphi$函数)

    updata on 2020.4.3 添加了欧拉\(\varphi\)函数为积性函数的证明和它的计算方式 1.积性函数 设\(f(n)\)为定义在正整数上的函数,若\(f(1)=1\),且对于任意正整 ...

  4. ASP.NET Core的配置信息

    ASP.NET Core的配置信息 Key-Value键值对 内存里.JSON.XML.INI等文件 配置信息与配置系统是解耦的 可以依赖注入 ASP.NET Core的配置信息来源 appsetti ...

  5. thinkphp操作phpexcel问题

    一.thinkphp引入PHPExcel到/Thinkphp/Library/Vendor/ 二.在控制器中引用 public function get_detail() { Vendor(" ...

  6. HTTP GET | POST | DELETE请求

    依赖: <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp& ...

  7. 我的第一个UWP程序

    1.为什么喜欢UWP 本人无悔入网易云音乐,各种设备上都少不了这个红色图标的软件 从win10发布,网易做了UWP版本的云音乐 应用轻巧.简洁.功能全,接着又下了许多UWP的应用 都给人不一样的感觉, ...

  8. Coursera课程笔记----C程序设计进阶----Week 5

    指针(二) (Week 5) 字符串与指针 指向数组的指针 int a[10]; int *p; p = a; 指向字符串的指针 指向字符串的指针变量 char a[10]; char *p; p = ...

  9. OpenWrt R2020.03.05 去广告 抗污染 加速 UnPnP NAS

    固件版本已经更新,新版本链接:https://www.cnblogs.com/zlAurora/p/12500932.html   容我啰嗦一下,为什么会有这个固件.   从KoolShare LED ...

  10. [hihoCoder1231 2015BeijingOnline]求圆与多边形公共部分的周长

    题意:如题 思路:离散.将所有交点求出来,相当于将多变形的边切成了很多条元边,对每条元边,有两种情况 在圆内,答案加上此边长 在圆外,答案加上此边相对于圆心的"有向转弧" #inc ...