用java写一个程序,判断输出1~100之内的素数?
发布网友
发布时间:2022-05-05 07:49
我来回答
共4个回答
热心网友
时间:2023-10-16 08:14
素数是指只能被1和自身整除的数,所以先定义一个函数判断一个数是否是素数,接着从1到100for循环判断。
package ;
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 main(String[] args) {
int k=0;
for (int n = 1; n <= 100; n++) { // 1~100的所有数
if(fun(n)){
System.out.print(n+" ");
k++;
if (k % 5 == 0) // 每输出5个则换行
System.out.println();
}
}
}
}
/* 运行结果:
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
*/
热心网友
时间:2023-10-16 08:15
for (int i = 2; i <= 100; i++) { // 质数
for (int k = 2; k <= i; k++) { // 除数
// 排除所有在 i=k 之前 能被k整除(余数为0)的数
if (i % k == 0 && i != k) {
break;
}
// 输出所有在 i=k 且 i%k=0的数
if (i % k == 0 && i == k) {
System.out.println(i);
}
}
}
热心网友
时间:2023-10-16 08:15
public class SuNum {
public static void main(String[] args) {
int i, n, k = 0;
for (n = 0; n <= 100; n++) { // 1~100的所有数
i = 2;
while (i < n) {
if (n % i == 0)
break; // 若能整除说明n不是素数,跳出当前循环
i++;
}
if (i == n) { // 如果i==n则说明n不能被2~n-1整除,是素数
k++; // 统计输出数的个数
System.out.print(i + "\t ");
if (k % 6 == 0) // 每输出5个则换行
System.out.println();
}
}
}
}
热心网友
时间:2023-10-16 08:16
public class Pre {
public static void main(String[] args) {
System.out.println("1-100内的素数为:\n");
int number = 1;
boolean isSuShu = true;
while(number<=100) {
for (int begin=1; begin<=number ; begin++) {
if (number%begin ==0 && begin != 1 && begin != number) {
isSuShu=false;//只要这个数能被1和他本身其他的数除尽的话,他就不是素数
break;
}
}
if (isSuShu) {
System.out.println("素数:" + number);
}
number++;
isSuShu = true;//每次循环完都要重新给这个标志位赋值
}
}
}
参考:http://zhidao.baidu.com/question/283498186.html
热心网友
时间:2023-10-16 08:14
素数是指只能被1和自身整除的数,所以先定义一个函数判断一个数是否是素数,接着从1到100for循环判断。
package ;
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 main(String[] args) {
int k=0;
for (int n = 1; n <= 100; n++) { // 1~100的所有数
if(fun(n)){
System.out.print(n+" ");
k++;
if (k % 5 == 0) // 每输出5个则换行
System.out.println();
}
}
}
}
/* 运行结果:
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
*/
热心网友
时间:2023-10-16 08:15
for (int i = 2; i <= 100; i++) { // 质数
for (int k = 2; k <= i; k++) { // 除数
// 排除所有在 i=k 之前 能被k整除(余数为0)的数
if (i % k == 0 && i != k) {
break;
}
// 输出所有在 i=k 且 i%k=0的数
if (i % k == 0 && i == k) {
System.out.println(i);
}
}
}
热心网友
时间:2023-10-16 08:15
public class SuNum {
public static void main(String[] args) {
int i, n, k = 0;
for (n = 0; n <= 100; n++) { // 1~100的所有数
i = 2;
while (i < n) {
if (n % i == 0)
break; // 若能整除说明n不是素数,跳出当前循环
i++;
}
if (i == n) { // 如果i==n则说明n不能被2~n-1整除,是素数
k++; // 统计输出数的个数
System.out.print(i + "\t ");
if (k % 6 == 0) // 每输出5个则换行
System.out.println();
}
}
}
}
热心网友
时间:2023-10-16 08:16
public class Pre {
public static void main(String[] args) {
System.out.println("1-100内的素数为:\n");
int number = 1;
boolean isSuShu = true;
while(number<=100) {
for (int begin=1; begin<=number ; begin++) {
if (number%begin ==0 && begin != 1 && begin != number) {
isSuShu=false;//只要这个数能被1和他本身其他的数除尽的话,他就不是素数
break;
}
}
if (isSuShu) {
System.out.println("素数:" + number);
}
number++;
isSuShu = true;//每次循环完都要重新给这个标志位赋值
}
}
}
参考:http://zhidao.baidu.com/question/283498186.html