java语言 打印素数实例
//根据定义判断素数---循环n-1次,当n很大时循环n次
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
boolean isPrime = true;
int x = in.nextInt();
if(x == 1)
{
isPrime = false;
}
for(int i = 2;i<x;i++)
{
if(x%i == 0)
{
isPrime = false;
break;
}
}
if(isPrime)
{
System.out.println(x+"是素数");
}
else
{
System.out.println(x+"不是素数");
}
}
//当n很大时,循环n/2次
public static void main(String[] args) {
// TODO Auto-generated method stub
//去掉偶数后,从3到x-1,每次加2
//如果是偶数,立刻pass掉
//否则就开始循环
Scanner in = new Scanner(System.in);
int x = in.nextInt();
boolean isPrime = true;
if(x == 1||x!=2 && x%2 == 0)
{
isPrime = false;
}
else
{
for(int i = 3; i<x ;i = i+2)
{
if(x % i == 0)
{
isPrime = false;
break;
}
}
}
if(isPrime)
{
System.out.println(x+"是素数");
}
else
{
System.out.println(x+"不是素数");
}
}
//循环n的平方根次
public static void main(String[] args) {
// TODO Auto-generated method stub
//判断x的平方根次
Scanner in = new Scanner(System.in);
boolean isPrime = true;
int x = in.nextInt();
if(x == 1 || x % 2==0 && x!=2 )
{
isPrime = false;
}
else
{
for(int i = 3; i<=Math.sqrt(x); i += 2)
{
if( x%i ==0 )
{
isPrime = false;
break;
}
}
}
if(isPrime)
{
System.out.println(x+"是素数");
}
else
{
System.out.println(x+"不是素数");
}
//打印前50个素数
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印前50个素数
int[] primes = new int[50];
primes[0] = 2;
int cnt = 1;
out:
for(int x = 3;cnt<50;x++)
{
for(int i = 0;i<cnt;i++)
{
if( x%primes[i] == 0)
{
continue out;
}
}
//当内层for循环执行完后,若没有执行if内的执行体,则顺序执行当前代码,将x写入数组
primes[cnt++] = x;
}
for(int k:primes)
{
System.out.print(k+" ");
}
System.out.println(cnt);
}
//打印100以内的素数
public static void main(String[] args) {
// TODO Auto-generated method stub
//构造100以内的素数表(以计算机的思维)
boolean[] isPrime = new boolean[100];
for(int i = 0; i<isPrime.length;i++)
{
isPrime[i] = true;
}
for(int i = 2;i<isPrime.length;i++)
{
if(isPrime[i])
{
for(int k = 2; i*k<isPrime.length;k++)
{
isPrime[i*k] = false;
}
}
}
for(int i = 2; i<isPrime.length;i++)
{
if(isPrime[i])
{
System.out.print(i+" ");
}
}
}
java语言 打印素数实例的更多相关文章
- JAVA语言的素数判断,随机数,函数调用
近来刚学JAVA,就从JAVA写起吧,JAVA判别素数,其实方法和C/C++没什么区别,主要就是想谈一下,其中包括的3个点. (1)JAVA语言产生随机数,random函数,定义参数max的作用是给出 ...
- java语言打印上三角和下三角,进一步得到九九乘法表
关于下面两种图形的打印问题 ***** 与 * **** ** *** *** ** **** * ***** 一:程序 1.先打印下三角 2.结果 3.后打印上三角 4.结果 二:知识点 1.f ...
- java多线程找素数实例
package ltb20180106; public class FindPrime implements Runnable{ private int prime; private int q; p ...
- C语言打印100到200之间的素数
用C语言打印素数,我们首先要了素数的相关定义:只有1和它本身两个因数的自然数,也就是说除了1和它本身外,不能被其他自然数整除的数就称为素数. 例如:101只能被1 和101 整除:103只能被1 和1 ...
- Java实例 Part2:Java语言基础
Part2:Java语言基础 ** Example01:从控制台接收输入字符 ** 运行结果: 实现代码: import java.util.Scanner; public class Example ...
- Java循环和数组练习题:打印素数升级版
前两天一个小伙伴问了我一个数组的练习题,我一看思路很清晰,就是打印素数加了个数组.没想到写的时候啪啪打脸,终究还是没逃过眼高手低.本来不打算发出来了,因为发出来愈发显得我很菜,最后还是打算分享出来,一 ...
- 【Java初探实例篇01】——Java语言基础
示例系列,将对每节知识辅以实际代码示例,通过代码实际编写,来深入学习和巩固学习的知识点. IDE:intellij IDEA: 语言:Java 本次示例:Java语言基础知识的应用. 创建包day_4 ...
- Java 打印程序设计实例
3.1 打印文本 3.1.1 应用场景 假设我们需要打印一个窗体的某个文本编辑域(可能只有几行,也可能包含多页)的内容,并且每页最多打印 54 行,如何实现呢? 3.1.2 解决方法 基本思路如下:首 ...
- 瘋耔java语言笔记
一◐ java概述 1.1 ...
随机推荐
- 智软科技医疗器械GSP监管软件通过多省市药监局检查
提供医疗器械GSP监管软件,通过多省市药监局检查,符合2016年最新GSP监管条例的要求. 企业客户列表 温岭市万悦医疗器械有限公司 杭州市上善医疗器械有限公司 武汉明德生物科技股份有限公司 http ...
- Atitit.eclise的ide特性-------abt 编译
Atitit.eclise的ide特性-------abt 编译 为什么要在Intellij IDEA中使用Eclipse编译器 如果你使用Intellij Idea,你应该考虑使用Eclipse编译 ...
- 用block做事件回调来简化代码,提高开发效率
我们在自定义view的时候,通常要考虑view的封装复用,所以如何把view的事件回调给Controller就是个需要好好考虑的问题, 一般来说,可选的方式主要有target-action和de ...
- Android 手机卫士--参照文档编写选择器
本文来实现<Android 手机卫士--导航界面1的布局编写>中的图片选择器部分的代码. 本文地址:http://www.cnblogs.com/wuyudong/p/5944356.ht ...
- Android中点击隐藏软键盘最佳方法——Android开发之路4
Android中点击隐藏软键盘最佳方法 实现功能:点击EditText,软键盘出现并且不会隐藏,点击或者触摸EditText以外的其他任何区域,软键盘被隐藏: 1.重写dispatchTouchEve ...
- 实用的圆形图片控件ImageView
1.用法直接在布局中引用即可 import android.content.Context;import android.content.res.TypedArray;import android.g ...
- Oracle 数据库中对记录进行分页处理——学习笔记
学习到 oracle 的视图的时候,了解到对 Oracle 中数据的记录进行分页处理和 Mysql 提供的 limit 来进行分页处理大有不同,limit 是 mysql 中特有的关键字. 那么在 o ...
- python爬虫学习(11) —— 也写个AC自动机
0. 写在前面 本文记录了一个AC自动机的诞生! 之前看过有人用C++写过AC自动机,也有用C#写的,还有一个用nodejs写的.. C# 逆袭--自制日刷千题的AC自动机攻克HDU OJ HDU 自 ...
- shell编程:定义简单标准命令集
shell是用户操作接口的意思,操作系统运行起来后都会给用户提供一个操作界面,这个界面就叫shell,用户可以通过shell来调用操作系统内部的复杂实现,而shell编程就是在shell层次上进行编程 ...
- Android的Handler机制
Handler机制的原理 Android 的 Handler 机制(也有人叫消息机制)目的是为了跨线程通信,也就是多线程通信.之所以需 要跨线程通信是因为在 Android 中主线程通常只负责 UI ...