用JAVA编写一个简单的程序输出100以内的素数?

如题所述

封装好的方法getPrimes(),以后你可以拿去用在其他的程序中
import java.util.ArrayList;
import java.util.List;

public class Primes {

public static void main(String[] args) {
// 求素数
int[] primes = getPrimes(100);

// 输出结果
for (int i = 0; i < primes.length; i++) {
Integer prime = primes[i];
System.out.printf("%8d", prime);
if (i % 10 == 9) {
System.out.println();
}
}
}

/**
* 求 n 以内的所有素数
*
* @param n 范围
*
* @return n 以内的所有素数
*/
private static int[] getPrimes(int n) {
List<Integer> result = new ArrayList<Integer>();
result.add(2);

for (int i = 3; i <= n; i += 2) {
if (!divisible(i, result)) {
result.add(i);
}
}

int[] r = new int[result.size()];
for (int i = 0; i < r.length; i++) {
r[i] = result.get(i);
}
return r;
}

/**
* 判断 n 是否能被整除
*
* @param n 要判断的数字
* @param primes 包含素数的列表
*
* @return 如果 n 能被 primes 中任何一个整除,则返回 true。
*/
private static boolean divisible(int n, List<Integer> primes) {
for (Integer prime : primes) {
if (n % prime == 0) {
return true;
}
}
return false;
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-06-10
public class ss
{
public static void main(String args[])
{
int i,j;
for(j=2;j<=100;j++)
{
for(i=2;i<=j/2;i++)
{
if(j%i==0)
break;
}
if(i>j/2)
{
System.out.println(j);
}
}
}
}
第2个回答  2009-06-10
public boolean isPrime(int n){
if(n<=1) return false;
if(n==2) return true;
for(int i=2;i<n-1;i++)
if(n%i==0)
return false
return true;
}

用JAVA编写一个简单的程序输出100以内的素数?
import java.util.ArrayList;import java.util.List;public class Primes { public static void main(String[] args) { \/\/ 求素数 int[] primes = getPrimes(100);\/\/ 输出结果 for (int i = 0; i < primes.length; i++) { Integer prime = primes[i];System.out.printf("%8d", prime...

Java 求1-100以内的所有素数,判断一个数是不是素数
Created by lxk on 2017\/3\/2 *\/ public class PrimeNumberTest { public static void main(String[] args) { int n = 100; System.out.println(getPrimeNumberToN(n)); } \/** * 得到1到n之间的素数,存到一个ArrayList集合 *\/ private static List getPrimeNumberToN(int n) { List ...

用java求3到100的素数,初学者,求简单的
System.out.println("1--100之间的素数(也称质数)的个数之和 -->"+sum);}

编写一个JAVA应用程序,输出100以内的全部素数及其和。
int sum=0;System.out.println("1—100内的素数有:");for(int i=1;i<=100;i++){ boolean flag=true; for(int j=2;j<=i\/2;j++){ if(i%j==0){ flag=false; break; } } if(flag){ System.out.print("\\t"+i); sum+=i; }}System.out...

输出100以内的所有素数 java
public class PrimeNumber { public static void main(String[] args){ System.out.println("100以内的素数有:");int i=2,j=0,m;label1:for(i=2;i<100;i++){ for(m=2;m<=(int)(Math.ceil(Math.sqrt(i)));m++){ if(i%m==0){continue label1;} } System.out.print(i+"\\t...

Java求100以内的质数的小代码!
1、设计实现:通过for循环输出,使用break跳出。(1)需求:输出1~100的所有素数。(2)素数:--判断条件1:只能被1和本身整除的称为素数。--判断条件2:在区间(1,x\/2)中找不到能整除素数x的整数。--判断条件3:在区间(1,sqrt(x))中找不到能整除素数x的整数。(3)完整代码如下:2、...

利用Java编写应用程序求100以内的全部素数
public static void main(String[] args) { int i,n,k=0;for (n = 3; n<=100; n++) { \/\/3~100的所有数 i=2;while (i<n) { if (n%i==0) break; \/\/若能整除说明n不是素数,跳出当前循环 i++;} if (i==n) { \/\/如果i==n则说明n不能被2~n-1整除,是素数...

编写一个应用程序求100以内的全部素数用java
package javaTest;public class Prime { public static void main(String[] args) { for(int n =1; n<=100; n++){ if(isPrime(n)){ System.out.println(n+"是素数");continue;} } } public static boolean isPrime(int n){ boolean flag = true;if(n<掘核2)flag=false;else for(...

用java写一个程序,判断输出1~100之内的素数?
素数是指只能被1和自身整除的数,所以先定义一个函数判断一个数是否是素数,接着从1到100for循环判断。package baidu;public class Test {public static boolean fun(int n){if(n<2) return false;for(int i=2;i<n-1;i++)if(n%i==0) return false;return true;} public static void ...

用Java语句求100以内的素数
public static void main(String[] args) { for (int i = 1; i <= 100; i++) { \/\/声明变量判断是否能被其它整除 boolean flage = false;\/\/其它数,表示从2开始,i-1结束 for (int j = 2; j < i; j++) { \/\/判断如果被其它数整除,那么这个数就不是素数 \/\/结束次循环,并标识为...

相似回答