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+" ");
}
}
}
最新文章
- 1.2.1 OC概述
- 来自沪江、滴滴、蘑菇街架构师的 Docker 实践分享
- Python十六进制与字符串的转换
- C++异常处理的问题
- 第1章 C#类型基础
- sprint个人总结+读书博客
- 【iOS】Quartz2D截屏
- 结队开发项目—NABC模型
- 折腾iPhone的生活——运营商信号显示数据化
- angular2 学习笔记 (Typescript - Attribute &; reflection)
- HD1083 二分图,匈牙利算法
- jquery-ui-widget
- AspNet Core Web 应用程序的启动 当项目中 没有Startup.cs 类如何设置启动 配置等等
- API之实用工具Postman 使用方法
- 【转】CENTOS/RHEL 7 系统中设置SYSTEMD SERVICE的ULIMIT资源限制
- LeetCode 98 验证二叉搜索树
- 压力测试:系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式
- Python学习日记 --day4
- A2D JS框架
- 4、Linux常用命令