导航:首页 > 源码编译 > 求素数的java算法

求素数的java算法

发布时间:2023-10-20 08:39:48

㈠ 用java求3到100的素数,初学者,求简单的

public static void main(String[] args) {

int count = 0;

int sum = 0;

for (int i = 2; i <= 100; i++) {

boolean flag = false;

for (int j = 2; j <= i >> 1; j++) {

if (i % j == 0) {

flag = true;

break;

}

}

if (!flag) {

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

sum += i;

count++;

}

}

System.out.println();

System.out.println("1--100之间的素数(也称质数)的个数 -->"+count);

System.out.println("1--100之间的素数(也称质数)的个数之和 -->"+sum);

}

㈡ 用java求100以内的全部素数

这个的主要点是嵌套的循环,要注意循环要遍及数据的循环、逻辑判断,素数就是表示除1及其本身外不能被其他比他小的整数整除,掌握这点就可以理解了,下面代码仅供参考:

//实现求1-100之间的所有素数
publicclassTest
{
publicstaticvoidmain(String[]args)
{
//使用外层循环来控制1-100的数据的遍历
for(inti=1;i<=100;i++){
//素数就是除1及其本身外不能被其他整数整除
intj=2;
while(i>j){
//如果可以被小于他的数据整除,表示该数不是素数,跳出循环
if(i%j==0){
break;
}
j++;
}
//如果没有找到比其小的数据可以整除,则表示该数是素数
if(i==j){
System.out.println(i);
}
}
}
}

㈢ Java语言中,用类的方法求素数

importjava.util.ArrayList;
importjava.util.Scanner;

publicclassPrimeNumber{
/**
*判断一个数是否是素数
*@paramnumber
*@return
*/
publicbooleanisPrimeNumber(intnumber){
booleanisPrimeNumber=false;
intflag=0;
for(inti=2;i<number;i++){
if(number%i==0){
flag=1;
}
}
if(flag==0){
isPrimeNumber=true;
}
returnisPrimeNumber;//返回true时为素数
}
/**
*得到一个区间的素数
*@paramstartNo
*@paramendNo
*@return
*/
publicArrayList<Integer>getPrimeNumber(intstartNo,intendNo){
ArrayList<Integer>list=newArrayList<Integer>();
for(intnum=startNo;num<=endNo;num++){
if(newPrimeNumber().isPrimeNumber(num)){
list.add(num);
}
}
returnlist;
}
/**
*测试
*@paramargs
*/
publicstaticvoidmain(String[]args){
PrimeNumberprimeNumber=newPrimeNumber();
ArrayList<Integer>list=null;
System.out.println("请输入你要测试的数");
intinput=newScanner(System.in).nextInt();
if(primeNumber.isPrimeNumber(input)==true){
System.out.println("您输入的数为素数");
}
else{
System.out.println("您输入的数不是素数");
}
System.out.println("请输入你所要求素数的区间");
System.out.println("请输入区间的下限(较小值)");
intstartNo=newScanner(System.in).nextInt();
System.out.println("请输入区间的上限(较大值)");
intendNo=newScanner(System.in).nextInt();
list=primeNumber.getPrimeNumber(startNo,endNo);
System.out.println("您的区间素数为");
for(inti=0;i<list.size();i++){
System.out.print(list.get(i)+" ");
}
System.exit(0);
}
}

㈣ java里怎么实现素数

importjava.util.Scanner;

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

publicstaticvoidmain(String[]args){

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

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

try{
intnum=scan.nextInt();//取出控制台输入的信息
if(isPrime(num)){//调用isPrime()方法

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

}else{

System.out.println(num+"不是素数!");//若isPrime()方法返回false,输出不是素数
}
}catch(Exceptione){
System.out.println("请输入整数");//捕捉异常,若输入的不是整数,输出异常
}
}

/**
*<pre>
*用于判断一个数是否为素数,若为素数,返回true,否则返回false
*</pre>
*
*@parama
*输入的值
*@returntrue、false
*/
publicstaticbooleanisPrime(inta){

booleanflag=true;

if(a<2){//素数不小于2
returnfalse;
}else{

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

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

flag=false;
break;//跳出循环
}
}
}
returnflag;
}
}

阅读全文

与求素数的java算法相关的资料

热点内容
魔兽键位设置命令宏 浏览:645
程序员没有目标了 浏览:828
抢答器c程序编程 浏览:703
什么app可以自己玩 浏览:76
刨客app是什么 浏览:963
cad输入命令栏不见了 浏览:834
做故事集可以用什么app 浏览:692
qq邮箱发送压缩包 浏览:672
程序员桌面机器人 浏览:589
xjr快速开发平台源码 浏览:159
java接口runnable 浏览:31
python怎么运行web服务器 浏览:349
notepad编程代码 浏览:740
什么安卓的毛病最少 浏览:611
hp的pjl设备访问命令 浏览:635
googlewebp图片压缩技术 浏览:215
tbc萨满加血宏命令 浏览:757
pdf闪 浏览:289
手机服务器地址填什么 浏览:258
lrpython代码 浏览:848