首页 > 解决方案 > Java:数学测验缺少返回语句?

问题描述

Java新手。任务是创建一个 MathQuiz 应用程序,询问用户他们想要简单还是困难的数学测验以及他们想要回答的问题数量。然后应用程序一次显示一个问题,提示用户回答并确认答案是否正确。MathQuiz 应用程序应包括简单和困难数学测验的单独方法。simple() 方法应显示加法问题。hard() 方法应该显示乘法问题。应为测验问题生成随机数。这是我到目前为止所拥有的:

import java.util.Scanner;

public class MathQuiz {


        public static double simple() {
        int randomNumber1 =  (int)(20 * Math.random()) + 1;
        int randomNumber2 =  (int)(20 * Math.random()) + 1;
        int randomNumberAdd = randomNumber1 + randomNumber2;


            //user input
            Scanner keyboard = new Scanner(System.in);
                System.out.print(randomNumber1 + " + " + randomNumber2 + " = ");
                int GuessRandomNumberAdd = keyboard.nextInt();

            if (GuessRandomNumberAdd == randomNumber1 + randomNumber2) {
            System.out.println("Correct!");
            }else {
            System.out.println("Wrong. The correct answer is " + randomNumberAdd);
            }
        }



       public static double difficult() {
            int randomNumber1 =  (int)(20 * Math.random()) + 1;
            int randomNumber2 =  (int)(20 * Math.random()) + 1;
            int randomNumberMul = randomNumber1 * randomNumber2;
            int correct = 0;

            //user input
            Scanner keyboard = new Scanner(System.in);
                System.out.print(randomNumber1 + " * " + randomNumber2 + " = ");
                int GuessRandomNumberMul = keyboard.nextInt();

            if (GuessRandomNumberMul == randomNumber1 * randomNumber2) {
            System.out.println("Correct!");
            }else{
            System.out.println("Wrong. The correct answer is " + randomNumberMul);
            }
       }




         //user options
          public static void main(String[] args) {
          int choice;
          Scanner input = new Scanner(System.in);

          System.out.println("There are two levels available:");
          System.out.println("1. Simple");
          System.out.println("2. Difficult");
          System.out.print("Enter your choice: ");
          choice = input.nextInt();
          if (choice == 1) {
          simple();       
          } else if (choice == 2) {
          difficult();        
          }
          input.close();
           }
           }

标签: java

解决方案


simple()将anddouble()方法的返回类型更改为void,即

public static void simple()

public static void difficult()

这些方法的返回类型是 current double,因此它应该返回一个double值。如果它们不返回double值,编译器会给你一个错误。因此,如果您不打算在方法中返回值,请将返回类型更改为void.


推荐阅读