成都创新互联网站制作重庆分公司

素数判断java代码,java编程判断素数

用java编写一个程序段,输入一个自然数,判断该数是否为素数.

使用java编写判断自然数是否为素数的方式是,使用scanner来接受用户输入的数值,使用素数的算法,实例如下:

创新互联-专业网站定制、快速模板网站建设、高性价比鄢陵网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式鄢陵网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖鄢陵地区。费用合理售后完善,十余年实体公司更值得信赖。

Scanner sr = new Scanner(System.in);

System.out.print("请输入a的值:");

int a = sr.nextInt();

boolean is = true;

if (a  1)

{

System.out.println(a + "不是质数,因为他小于一");

}

else

{

ListInteger list = new ArrayListInteger();

for (int i = 2; i  a; i++)

{

if (a % i != 1  a % i != a)

{

if (a % i == 0){

is=false;

list.add(i);

}

}

}

if(is){

System.out.println("a是质数");

}else{

String yz="";

for (int i = 0; i  list.size(); i++)

{

if (yz=="")

{

yz=yz+list.get(i);

}else{

yz=yz+","+list.get(i);

}

}

System.out.println("a不是质数,因为他含有因子"+yz);

}

}

java 判断是不是素数

判断number是否是素数有这么几种方法:

(1)用2至number-1之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。

(2)用2至number/2之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。

(3)用2至number的平方根之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。

这3种的方法的效率是逐渐提高的。下面列出了第3种方法的实现:

import java.util.Scanner;

public class Test2 {

public static void main(String[] args) {

int number; // 输入的数字

Scanner input = new Scanner(System.in);

System.out.println("请输入数字");

number = input.nextInt(); // 输入数字

if(isPrimeNumber(number)){

System.out.println(number + "是一个素数");

}

else{

System.out.println(number + "是一个非素数");

}

}

public static boolean isPrimeNumber(int num){

if(num 2){

System.out.println("数据错误");

return false;

}

int k = (int)Math.sqrt(num); //num的平方根

int i;

for(i=2; i=k; i++){ //依次用2..k之间的数去整除num,如果没有一个数能被整除,说明num是素数

if(num % i == 0){

break;

}

}

if(i k){

return true;

}

return false;

}

}

如果对你的程序进行修改,也可这样:

public static void main(String[] args) {

int number;// 输入的数字

int j = 2;

Scanner input = new Scanner(System.in);

System.out.println("请输入数字");

number = input.nextInt();// 输入数字

for(j=2;jnumber;j++){

if(number%j == 0) {

System.out.println("这不素数");

break;

}

}

if(j=number)

System.out.println("这是素数");

}

用java编写一个程序段,输入一个自然数,判断该数是否为素数。

int n = 7; //输入的自然数

int k = 0; //输出的状态控制 初始化为0

for (int i = 2; i n; i++) { //循环判断

if (n%i == 0) { // 判断是不是因子

System.out.println(n + "不是素数"); //输出不是素数

k = 1; //控制置1

break; //只要有一个因子就不用继续循环判断了,跳出循环

}

}

if (k == 0) { //状态为0则输出为素数

System.out.println(n + "是素数");

}

编写一个判断素数的java程序?

import java.io.*;

class prime{

private int num;

static boolean isprime(int num){

if(num=1) return false;

int i;

for(i=2;i=num/2;i++)

if(num%i==0) return false;

return true;

}

}

class Main {

public static void main (String[] args)

throws IOException{

int num=0;

String data;

BufferedReader br = new

BufferedReader(new

InputStreamReader(System.in));

System.out.print( "请输入一个整数:" );

data=br.readLine ();

try{

num = Integer.parseInt (data);

}

catch(NumberFormatException e){}

if(prime.isprime (num)){

System.out.println ( num+"是素数!" );

}

else

System.out.println ( num+"不是素数!" );

}

}

祝君好运啊

Java判断一个数是不是素数

import java.util.Scanner;  

//质数又称素数,是指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数  

public class PrimeNumber {  

public static void main(String[] args) {  

Scanner scan = new Scanner(System.in);// 扫描器,接收控制台输入信息  

System.out.print("请输入一个整数:");  

try {  

int num = scan.nextInt();// 取出控制台输入的信息  

if (isPrime(num)) {// 调用isPrime()方法  

System.out.println(num + "是素数!");// 若isPrime()方法返回true,输出是素数  

} else {  

System.out.println(num + "不是素数!");// 若isPrime()方法返回false,输出不是素数  

}  

} catch (Exception e) {  

System.out.println("请输入整数");// 捕捉异常,若输入的不是整数,输出异常  

}  

}  

/** 

* pre 

* 用于判断一个数是否为素数,若为素数,返回true,否则返回false 

* /pre 

*  

* @param a 

*            输入的值 

* @return true、false 

*/  

public static boolean isPrime(int a) {  

boolean flag = true;  

if (a  2) {// 素数不小于2  

return false;  

} else {  

for (int i = 2; i = Math.sqrt(a); i++) {  

if (a % i == 0) {// 若能被整除,则说明不是素数,返回false  

flag = false;  

break;// 跳出循环  

}  

}  

}  

return flag;  

}  

}

文章来自秋叶为何落的博客分享


当前标题:素数判断java代码,java编程判断素数
文章路径:http://cxhlcq.com/article/hddgei.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部