创建一个告诉数字是否为素数的程序时遇到问题

时间:2018-01-14 22:22:07

标签: java for-loop if-statement int

我无法理解为什么我提出的这个程序不起作用。我应该制作一个程序,它使用输入的整数,并找出该数字是否为素数。现在,该计划只是说每个数字都是素数。我刚开始使用java,所以我觉得我只是没有看到明显的东西。任何帮助都会很棒,谢谢你们。

public class assignment1 {

/**
 * @param args
 */
public static void main(String[] args) {
    // TODO Auto-generated method stub

    System.out.println("Insert Number:");

    Scanner scan = new Scanner(System.in);

    int variable1 = scan.nextInt();

    boolean is_prime = true;

    for(int x = 2; x < (variable1 - 1); x++){
        if (variable1 % x == 0){
            is_prime = false;
        }
    }

    if (is_prime = true){
            System.out.println("Prime");
    }else if (is_prime = false){
            System.out.println("Not Prime");
    }





}

}

1 个答案:

答案 0 :(得分:3)

if (is_prime = true){
        System.out.println("Prime");
}else if (is_prime = false){
        System.out.println("Not Prime");
}

您使用的是赋值运算符=,而不是比较运算符==