输出质数(Java)
输出质数
一、什么是质数
质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数,否则称为合数(规定1既不是质数也不是合数)。
二、代码实现
1.输出100以内的质数
import java.util.ArrayList;
import java.util.List; public class PrimeNumber
{
/*
* 1-100
* 1 3 5 7 11 13 17
* 只能被1和本身整除
*
* */
public static void main(String[] args)
{
boolean flag;
List<Integer> priArr = new ArrayList<>();
for (int i=2;i<100;i++)
{
flag=true;
for (int j=2;j<=Math.sqrt(i);j++)//Math.sqrt()方法是对i开根号
{
if (i%j==0)
{
flag=false;//如果为false说明这个数不是质数
break;
}
}
if (flag)//是质数flag就是ture
{
priArr.add(i);
}
}
for (int s:priArr)
{
System.out.print(s+“ ”);
}
}
}
2.输入需要输出多少以内的素数
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner; public class PrimeNumber {
/*
* 1-100
* 1 3 5 7 11 13 17
* 只能被1和本身整除
*
* */
public static void main(String[] args)
{
System.out.println("请输入需要输出多少以内的质数:");
Scanner scanner=new Scanner(System.in);
int x=scanner.nextInt();
boolean flag;
List<Integer> priArr = new ArrayList<>();
for (int i=2;i<x;i++)
{
flag=true;
for (int j=2;j<=Math.sqrt(i);j++)//Math.sqrt()方法是对i开根号
{
if (i%j==0)
{
flag=false;//如果为false说明这个数不是质数
break;
}
}
if (flag)//是质数flag就是ture
{
priArr.add(i);
}
}
for (int s:priArr)
{
System.out.print(s+“ ”);
}
}
}
三、运行结果


四、总结
找质数主要运用了双重for循环,和用flag作为一个标识。其中外层for对需要查找的数值范围遍历,内层for对根号i以内的数值遍历,通过if判断利用flag是否变为false来判断这个数是否为质数,如果是则flag不变,为true,如果flag变为false,则这个数不是质数。
输出质数(Java)的更多相关文章
- 构建一个学生Student,根据类Student的定义,创建五个该类的对象,输出每个学生的信息,计算并输出这五个学生Java语言成绩的平均值,以及计算并输出他们Java语言成绩的最大值和最小值。
定义一个表示学生信息的类Student,要求如下: (1)类Student的成员变量: sNO 表示学号: sName表示姓名: sSex表示性别: sAge表示年龄: sJava:表示Java课程成 ...
- Java连载24-break语句、continue语句、输出质数练习
一.break 1.break是Java语言中的关键字,被翻译为“中断/折断” 2.break + ";"可以成为一个单独的完整的java语句: break; 3.break语 ...
- 第15章-输入/输出 --- 理解Java的IO流
(一)理解Java的IO流 JAVA的IO流是实现输入/输出的基础,它可以方便地实现数据的输入/输出操作,在Java中把不同的输入/输出(键盘.文件.网络连接等)抽象表述为"流"( ...
- 算法之求质数(Java语言)
质数(Prime number) 又称素数,指在的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数). 算法原理 验证一个数字 n 是否为素数的一种简单但 ...
- 输出所有java进程的gc状态
#!/bin/sh #read -t -p "请输入jstat命令监控间隔,次数:" time count read -p "输入jstat命令监控间隔(1s输出一次,输 ...
- 用Javascript的for循环输出质数
<body> <script type="text/javascript"> for(i=2;i<=300;i++){ var prime = tru ...
- 使用递归方法,遍历输出以.java结尾的文件
package cn.itcast.demo01;import java.io.File;/** * @author newcityman * @date 2019/7/27 - 19:17 * 题目 ...
- 读取Excel列,转换为String输出(Java实现)
需要导入的jar包 具体实现 public class ColumnToString { public static void main(String[] args) { new ColumnToSt ...
- 看下面代码输出结果Java
编译错误 在调用子类构造器之前,会先调用父类构造器,当子类构造器中没有使用"super(参数或无参数)"指定调用父类构造器时,是默认调用父类的无参构造器,如果父类中包含有参构造器, ...
随机推荐
- 009.NET5_程序的发布运行
发布 相差了web.config文件 脚本启动 cmd,进入程序根目录. 带参启动 其实,最终与web.config中效果一样
- Community Cloud零基础学习(五)Topic(主题)管理
我们以前讲过 Service Cloud 零基础(三)Knowledge浅谈,我们日常可以看见很多得文章或者帖子,我们可以将其通过data category / group进行管理.但是一个系统中得文 ...
- node.js & fs & file read & file write
node.js & fs & file read & file write https://nodejs.org/api/fs.html const fs = require( ...
- copyright@xgqfrms
copyright@xgqfrms copyright & seo ## refs *** <div> <a href="https://info.flagcoun ...
- Flutter: 判断是Android还是Ios
/// 在ui中使用下面的这个判断 Theme.of(context).platform == TargetPlatform.android /// 而不是 import 'dart:io' Plat ...
- NGK Global技术开源,开启跨链全生态
消息显示,新兴公链项目NGK Global已经完成了自己的开源计划,基于自己创新性的跨链通讯交互方案,开源后的NGK Global将面向全生态节点,提供高效.自由.无边界的公链生态系统. 目前,大家对 ...
- [转]C++语言的历史和标准化
转:https://blog.csdn.net/lemonrabbit1987/article/details/48222339 1979年4月,贝尔实验室的Bjarne Stroustrup(本贾尼 ...
- RabbitMQ之TTL(Time-To-Live 过期时间)
本文转载自RabbitMQ之TTL(Time-To-Live 过期时间) 概述 RabbitMQ可以对消息和队列设置TTL. 目前有两种方法可以设置.第一种方法是通过队列属性设置,队列中所有消息都有相 ...
- css选择器,过滤筛选
$('.required:not(.final_price)').each(function() { if (!$(this).val()) { error_count ++; if ($(this) ...
- net里面using的使用
起初using就明白一个作用 那就是引用命名空间.当面试官听到我回答这个问题的时候,马上就还问我,还有什么作用?我就只能摇头了,今天在网上看了下using的作用. 1.using指令.using + ...