Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用方法检查数字是否为素数_Java - Fatal编程技术网

Java 使用方法检查数字是否为素数

Java 使用方法检查数字是否为素数,java,Java,答案可能是盯着我的脸看,但我看了这么久,字眼都模糊了。任务是让用户输入3个数字,使用一种方法将这些数字相加,然后使用另一种方法确定总和是否为素数 package chpt6_Project; import java.util.Scanner; public class Chpt6_Project { public static void main(String[] args) { // TODO Auto-generated method stub

答案可能是盯着我的脸看,但我看了这么久,字眼都模糊了。任务是让用户输入3个数字,使用一种方法将这些数字相加,然后使用另一种方法确定总和是否为素数

package chpt6_Project;
import java.util.Scanner;


public class Chpt6_Project {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int num1;
        int num2;
        int num3;   

        Scanner scan = new Scanner(System.in);
        System.out.println("Enter the first number: ");
        num1 = scan.nextInt();

        System.out.println("Enter the second number: ");
        num2 = scan.nextInt();

        System.out.println("Enter the third number: ");
        num3 = scan.nextInt();

        Chpt6_Project.sum(num1, num2, num3);

        if(isPrime()) {
            System.out.println("The number is prime");
        } else {
            System.out.println("The number is not prime.");
        }
    }

    public static void sum(int num1, int num2, int num3) {
        int total = num1 + num2 + num3;
        System.out.println(total);
    }

    public static boolean isPrime(int total) {
        if((total > 2 && total % 2 == 0) || total == 1) {
            return false;
        }

        for (int i = 3; i <= (int)Math.sqrt(total); i += 2) {
            if (total % i == 0) {
                return false;
            }
        }
        return true;
    }
}
<代码>包装chpt6炣项目; 导入java.util.Scanner; 公共级Chpt6_项目{ 公共静态void main(字符串[]args){ //TODO自动生成的方法存根 int num1; int num2; int num3; 扫描仪扫描=新扫描仪(System.in); System.out.println(“输入第一个数字:”); num1=scan.nextInt(); System.out.println(“输入第二个数字:”); num2=scan.nextInt(); System.out.println(“输入第三个数字:”); num3=scan.nextInt(); Chpt6_项目金额(num1、num2、num3); if(isPrime()){ System.out.println(“数字是素数”); }否则{ System.out.println(“数字不是素数”); } } 公共静态无效和(整数num1、整数num2、整数num3){ 整数总计=num1+num2+num3; 系统输出打印项次(总计); } 公共静态布尔值iPrime(整数总计){ 如果((总计>2&&total%2==0)| |总计==1){ 返回false; }
对于(inti=3;i按如下所示编辑代码,您应该这样做

sum函数现在返回计算的和,该值由main传递给isPrime函数,isPrime函数将返回正确的值

package chpt6_Project;
import java.util.Scanner;


public class Chpt6_Project {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    int num1;
    int num2;
    int num3;


    Scanner scan = new Scanner(System.in);

    System.out.println("Enter the first number: ");
    num1 = scan.nextInt();

    System.out.println("Enter the second number: ");
    num2 = scan.nextInt();

    System.out.println("Enter the third number: ");
    num3 = scan.nextInt();



    if(isPrime(Chpt6_Project.sum(num1, num2, num3))) {
        System.out.println("The number is prime");
    } else {
        System.out.println("The number is not prime.");
    }

}

public static int sum(int num1, int num2, int num3) {
    int total = num1 + num2 + num3;
    System.out.println(total);
    return total;
}


public static boolean isPrime(int total) {

    if((total > 2 && total % 2 == 0) || total == 1) {
        return false;
    }

    for (int i = 3; i <= (int)Math.sqrt(total); i += 2) {

        if (total % i == 0) {
            return false;
        }
    }
    return true;
}
chpt6_项目包;
导入java.util.Scanner;
公共级Chpt6_项目{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
int num1;
int num2;
int num3;
扫描仪扫描=新扫描仪(System.in);
System.out.println(“输入第一个数字:”);
num1=scan.nextInt();
System.out.println(“输入第二个数字:”);
num2=scan.nextInt();
System.out.println(“输入第三个数字:”);
num3=scan.nextInt();
if(iPrime(Chpt6_项目总额(num1、num2、num3))){
System.out.println(“数字是素数”);
}否则{
System.out.println(“数字不是素数”);
}
}
公共静态整数和(整数m1、整数m2、整数m3){
整数总计=num1+num2+num3;
系统输出打印项次(总计);
返回总数;
}
公共静态布尔值iPrime(整数总计){
如果((总计>2&&total%2==0)| |总计==1){
返回false;
}

对于(inti=3;i按如下所示编辑代码,您应该这样做

sum函数现在返回计算的和,该值由main传递给isPrime函数,isPrime函数将返回正确的值

package chpt6_Project;
import java.util.Scanner;


public class Chpt6_Project {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    int num1;
    int num2;
    int num3;


    Scanner scan = new Scanner(System.in);

    System.out.println("Enter the first number: ");
    num1 = scan.nextInt();

    System.out.println("Enter the second number: ");
    num2 = scan.nextInt();

    System.out.println("Enter the third number: ");
    num3 = scan.nextInt();



    if(isPrime(Chpt6_Project.sum(num1, num2, num3))) {
        System.out.println("The number is prime");
    } else {
        System.out.println("The number is not prime.");
    }

}

public static int sum(int num1, int num2, int num3) {
    int total = num1 + num2 + num3;
    System.out.println(total);
    return total;
}


public static boolean isPrime(int total) {

    if((total > 2 && total % 2 == 0) || total == 1) {
        return false;
    }

    for (int i = 3; i <= (int)Math.sqrt(total); i += 2) {

        if (total % i == 0) {
            return false;
        }
    }
    return true;
}
chpt6_项目包;
导入java.util.Scanner;
公共级Chpt6_项目{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
int num1;
int num2;
int num3;
扫描仪扫描=新扫描仪(System.in);
System.out.println(“输入第一个数字:”);
num1=scan.nextInt();
System.out.println(“输入第二个数字:”);
num2=scan.nextInt();
System.out.println(“输入第三个数字:”);
num3=scan.nextInt();
if(iPrime(Chpt6_项目总额(num1、num2、num3))){
System.out.println(“数字是素数”);
}否则{
System.out.println(“数字不是素数”);
}
}
公共静态整数和(整数m1、整数m2、整数m3){
整数总计=num1+num2+num3;
系统输出打印项次(总计);
返回总数;
}
公共静态布尔值iPrime(整数总计){
如果((总计>2&&total%2==0)| |总计==1){
返回false;
}

对于(int i=3;i,你的问题是…?
isPrime
需要一个
int
。1)你的求和方法应该返回加法的结果2)你没有向
isPrime
@Turing85传递任何内容。素数检查函数没有返回正确的结果。它总是返回true。我怀疑该方法是否返回任何内容(至少如果您已经显示了所有代码),因为正如@ElliottFrisch所说,
isPrime(…)
需要一个
int
参数。您的问题是…?
isPrime
需要一个
int
。1)求和方法应该返回加法的结果2)您没有将任何内容传递给
isPrime
@Turing85素数检查函数没有返回正确的结果。它始终返回true我怀疑该方法是否返回任何内容(至少如果您显示了所有代码),因为正如@ElliottFrisch所说,
isPrime(…)
需要一个
int
-参数。谢谢,我知道没有求和方法有更好的方法,但这是本课程的要求。知道吗,我知道没有求和方法有更好的方法,但这是本课程的要求