「java素数环」python素数环
今天给各位分享java素数环的知识,其中也会对python素数环进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、Java 素数问题 【循环】
- 2、用JAVA while循环求1到100的素数
- 3、数据结构求解素数环问题(JAVA版):将N个自然数(1~N),使得每相邻两数之和为素数,构成一个素数环!
- 4、java for循环 求素数
Java 素数问题 【循环】
上面的有问题,没有判断0和1哦:
import java.util.Scanner;
public class test {
public static void main(String[] args){
for (int i = 0; i 10; i++) {//循环测试用
Scanner input=new Scanner(System.in);
int num = input.nextInt();
int result = sume(num);
System.out.println(result);
}
}
public static int sume(int num){
int result=1;
for(int i=1;i=num/2;i++){
if(num%i==0i!=1){
result=0;
break;
}
}
if(num==1||num==0){result = 0;}
return result;
}}
用JAVA while循环求1到100的素数
public class Sushu {
public static boolean isSuShu(int n) //判断是否n是素数的函数
{
int i,ii;
ii=n/2;
i=2;
while(i=ii){ //从2到n/2枚举
if(n%i==0) //如果n是i的倍数
return true; //返回,n是合数
else
i++;
}
return false; //没有枚举出n的因数,所以n是素数
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.print("pplu test....");
int i=1;
while(i100){ //从1到100枚举
if(isSuShu(i)==false) //如果i不是合数
System.out.print(i+" ");//输出i和一位空格
i++;
}
}}
数据结构求解素数环问题(JAVA版):将N个自然数(1~N),使得每相邻两数之和为素数,构成一个素数环!
嗯。想一下。
这个是分别以每个自然数为起点,开始遍历,结果会有重复。
比如
(1, 2, 3, 4, 7, 10, 9, 8, 5, 6)
(6, 1, 2, 3, 4, 7, 10, 9, 8, 5)
import java.util.ArrayList;
import java.util.List;
public class PrimeRing {
// 求1~n素数环
public PrimeRing(int n) {
ListInteger src = new ArrayListInteger();
ListInteger dest = new ArrayListInteger();
for (int i = 1; i = n; i++) {
src.add(i);
}
loop(src, dest, n);
}
public void loop(ListInteger src, ListInteger dest, int n) {
if (dest.size() == n) {
Integer start = dest.get(0);
Integer end = dest.get(dest.size() - 1);
if (isPrime(start + end)) {
System.out.println(dest);
}
return;
}
for (int i = 0; i src.size(); i++) {
Integer element = src.remove(i);
if (dest.isEmpty()) {
dest.add(element);
} else {
Integer tmp = dest.get(dest.size() - 1);
if (isPrime(tmp + element)) {
dest.add(element);
} else {
src.add(i, element);
continue;
}
}
loop(src, dest, n);
src.add(i, element);
dest.remove(dest.size() - 1);
}
}
// 判断k是否为素数
public boolean isPrime(int k) {
if (k == 2)
return true;
if (k 2 || k 2 k % 2 == 0)
return false;
int j = (int) Math.sqrt(k); // Math.sqrt(k)返回k的平方根值
if (j % 2 == 0)
j--; // 获得测试范围内的最大奇数
while (j 2 k % j != 0)
j -= 2;
return j 2;
}
public static void main(String args[]) {
new PrimeRing(10);
}
}
java for循环 求素数
楼主的程序略有误,下为修改后的代码
public class Test {
public static void main(String[] args) {
int i =1,j =2;
for(i=1;i=100;i++) {
for(j=2;j=i;j++){
//素数是指除了1和自身外不能被任何数整除的数
//因此遍历每一个小于i大于2的整数j
if(i%j==0)
//如果i能够被j整除
if(i==j)
//如果当i等于j的时候则满足i是素数的条件,即只能被1(
//j是从2计数的)和自身整除,因此i是素数
System.out.println(i +"是素数");
else
//在如果存在一个小于i大于2的整数j可以整除i,则i必不是
//素数,因此break操作.
break;//如果i可以被j整除且j不等于i,则跳出循环
}
}
}
}
亲测可用..
java素数环的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于python素数环、java素数环的信息别忘了在本站进行查找喔。
发布于:2022-12-28,除非注明,否则均为
原创文章,转载请注明出处。