Java 我试图找出一个数字是否为素数,然后抛出一个错误;运营者及&;未定义参数类型int";

Java 我试图找出一个数字是否为素数,然后抛出一个错误;运营者及&;未定义参数类型int";,java,Java,这是我自己写的第三个代码。!! 不确定从概念上讲我是否在正确的道路上找到答案。。非常感谢您的帮助运算符&&(逻辑and)是一个短路逻辑布尔运算符。使用它需要布尔表达式/=是除法和赋值的缩写a/=2是a=a/2。这不是布尔表达式,因此不能使用&&运算符 值得一看的是文档和赋值运算符(如/=和逻辑运算符(如&&)的摘要 您需要“%”来检查数字是否被完全除法。“%”是,如果余数等于0,则数字被完全除 也许你误解了任务。你们需要检查数字是否并没有完全分开。这个数字只能完全除以它们自身和1。所以你需要检

这是我自己写的第三个代码。!!
不确定从概念上讲我是否在正确的道路上找到答案。。非常感谢您的帮助

运算符
&&
(逻辑and)是一个短路逻辑布尔运算符。使用它需要布尔表达式
/=
是除法和赋值的缩写
a/=2
a=a/2
。这不是布尔表达式,因此不能使用
&&
运算符

值得一看的是文档和赋值运算符(如
/=
和逻辑运算符(如
&&
)的摘要

  • 您需要“%”来检查数字是否被完全除法。“%”是,如果余数等于0,则数字被完全除

  • 也许你误解了任务。你们需要检查数字是否并没有完全分开。这个数字只能完全除以它们自身和1。所以你需要检查数字是否被所有较小的正数分开(n为n-1,…,2,如果你考虑2,那么你从2到1开始,所以你从1开始,1<2,所以你不检查任何数字)。若你们发现至少有一个这样的数字能把你们的数完全分开,那个么你们的数就不是素数。如果你找不到,那么你的数字就是素数。 例如,当n为7时,如果7被6、5、4、3、2完全除,则需要检查kc。它将是7%6==1,7%5==2,7%4==3。。。(你不会得到7%X==0,没有这样的X,所以7是素数) 当n为8时,需要检查7、6、5、4、3、2。 它将是8%7==1,8%6==2,8%5==3,8%4==0(您发现8%X==0,它将是4,对于2,到8不是素数)


  • 你认为a/=2有什么作用?
    a/=2
    的意思是“取a,除以2,然后存储回a”,这在这里是完全错误的<代码>a是一个整数,而不是布尔值。
    &&
    运算符用于布尔运算。
    a/=2
    -您的意图是什么?&&operator采用布尔型操作数,但您的表达式返回数已被理解。但要找出一个数是否为素数。我得在某个时刻把这个数除以它自己,对吗?
    public class prime {
    
        public static void main(String[] args) {
    
            int a=2;
            
            if (a/=2  && a/=1)
                System.out.println(a + "is a prime number");
            else
                System.out.println(a +"is not a prime number");
            
        }
    
    }
    
    if(n % 2 == 0) {
        System.out.println(n + "is divide completely by 2");
    } else {
        System.out.println(n + "is not divide completely by 2");
    }
    
    int x = 7;
    int y = 5;
    System.out.println("remainder of dividing x by y is "+(x % y));