1 - 100素数或不是Java

时间:2017-12-05 01:50:36

标签: java

这是一个基本的素数检查器。我将如何循环此代码,以便它告诉我从1到100的每个数字以及它是否为素数。例如:

1不是素数

2是素数

3是素数

依此类推,直到100.这不是用户生成的程序,如果我运行它就会直接向我提供所有100个数字

    int check;
    int number;
    boolean prime = true;
    for (int i=2; i<=check/2; i++)
    {
        number = check%i;
        if (number == 0)
        {
            prime = false;
        }
    }
    if (prime == true)
    {
        System.out.println(check + " is a prime number");
    }
    else
    {
        System.out.println(check + " is not a prime number");
    }
}

4 个答案:

答案 0 :(得分:0)

对于初学者来说,似乎您的扫描仪并未在任何地方使用。也许你的代码不完整?

您可以使用for循环替换用户输入的扫描仪部件,该循环将为您提供编号。像这样:

for(int number = 1; number <= 100; number++) {
    // code for checking if number is prime or not
}

答案 1 :(得分:0)

看看下面的代码,让我知道一些事情是否不清楚,请问,不要只是阅读和复制:

package com.company;


public class Main {

    public static void main(String[] args) {


        out:

        for (int i = 1; i <= 100 ; i++) {
            for (int j = 2; j <= i / 2 ; j++) {
                if (i % j == 0) {
                    System.out.println(i + " is not prime number.");
                    continue out;
                }
            }
            System.out.println(i + " is prime number.");
        }
    }
}

所以要快速浏览代码:

1。)创建标记为块的块:

out:

2。)创建两个嵌套的for循环来检查我们的数字是否为素数

3。)如果第二个for循环中的语句将检查我们的数字是否不是素数(如果它可以被从1到自身的任何数字整除,而不是那两个数字)

4.。)如果我们在if语句中的评估为假,我们继续循环,直到我们的第二个循环条件失败,然后我们移出循环并打印该数字是素数:

System.out.println(i + " is prime number.");

5.如果我们在if语句中的评估为真,我们输入if块,打印该数字不是素数,我们将程序控制移回到我们之前创建的标记块

6。)我们继续这样做,直到外部循环检查条件失败,我们的程序完成它的工作。

答案 2 :(得分:0)

您几乎所有代码都是正确的,您只需将其放在正确的位置即可。例如,你的println语句需要在for循环中,你的for循环需要从1开始并以1到100递增。

for(int x = 0; x < 101; x++) 
{
   if(x == 2)
      System.out.println(x + " is a prime number");
   if(x % 2 == 0)
      System.out.println(x + " is not a prime number);
   else
      System.out.println(x + " is a prime number);
}

我刚刚帮助了一个朋友几乎这个问题,所以这不是更好的时机。我不知道你的扫描仪是否会被使用,但是如果你只是在寻找1-100的素数,那就行了。

答案 3 :(得分:0)

/ *素数是可以被1和它们自身整除的数字。所以,如果你取一个数字的模数&#39; N&#39;所有数字从1到N&#39; N&#39;并且每次模数为零时增加一个计数,你可以在最后使用一个简单的if条件来检查它们是否为素数。在这段代码中,我从使用数字1检查开始,直到100 * /

int count ;
for(int j=1;j<=100;j++)
{
count=0;
for(int i=1;i<=j;i++)
{
if(j%i==0)
count=count+1;
}
if(count>2)
System.out.println(j+"is not a prime number");
else
System.out.println(j+"is a prime number");

}