<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      10.24總結

      import java.util.*;
      import java.util.concurrent.TimeUnit;

      public class ArithmeticPractice {
      private Set generatedQuestions = new HashSet<>();
      private List questions = new ArrayList<>();
      private List answers = new ArrayList<>();
      private List results = new ArrayList<>();
      private int totalQuestions = 30;
      private int timeLimit = 5 * 60; // 5分鐘,單位:秒
      private Scanner scanner = new Scanner(System.in);
      private boolean isTimeOut = false;

      public static void main(String[] args) {
          ArithmeticPractice practice = new ArithmeticPractice();
          practice.generateQuestions();
          practice.startPractice();
          practice.showResults();
      }
      
      // 生成30道不重復的題目
      private void generateQuestions() {
          System.out.println("正在生成" + totalQuestions + "道題目...");
      
          while (questions.size() < totalQuestions) {
              int num1 = (int) (Math.random() * 100);
              int num2 = (int) (Math.random() * 100);
              int operator = (int) (Math.random() * 4); // 0:+,1:-,2:*,3:/
              String opSymbol = "";
              int result = 0;
              boolean valid = true;
      
              switch (operator) {
                  case 0: // 加法
                      opSymbol = "+";
                      result = num1 + num2;
                      break;
                  case 1: // 減法,確保結果非負
                      opSymbol = "-";
                      if (num1 < num2) {
                          valid = false;
                      } else {
                          result = num1 - num2;
                      }
                      break;
                  case 2: // 乘法,確保結果不超過三位數
                      opSymbol = "*";
                      result = num1 * num2;
                      if (result >= 1000) {
                          valid = false;
                      }
                      break;
                  case 3: // 除法,確保能整除且除數不為0
                      opSymbol = "/";
                      if (num2 == 0 || num1 % num2 != 0) {
                          valid = false;
                      } else {
                          result = num1 / num2;
                      }
                      break;
              }
      
              // 檢查題目是否有效且不重復
              String question = num1 + " " + opSymbol + " " + num2 + " = ?";
              if (valid && !generatedQuestions.contains(question)) {
                  generatedQuestions.add(question);
                  questions.add(question);
                  answers.add(result);
              }
          }
          System.out.println("題目生成完畢,準備開始答題!");
      }
      
      // 開始答題
      private void startPractice() {
          System.out.println("\n答題開始!您有" + timeLimit/60 + "分鐘時間完成" + totalQuestions + "道題。");
          System.out.println("請輸入答案,然后按回車確認。");
      
          long startTime = System.currentTimeMillis();
          Thread timerThread = new Thread(new TimerRunnable(startTime));
          timerThread.start();
      
          for (int i = 0; i < totalQuestions; i++) {
              // 檢查是否超時
              if (System.currentTimeMillis() - startTime > timeLimit * 1000L) {
                  System.out.println("\n時間到!未完成的題目將視為錯誤。");
                  isTimeOut = true;
                  // 剩余題目標記為錯誤
                  for (int j = i; j < totalQuestions; j++) {
                      results.add(false);
                  }
                  break;
              }
      
              // 顯示當前題目并獲取答案
              System.out.print("\n第" + (i + 1) + "題: " + questions.get(i));
              try {
                  if (scanner.hasNextInt()) {
                      int userAnswer = scanner.nextInt();
                      boolean isCorrect = (userAnswer == answers.get(i));
                      results.add(isCorrect);
      
                      // 即時判斷并顯示結果
                      if (isCorrect) {
                          System.out.println("正確!");
                      } else {
                          System.out.println("錯誤!正確答案是:" + answers.get(i));
                      }
                  } else {
                      // 非數字輸入視為錯誤
                      scanner.next(); // 清除無效輸入
                      results.add(false);
                      System.out.println("輸入無效!正確答案是:" + answers.get(i));
                  }
              } catch (Exception e) {
                  results.add(false);
                  System.out.println("輸入錯誤!正確答案是:" + answers.get(i));
              }
          }
      
          // 中斷計時線程
          timerThread.interrupt();
      }
      
      // 顯示答題結果
      private void showResults() {
          int correctCount = 0;
          double accuracy = (double) correctCount / totalQuestions * 100;
          System.out.println("\n總題數: " + totalQuestions);
          System.out.println("做對: " + correctCount + "題");
          System.out.println("做錯: " + (totalQuestions - correctCount) + "題");
          System.out.printf("正確率: %.2f%%\n", accuracy);
          System.out.println("------------------------------");
      }
      
      // 倒計時線程
      private class TimerRunnable implements Runnable {
          private long startTime;
      
          public TimerRunnable(long startTime) {
              this.startTime = startTime;
          }
      
          @Override
          public void run() {
              try {
                  while (true) {
                      long elapsedTime = (System.currentTimeMillis() - startTime) / 1000;
                      long remainingTime = timeLimit - elapsedTime;
      
                      if (remainingTime <= 0) {
                          break;
                      }
      
                      // 每分鐘提示一次剩余時間
                      if (remainingTime % 60 == 0) {
                          System.out.println("\n剩余時間: " + remainingTime / 60 + "分" + remainingTime % 60 + "秒");
                      }
      
                      // 最后10秒每秒提示
                      if (remainingTime <= 10) {
                          System.out.println("\n剩余時間: " + remainingTime + "秒");
                      }
      
                      TimeUnit.SECONDS.sleep(1);
                  }
              } catch (InterruptedException e) {
                  // 線程被中斷,正常退出
              }
          }
      }
      

      }

      posted @ 2025-10-26 14:29  Cx330。  閱讀(2)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产喷水1区2区3区咪咪爱AV| 国产国语一级毛片| 国产精品中文字幕观看| 中文字幕av日韩有码| 在线a级毛片无码免费真人| 国产在线乱子伦一区二区| 日韩一区二区三区女优丝袜| 国产欧美在线手机视频| 亚洲AV无码专区亚洲AV紧身裤| 日韩一区在线中文字幕| 国产熟妇另类久久久久久| 午夜精品久久久久久久久| 午夜精品福利亚洲国产| 国内熟妇与亚洲洲熟妇妇| 亚洲精品国产字幕久久麻豆| 少妇人妻av毛片在线看| 无码人妻斩一区二区三区| 成人免费毛片aaaaaa片| 人妻精品久久无码专区涩涩| 大陆精大陆国产国语精品| 女人被狂躁的高潮免费视频| 四虎国产精品成人免费久久| 熟妇激情一区二区三区| xx性欧美肥妇精品久久久久久 | 亚洲中文字幕av天堂| 亚洲精品日韩中文字幕| 久久精品国产清自在天天线| 国产无套粉嫩白浆在线| 精品久久亚洲中文无码| 亚洲av成人无码天堂| 欧美三级在线播放| 日本三级理论久久人妻电影| 卡一卡2卡3卡精品网站| 佛教| 国产乱对白刺激视频| 亚洲AVAV天堂AV在线网阿V| 韶山市| 精品乱人伦一区二区三区| 成人自拍短视频午夜福利| 久久天天躁狠狠躁夜夜婷| 天堂av成人网在线观看|