1 /*44 【程序 44 偶数的素数和】
2 题目:一个偶数总能表示为两个素数之和。
3 */
4
5 /*分析
6 * 1、从键盘得到一个偶数(大于2的偶数,因为1不是素数)
7 * 2、用for循环从2开始遍历到n,j=n-i,如果j和i都是素数,输出结果,并停止循环
8 * 3、写出判断素数的函数,在for循环遍历的过程中调用
9 * 4、素数:除了1和其本身,没有其他的因数了---for循环遍历,如果遇到其他的数能除得尽,返回false;否者返回true
10 * */
11
12 package homework;
13
14 import java.util.Scanner;
15
16 public class _44 {
17
18 public static void main(String[] args) {
19 // 提示一个大于2的偶数
20 System.out.println("请输入一个大于2的偶数:");
21 // new一个系统输入扫描器
22 Scanner sc=new Scanner(System.in);
23 //声明n,并从键盘得到n
24 int n;
25 n=sc.nextInt();
26 //判断n是否为偶数,如果不是,提示重新输入
27 while((n%2!=0)||(n<=2)) {
28 System.out.println("输入错误,请重新输入:");
29 n=sc.nextInt();
30 }
31
32 //利用for循环遍历
33 for (int i = 2,j; i < n; i++) {
34 j=n-i;
35 if(isPrime(i)&isPrime(j)) { //判断i和j是否均为素数
36 System.out.println("偶数"+n+"为素数"+i+"和素数"+j+"的和");
37 }
38 }
39
40
41 }
42
43 private static boolean isPrime(int x) {
44 // 声明一个返回值
45 boolean isPrime = true; //默认为素数
46 // 利用数学方法,遍历2-根号x,判断是否有其他因数
47 for (int i = 2; i <= Math.sqrt(x); i++) {
48 if(x%i==0) {
49 isPrime=false; //如果有,就不是素数
50 break;
51 }
52 }
53 return isPrime;
54 }
55
56 }

java例题_44 一个偶数总能表示为两个素数之和的更多相关文章

  1. 【C语言】输入一个整数N,求N以内的素数之和

    [C语言]输入一个整数N,求N以内的素数之和 /* ========================================================================== ...

  2. java笔试之查找组成一个偶数最接近的两个素数

    任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对. package test; import java.util.Sca ...

  3. 华为OJ平台——查找组成一个偶数最接近的两个素数

    import java.util.Scanner; /** * 问题描述:任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况, * 本题目要求输出组成指定偶数的两个素数差值最小 ...

  4. hdu 2098 分拆素数和(一个偶数拆分成两个不同素数和 拆法数量)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2098 分拆素数和 Time Limit: 1000/1000 MS (Java/Others)     ...

  5. Java怎么把一个.log文件,以text文件方式打开,显示在桌面

    总要有一个开始吧 群里面有一个哥们,问这个问题,索性记录下来, quextion: Java怎么把一个.log文件,以text文件方式打开,显示在桌面 anwser: 这里注意一个问题:拼接路径的时候 ...

  6. Java之第一个Java程序

    编写第一个Java程序 打开文本编辑器,输入以下代码 public class Hello { public static void main(String[] args) { System.out. ...

  7. 用Java语言编写一个简易画板

    讲了三篇概博客的概念,今天,我们来一点实际的东西.我们来探讨一下如何用Java语言,编写一块简易的画图板. 一.需求分析 无论我们使用什么语言,去编写一个什么样的项目,我们的第一步,总是去分析这个项目 ...

  8. 如何在JAVA中实现一个固定最大size的hashMap

    如何在JAVA中实现一个固定最大size的hashMap 利用LinkedHashMap的removeEldestEntry方法,重载此方法使得这个map可以增长到最大size,之后每插入一条新的记录 ...

  9. 利用java实现的一个发送手机短信的小例子

    今天闲来无事,在微博上看到一个关于用java实现的一个发送手机短信的程序,看了看,写的不太相信,闲的没事,把他整理下来,以后可能用得着 JAVA发送手机短信,流传有几种方法:(1)使用webservi ...

随机推荐

  1. Set-Cookie & Secure & HttpOnly & SameSite

    Set-Cookie & Secure & HttpOnly & SameSite HTTP/Headers/Set-Cookie Set-Cookie https://dev ...

  2. React 组件之间通信 All in One

    React 组件之间通信 All in One 组件间通信 1. 父子组件之间通信 props 2. 兄弟组件之间通信 3. 跨多层级的组件之间通信 Context API https://react ...

  3. shit 牛客网

    shit 牛客网 为什么,只可以 log 一次,什么垃圾逻辑呀! https://www.nowcoder.com/test/question/e46437833ddc4c5bb79f7af7a1b7 ...

  4. ES5 function & ES6 class & method type

    ES5 function & ES6 class & method type ES5 function "use strict"; /** * * @author ...

  5. color recognition by image

    color recognition by image 通过图像进行颜色识别 https://imagecolorpicker.com/ unknown color origin pic grey bl ...

  6. js & input event & input change event

    js & input event & input change event vue & search & input change <input @click=& ...

  7. NGK Baccarat流动性挖矿打造DeFi新风口

    2020年,DEFI成为了区块链领域最热门的概念之一.它就像乐高积木,将原来的金融模块,以不同的智能合约来实现.智能合约又以全新的方式将不同的金融功能拼接在一起,以创造出全新的金融产品. NGK.IO ...

  8. 从微信小程序到鸿蒙js开发【13】——list加载更多&回到顶部

    鸿蒙入门指南,小白速来!从萌新到高手,怎样快速掌握鸿蒙开发?[课程入口] 目录: 1.list加载更多 2.list回到顶部 3.<从微信小程序到鸿蒙js开发>系列文章合集 1.list加 ...

  9. es命令测试

    1.新建索引并赋值 :put/索引名/文档名/id //文档名后面会逐渐取消 相当表 PUT /test1/type1/1{ "nmae":"hb", &quo ...

  10. JUnit5学习之七:参数化测试(Parameterized Tests)进阶

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...