您的位置:

java输出素数数组,java怎么输出素数

本文目录一览:

用JAVA做:输出区间内的素数

package logicjava;

import java.util.Scanner;

public class NumberJudge {

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

int count=0;//控制换行

int repeat=0;//判断的组数

repeat=input.nextInt();

//上限数组

int[] min=new int[repeat];

//下限数组

int[] max=new int[repeat];

//赋值

for(int i=0;irepeat;i++){

min[i]=input.nextInt();

max[i]=input.nextInt();

}

//判断次数

for(int i=0;irepeat;i++){

count=0;//清零

System.out.println("primes:");

//每次的上下限

for(int j=min[i];j=max[i];j++){

//是否为素数

boolean isOk=true;

if(j2){

isOk=false;

}

for(int k=2;k=j/2;k++){

if(j%k==0){

//不是素数

isOk=false;

break;

}

}

if(isOk){

System.out.print(j+" ");

count++;

}else{

continue;

}

if(count%6==0){

//每6个换行

System.out.println();

}

}

System.out.println();

}

}

}

没有判断输入的数是非负数。楼主有兴趣的话,自己判断一下。

这里是通过数组来实现的。其实用泛型会好些。

java给定一个二维整数数组,找出其中的质数

public class PrimeNumber {

 

    public static void main(String[] args) {

            

            int[][] a=new int[][]{{7,12,4,9,6},{3,9,6,47,54}}; //新建二维数组

            //用两个循环来遍历二维数组

            for(int i=0;i2;i++){//数组有两行

                for(int j=0;j5;j++){//数组有5列

                    if (isPrime(a[i][j])) {// 调用isPrime()方法判断数组的元素是否是质数

                     System.out.println(a[i][j]);// 若isPrime()方法返回true,输出是素数

                    }

                }

            }

            

    }

 

    /**

     * 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数组的方法找出从1~100之间的素数,并求出这些素数的和

import java.util.ArrayList;

public class TestB {

public static void main(String[] args) {

ArrayListInteger prime = new ArrayListInteger();

int sum = 0;

for(int i = 2 ; i = 100 ;i++){//从2开始是因为,1既不是素数也不是合数

boolean sign = true;

for(int j = 2 ; j  i ;j++){

if(i%j == 0){//能被除了1和自己整除的数肯定不是素数,因此只要有一个就可以跳过循环

sign = false;

continue;

}

}

if(sign){

prime.add(i);

}

}

System.out.println("1~100之间的素数有:");

for (Integer integer : prime) {

System.out.print(integer+" ");

sum += integer;

}

System.out.println();

System.out.println("1~100之间的素数和是:"+sum);

}

}