「java怎么产生素数」java求素数

博主:adminadmin 2023-01-28 09:39:10 227

本篇文章给大家谈谈java怎么产生素数,以及java求素数对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java 求出100以内的素数

package test;

public class SumPrime {

private static final int MAX=100;

public static void init(int[] num)//定义数组,里面装从1到100

{

int i=0;

for(;iMAX;i++)

{

num[i]=i+1;

}

}

public static int count(int[] num)//在程序运行后,计算素数个数

{

int n=0,i=0;

for(;iMAX;i++)

{

if(num[i]!=0)//非素数将被置零

n++;

}

return n;

}

public static void printf(int[] num)//输出所有素数,每10个转行一次

{

int i=0,n=0;

for(;iMAX;i++)

if(num[i]!=0)

{

System.out.print(num[i]+" ");

n++;

if(n%10==0)

System.out.println();

}

}

public static void main(String[] args)//主方法

{

int i=2,j=1;

int count;

int[] numbers = new int[MAX];

init(numbers);

while (jMAX)

{

if(numbers[j]!=0)

while (iMAX)

{

if(numbers[i]!=0)

{

if(numbers[i]%numbers[j]==0)

numbers[i]=0;//如果不是素数,置零

}

i++;

}

j++;

i=j+1;

}

count=count(numbers);

printf(numbers);

System.out.println();

System.out.println("ok,发现了"+count+"个素数");

}

}

楼主加分!

JAVA 求质数素数

public class Test {

public static void main(String[] args) {

getValues();

}

public static void getValues(){

BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

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

try {

int num=Integer.parseInt(br.readLine());//从控制台获得输入的数据

String resultStr="";//结果字符串

boolean flag=false;//是否能被整除

for (int i = 2; i = num; i++) {//大循环是把每一个数拿出来

for (int j = 2; j i; j++) {//小循环是把当前拿出的这个数从2开始除直到这个数之前

if(i%j==0){flag=true;}//如果能被整除(没有余数)则标识给true

}

if(flag==false){resultStr+=i+" ";}//如果标识为false说明没被赋过值,也就是除了2和本身以外没别的数能除开,则给结果里外循环的当前这个数加入到输出字符串中

flag=false;//别忘了再给标识重设置为false为下次外循环做准备

}

System.out.println("2到"+num+"之间的所有质数有:"+resultStr);

br.close();

getValues();

} catch (Exception e) {

e.printStackTrace();

}

}

}

就是提供个思路,希望有用x_x

java求素数问题

你的逻辑有问题,好好看看。if(xx){xxx}else{xxxx}这个逻辑不对

你自己看,如果输入2,2的平方根比2小吧,你的下面的循环就不成立,所以直接结束。

如果输入 9,9的平方根是3,当i=2时,2《=3,先走if条件(9%2!=0)直接进入else{XX},当然会输出9不是素数,然后break。

你还是把循环知识再看看吧。

看上一回答,正确代码在那里,嫌我啰嗦直接跳过。

求教JAVA求素数

具我了解最小的素数是2的说,举例来说,求100以内的素数。

100以内的素数是:2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97。

所以我认为是这样的,虽然有些偷懒。

public class Test{

public static void main(String[] args) {

int s=1,i;

System.out.print("2 ");//请不要在意这里。。。

for (int n=3; n=100;n+=2){

for (i=3;i*2=n;i++){

if(n%i==0)

break;

}

if(i*2n)

{

s++;

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

}

}

}

}

关于java怎么产生素数和java求素数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。