From be6dce3f589bedd35431ce66803aaf162aaf81dd Mon Sep 17 00:00:00 2001 From: hnu202306060209 <3310207578@qq.com> Date: Wed, 24 Sep 2025 20:34:38 +0800 Subject: [PATCH 1/3] Initial commit --- README.md | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..1be8fa6 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# math_paper + -- 2.34.1 From 1b9ea3442d41328ee5ba60710310782cbdc659f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=96=E5=85=AE=E5=86=89?= <15550273+wang-shengfa-11@user.noreply.gitee.com> Date: Sat, 27 Sep 2025 20:38:45 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=88=86=E5=8C=85=E5=AE=89=E6=94=BEjava?= =?UTF-8?q?=E6=96=87=E4=BB=B6=EF=BC=8C=E5=B9=B6=E6=96=B0=E5=BB=BA=E4=BA=86?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E5=8C=85=EF=BC=8C=E4=BD=BF=E7=B1=BB=E7=9A=84?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E6=9B=B4=E5=90=88=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/.idea/.gitignore | 3 - src/.idea/.name | 1 - src/.idea/checkstyle-idea.xml | 16 --- src/.idea/misc.xml | 6 - src/.idea/modules.xml | 8 -- src/.idea/src.iml | 11 -- src/.idea/vcs.xml | 6 - src/AbstractQuestionGenerator.java | 43 ------- src/Authenticator.java | 26 ---- src/ElementaryGenerator.java | 25 ---- src/HistoryManager.java | 45 ------- src/JuniorGenerator.java | 34 ------ src/Level.java | 15 --- src/Main.java | 114 ------------------ src/SeniorGenerator.java | 33 ----- src/User.java | 11 -- src/out/production/src/.idea/.gitignore | 3 - src/out/production/src/.idea/.name | 1 - .../production/src/.idea/checkstyle-idea.xml | 16 --- src/out/production/src/.idea/misc.xml | 6 - src/out/production/src/.idea/modules.xml | 8 -- src/out/production/src/.idea/src.iml | 11 -- .../src/AbstractQuestionGenerator.class | Bin 2073 -> 0 bytes src/out/production/src/Authenticator.class | Bin 1467 -> 0 bytes .../production/src/ElementaryGenerator.class | Bin 1578 -> 0 bytes src/out/production/src/HistoryManager.class | Bin 2815 -> 0 bytes src/out/production/src/JuniorGenerator.class | Bin 1914 -> 0 bytes src/out/production/src/Level.class | Bin 1259 -> 0 bytes src/out/production/src/Main$1.class | Bin 620 -> 0 bytes src/out/production/src/Main.class | Bin 5911 -> 0 bytes src/out/production/src/SeniorGenerator.class | Bin 1998 -> 0 bytes src/out/production/src/User.class | Bin 469 -> 0 bytes .../src/张三1/2025-09-24-08-36-42.txt | 20 --- .../src/张三1/2025-09-24-08-36-49.txt | 20 --- .../src/张三1/2025-09-24-08-36-54.txt | 42 ------- src/张三1/2025-09-24-08-36-42.txt | 20 --- src/张三1/2025-09-24-08-36-49.txt | 20 --- src/张三1/2025-09-24-08-36-54.txt | 42 ------- src/张三1/2025-09-24-20-12-52.txt | 30 ----- src/张三1/2025-09-24-20-22-13.txt | 60 --------- src/张三1/2025-09-24-20-22-19.txt | 60 --------- src/张三1/2025-09-24-20-22-21.txt | 60 --------- src/张三1/2025-09-24-20-22-22.txt | 60 --------- src/张三1/2025-09-24-20-22-57.txt | 60 --------- src/张三1/2025-09-24-20-22-59.txt | 60 --------- src/张三1/2025-09-24-20-23-00.txt | 60 --------- src/王五1/2025-09-24-20-13-46.txt | 20 --- 47 files changed, 1076 deletions(-) delete mode 100644 src/.idea/.gitignore delete mode 100644 src/.idea/.name delete mode 100644 src/.idea/checkstyle-idea.xml delete mode 100644 src/.idea/misc.xml delete mode 100644 src/.idea/modules.xml delete mode 100644 src/.idea/src.iml delete mode 100644 src/.idea/vcs.xml delete mode 100644 src/AbstractQuestionGenerator.java delete mode 100644 src/Authenticator.java delete mode 100644 src/ElementaryGenerator.java delete mode 100644 src/HistoryManager.java delete mode 100644 src/JuniorGenerator.java delete mode 100644 src/Level.java delete mode 100644 src/Main.java delete mode 100644 src/SeniorGenerator.java delete mode 100644 src/User.java delete mode 100644 src/out/production/src/.idea/.gitignore delete mode 100644 src/out/production/src/.idea/.name delete mode 100644 src/out/production/src/.idea/checkstyle-idea.xml delete mode 100644 src/out/production/src/.idea/misc.xml delete mode 100644 src/out/production/src/.idea/modules.xml delete mode 100644 src/out/production/src/.idea/src.iml delete mode 100644 src/out/production/src/AbstractQuestionGenerator.class delete mode 100644 src/out/production/src/Authenticator.class delete mode 100644 src/out/production/src/ElementaryGenerator.class delete mode 100644 src/out/production/src/HistoryManager.class delete mode 100644 src/out/production/src/JuniorGenerator.class delete mode 100644 src/out/production/src/Level.class delete mode 100644 src/out/production/src/Main$1.class delete mode 100644 src/out/production/src/Main.class delete mode 100644 src/out/production/src/SeniorGenerator.class delete mode 100644 src/out/production/src/User.class delete mode 100644 src/out/production/src/张三1/2025-09-24-08-36-42.txt delete mode 100644 src/out/production/src/张三1/2025-09-24-08-36-49.txt delete mode 100644 src/out/production/src/张三1/2025-09-24-08-36-54.txt delete mode 100644 src/张三1/2025-09-24-08-36-42.txt delete mode 100644 src/张三1/2025-09-24-08-36-49.txt delete mode 100644 src/张三1/2025-09-24-08-36-54.txt delete mode 100644 src/张三1/2025-09-24-20-12-52.txt delete mode 100644 src/张三1/2025-09-24-20-22-13.txt delete mode 100644 src/张三1/2025-09-24-20-22-19.txt delete mode 100644 src/张三1/2025-09-24-20-22-21.txt delete mode 100644 src/张三1/2025-09-24-20-22-22.txt delete mode 100644 src/张三1/2025-09-24-20-22-57.txt delete mode 100644 src/张三1/2025-09-24-20-22-59.txt delete mode 100644 src/张三1/2025-09-24-20-23-00.txt delete mode 100644 src/王五1/2025-09-24-20-13-46.txt diff --git a/src/.idea/.gitignore b/src/.idea/.gitignore deleted file mode 100644 index 50d9d22..0000000 --- a/src/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# 默认忽略的文件 -/shelf/ -/workspace.xml diff --git a/src/.idea/.name b/src/.idea/.name deleted file mode 100644 index 730557c..0000000 --- a/src/.idea/.name +++ /dev/null @@ -1 +0,0 @@ -Authenticator.java \ No newline at end of file diff --git a/src/.idea/checkstyle-idea.xml b/src/.idea/checkstyle-idea.xml deleted file mode 100644 index c4b2624..0000000 --- a/src/.idea/checkstyle-idea.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - 11.0.1 - JavaOnly - true - - - \ No newline at end of file diff --git a/src/.idea/misc.xml b/src/.idea/misc.xml deleted file mode 100644 index 84abf01..0000000 --- a/src/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/src/.idea/modules.xml b/src/.idea/modules.xml deleted file mode 100644 index 7210df4..0000000 --- a/src/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/src/.idea/src.iml b/src/.idea/src.iml deleted file mode 100644 index 1de981c..0000000 --- a/src/.idea/src.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/src/.idea/vcs.xml b/src/.idea/vcs.xml deleted file mode 100644 index 2e3f692..0000000 --- a/src/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/src/AbstractQuestionGenerator.java b/src/AbstractQuestionGenerator.java deleted file mode 100644 index bcae7de..0000000 --- a/src/AbstractQuestionGenerator.java +++ /dev/null @@ -1,43 +0,0 @@ -import java.util.Random; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -abstract public class AbstractQuestionGenerator { - protected final Random random = new Random(); - protected final Level level; - - public AbstractQuestionGenerator(Level level) { - this.level = level; - } - - protected int getRandomNumber() { - return random.nextInt(100) + 1; - } - - protected String getRandomBinaryOp() { - String[] ops = {"+", "-", "*", "/"}; - return ops[random.nextInt(ops.length)]; - } - - abstract String generateExpression(); - - abstract boolean isValidForLevel(String expression); - - protected int countOperands(String expression) { - int count = 0; - Pattern pattern = Pattern.compile("\\d+"); - Matcher matcher = pattern.matcher(expression); - while (matcher.find()) { - count++; - } - return count; - } - - public String generateQuestion() { - String expression; - do { - expression = generateExpression(); - } while (countOperands(expression) < 1 || countOperands(expression) > 5 || !isValidForLevel(expression)); - return expression + " ="; - } -} diff --git a/src/Authenticator.java b/src/Authenticator.java deleted file mode 100644 index 8a5a526..0000000 --- a/src/Authenticator.java +++ /dev/null @@ -1,26 +0,0 @@ -import java.util.HashMap; -import java.util.Map; - -public class Authenticator { - private final Map users = new HashMap<>(); - - public Authenticator() { - users.put("张三1", new User("张三1", "123", Level.ELEMENTARY)); - users.put("张三2", new User("张三2", "123", Level.ELEMENTARY)); - users.put("张三3", new User("张三3", "123", Level.ELEMENTARY)); - users.put("李四1", new User("李四1", "123", Level.JUNIOR)); - users.put("李四2", new User("李四2", "123", Level.JUNIOR)); - users.put("李四3", new User("李四3", "123", Level.JUNIOR)); - users.put("王五1", new User("王五1", "123", Level.SENIOR)); - users.put("王五2", new User("王五2", "123", Level.SENIOR)); - users.put("王五3", new User("王五3", "123", Level.SENIOR)); - } - - public User login(String username, String password) { - User user = users.get(username); - if (user != null && user.password.equals(password)) { - return user; - } - return null; - } -} diff --git a/src/ElementaryGenerator.java b/src/ElementaryGenerator.java deleted file mode 100644 index e7940c1..0000000 --- a/src/ElementaryGenerator.java +++ /dev/null @@ -1,25 +0,0 @@ -public class ElementaryGenerator extends AbstractQuestionGenerator{ - public ElementaryGenerator() { - super(Level.ELEMENTARY); - } - - @Override - String generateExpression() { - return generateSub(4); - } - - private String generateSub(int depth) { - if (depth == 0 || random.nextDouble() < 0.4) { - return String.valueOf(getRandomNumber()); - } - String left = generateSub(depth - 1); - String op = getRandomBinaryOp(); - String right = generateSub(depth - 1); - return "(" + left + op + right + ")"; - } - - @Override - boolean isValidForLevel(String expression) { - return true; - } -} diff --git a/src/HistoryManager.java b/src/HistoryManager.java deleted file mode 100644 index e3941a4..0000000 --- a/src/HistoryManager.java +++ /dev/null @@ -1,45 +0,0 @@ -import java.util.HashSet; -import java.util.Set; -import java.io.*; - -public class HistoryManager { - private final Set existingQuestions = new HashSet<>(); - - public HistoryManager(String username) { - File folder = new File(username); - if (!folder.exists() && !folder.mkdir()) { - System.err.println("无法创建文件夹: " + username); - } - File[] files = folder.listFiles(); - if (files != null) { - for (File file : files) { - if (file.isFile() && file.getName().endsWith(".txt")) { - try (BufferedReader reader = new BufferedReader(new FileReader(file))) { - String line; - while ((line = reader.readLine()) != null) { - line = line.trim(); - if (line.matches("^\\d+\\..*")) { - int dotIndex = line.indexOf('.'); - String question = line.substring(dotIndex + 1).trim(); - if (question.endsWith("=")) { - question = question.substring(0, question.length() - 1).trim(); - } - existingQuestions.add(question); - } - } - } catch (IOException e) { - System.err.println("读取文件出错: " + file.getName()); - } - } - } - } - } - - public boolean isDuplicate(String question) { - return existingQuestions.contains(question); - } - - public void add(String question) { - existingQuestions.add(question); - } -} diff --git a/src/JuniorGenerator.java b/src/JuniorGenerator.java deleted file mode 100644 index 9a1b636..0000000 --- a/src/JuniorGenerator.java +++ /dev/null @@ -1,34 +0,0 @@ -public class JuniorGenerator extends AbstractQuestionGenerator{ - public JuniorGenerator() { - super(Level.JUNIOR); - } - - @Override - String generateExpression() { - return generateSub(4); - } - - private String generateSub(int depth) { - if (depth == 0 || random.nextDouble() < 0.4) { - return String.valueOf(getRandomNumber()); - } - double r = random.nextDouble(); - if (r < 0.5) { - String left = generateSub(depth - 1); - String op = getRandomBinaryOp(); - String right = generateSub(depth - 1); - return "(" + left + op + right + ")"; - } else if (r < 0.75) { - String sub = generateSub(depth - 1); - return "sqrt(" + sub + ")"; - } else { - String sub = generateSub(depth - 1); - return "(" + sub + ")^2"; - } - } - - @Override - boolean isValidForLevel(String expression) { - return expression.contains("sqrt") || expression.contains("^2"); - } -} diff --git a/src/Level.java b/src/Level.java deleted file mode 100644 index 0263cd3..0000000 --- a/src/Level.java +++ /dev/null @@ -1,15 +0,0 @@ -public enum Level { - ELEMENTARY("小学"), - JUNIOR("初中"), - SENIOR("高中"); - - private final String name; - - Level(String name) { - this.name = name; - } - - public String getName() { - return name; - } -} \ No newline at end of file diff --git a/src/Main.java b/src/Main.java deleted file mode 100644 index 8fe26fb..0000000 --- a/src/Main.java +++ /dev/null @@ -1,114 +0,0 @@ -import java.util.*; -import java.io.*; -import java.text.SimpleDateFormat; - -public class Main { - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - Authenticator authenticator = new Authenticator(); - User user; - - while (true) { - System.out.print("请输入用户名和密码(空格隔开):"); - String inputLine = scanner.nextLine().trim(); - String[] input = inputLine.split("\\s+"); - if (input.length != 2) { - System.out.println("请输入正确的用户名、密码"); - continue; - } - user = authenticator.login(input[0], input[1]); - if (user == null) { - System.out.println("请输入正确的用户名、密码"); - continue; - } - Level currentLevel = user.initialLevel; - HistoryManager history = new HistoryManager(user.username); - - while (true) { - System.out.println("当前选择为" + currentLevel.getName() + " 出题"); - System.out.print("准备生成" + currentLevel.getName() + " 数学题目,请输入生成题目数量(输入-1将退出当前用户,重新登录):"); - String input_text = scanner.nextLine().trim(); - - if (input_text.startsWith("切换为")) { - String newLevelStr = input_text.substring("切换为".length()).trim(); - Level newLevel = switch (newLevelStr) { - case "小学" -> Level.ELEMENTARY; - case "初中" -> Level.JUNIOR; - case "高中" -> Level.SENIOR; - default -> null; - }; - if (newLevel != null) { - currentLevel = newLevel; - } else { - System.out.println("请输入小学、初中和高中三个选项中的一个"); - } - continue; - } - - int numQuestions; - try { - numQuestions = Integer.parseInt(input_text); - } catch (NumberFormatException e) { - System.out.println("无效输入"); - continue; - } - - if (numQuestions == -1) { - break; - } - - if (numQuestions < 10 || numQuestions > 30) { - System.out.println("数量应在10-30"); - continue; - } - - AbstractQuestionGenerator generator = getGenerator(currentLevel); - List questions = new ArrayList<>(); - boolean failed = false; - for (int i = 0; i < numQuestions; i++) { - String question; - int attempts = 0; - do { - question = generator.generateQuestion(); - attempts++; - if (attempts > 100) { - System.out.println("无法生成足够独特的题目"); - failed = true; - break; - } - } while (history.isDuplicate(question)); - if (failed) { - break; - } - questions.add(question); - history.add(question); - } - - if (!questions.isEmpty() && !failed) { - Date now = new Date(); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss"); - String filename = sdf.format(now) + ".txt"; - File folder = new File(user.username); - File file = new File(folder, filename); - try (PrintWriter writer = new PrintWriter(file)) { - for (int i = 0; i < questions.size(); i++) { - writer.println((i + 1) + ". " + questions.get(i)); - writer.println(); - } - } catch (IOException e) { - System.err.println("保存文件出错: " + e.getMessage()); - } - } - } - } - } - - private static AbstractQuestionGenerator getGenerator(Level level) { - return switch (level) { - case ELEMENTARY -> new ElementaryGenerator(); - case JUNIOR -> new JuniorGenerator(); - case SENIOR -> new SeniorGenerator(); - //default -> throw new IllegalArgumentException("未知水平"); - }; - } -} diff --git a/src/SeniorGenerator.java b/src/SeniorGenerator.java deleted file mode 100644 index 54d0562..0000000 --- a/src/SeniorGenerator.java +++ /dev/null @@ -1,33 +0,0 @@ -public class SeniorGenerator extends AbstractQuestionGenerator{ - public SeniorGenerator() { - super(Level.SENIOR); - } - - @Override - String generateExpression() { - return generateSub(4); - } - - private String generateSub(int depth) { - if (depth == 0 || random.nextDouble() < 0.4) { - return String.valueOf(getRandomNumber()); - } - double r = random.nextDouble(); - if (r < 0.5) { - String left = generateSub(depth - 1); - String op = getRandomBinaryOp(); - String right = generateSub(depth - 1); - return "(" + left + op + right + ")"; - } else { - String[] funcs = {"sin", "cos", "tan"}; - String func = funcs[random.nextInt(funcs.length)]; - String sub = generateSub(depth - 1); - return func + "(" + sub + ")"; - } - } - - @Override - boolean isValidForLevel(String expression) { - return expression.contains("sin") || expression.contains("cos") || expression.contains("tan"); - } -} diff --git a/src/User.java b/src/User.java deleted file mode 100644 index 91094ca..0000000 --- a/src/User.java +++ /dev/null @@ -1,11 +0,0 @@ -public class User { - String username; - String password; - Level initialLevel; - - public User(String username, String password, Level initialLevel) { - this.username = username; - this.password = password; - this.initialLevel = initialLevel; - } -} diff --git a/src/out/production/src/.idea/.gitignore b/src/out/production/src/.idea/.gitignore deleted file mode 100644 index 50d9d22..0000000 --- a/src/out/production/src/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# 默认忽略的文件 -/shelf/ -/workspace.xml diff --git a/src/out/production/src/.idea/.name b/src/out/production/src/.idea/.name deleted file mode 100644 index 730557c..0000000 --- a/src/out/production/src/.idea/.name +++ /dev/null @@ -1 +0,0 @@ -Authenticator.java \ No newline at end of file diff --git a/src/out/production/src/.idea/checkstyle-idea.xml b/src/out/production/src/.idea/checkstyle-idea.xml deleted file mode 100644 index c4b2624..0000000 --- a/src/out/production/src/.idea/checkstyle-idea.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - 11.0.1 - JavaOnly - true - - - \ No newline at end of file diff --git a/src/out/production/src/.idea/misc.xml b/src/out/production/src/.idea/misc.xml deleted file mode 100644 index 84abf01..0000000 --- a/src/out/production/src/.idea/misc.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/src/out/production/src/.idea/modules.xml b/src/out/production/src/.idea/modules.xml deleted file mode 100644 index 7210df4..0000000 --- a/src/out/production/src/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/src/out/production/src/.idea/src.iml b/src/out/production/src/.idea/src.iml deleted file mode 100644 index 1de981c..0000000 --- a/src/out/production/src/.idea/src.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/src/out/production/src/AbstractQuestionGenerator.class b/src/out/production/src/AbstractQuestionGenerator.class deleted file mode 100644 index dc232d6cd72e0b48e333c3c8e5e9c268949673fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2073 zcmaJ?O;;0V7`>AWnGgqp5u_0c(gNnAm{zT}MrX}N}G)N@N~Pej#`5V@iox^q=RIF(*e5N!*!9KDgdqZu`GGX@3WUL1p}pif0V z;u4bA)@;Yps?P0}upQkrZU{qInqyjov^+HliIQip11j&r99NOR2?;$7u_YQ3lv2q( z5uT*M{DyY44JT;Fb5!nTFzyvl$~{*rbbFf zmMsGjuM5YocpuOUa8bhX{r5TD(5#)MCcl_X;+?qPm8a+kf6xP+!Dr=rA!nHqU1_!p zFnMH&vEL4TYZna@Sa!7P#)8%ioE>PFLAy5@y0Y1_s$$+N@3A9;aMo=OHrkwNI&OP6 z7lgBJ*6b)A&}HfLY&?SRV)!196liW@*Cb3H%oN?&GB-rduNgnr^BfVTwIktaXO;s& zAN?lFt|9Enl4)+Vn)$;K?Ra@dae1dHx`=n?#Gi8Qmh+MjKoqn_qpUlEc~^@DXIG)2 z*|xA1u!g1%`P7Z7g1UsU{}<&n^!<`2*gzpRL`x8p#C3;^VmdU=rz;7PFJl6zduDx6%1d9>u7;f<8q_2#dDDnmjc}CbT_!{2? zCN5G&;x{$(J7NR1T@1>Pp7S1piyZO3^?PWlFBhQ6DB)6o@sNnFJ5$PEc&`#poGMr3 z#AvzFlNc*kB8k)GQr1P!z9#y)U-!Y?KO~oYlAa&XoeB&jp<)4xkmwsH8eAVaai}4? zvnnwClo&mH8xPMWKKKKZi!<3>WG>4|c^7A&q4&p-^vm9xQP-oe=g}$p1dLE^6#TPb zyv8t$ah@hT5*K{9{g{no3Abo0M2XwD!#zs*GM0%K#{ftDT@qR$W*smCLt0hETyO_b8tp@^>Fq-eNq}@EGez{s%e5=4Jo@ diff --git a/src/out/production/src/Authenticator.class b/src/out/production/src/Authenticator.class deleted file mode 100644 index 60bb52da38013a4c6800f5b0df5c3856045afc98..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1467 zcmZ`(OHUJF6g^*CI@4h)Wdz@fRY6*LNb3VFqKHMnQj|gw6Bk3Bl+iN9=~RAzD`R3} z;>H*g_ioUj_=<6(3;%>0(BGgj#yj8C+QxCwY41JXx#!-~`_1QHZ{7nK#$^c}cm?=m zG{Dagx~|?*dkd5P{iPE%A)=W<*m(D3{ned50h<|oGjvi! zD@pdn;sI>MHUZmZ?7&VclhST!1qLaZN=_ux(?e5pL{IT-LV|+b_9%N8dO95;K1{|k zbt9i}$vDJFwh?;~7O+poejK3g>zbramdfNse{D_2pxT<1Or%Dpk`mET9Wo}Ovl_%j zL@D_C_}<2&M}79JT{61uLH*-1>9NTv5xrHMn0?iNm~jfe-MhQ~<^g9Om2r$SGf9Wp zU&V=evKqwgSqEgCg8i@NH5#nLWiXd90_5)*8ACYBATFt;(sI$f#-P*;Tya{$IV1&) z$T*MDy1jA^(0tm>vRa^pXm!)R!Vt*lc|*0zrp8d|h3_0K&A`8cDSK%Wg9%!n;o>!- zG^KPyOP3etHFH{>FHlBF6?1AKtD3qUSCT$!LFZdpx2{yCp-{~0218eEd;i^|h@(%o z*lTX6i=^kXf6}0TpkT&Qb2q5{inNp|md%_tqVwkJ^n2{}Lzr%qhwdr0Zr>^T9;3*E zar#h$@YC}G!58WJF+zSs*TAB0AjWevMtqs@z1j6 z-32+wk%KNsgd-6fIaFV*ha){M$YG8gc0pnsiP^}J`fA5Ha@++u!I2a7$TRLsik>mZ z^rSZ$`O^du5d`QxC*dl2xlGu71o4#I{7C2*gzz2Bm>`DiIEXYRDPp*YOOCs^O>X-r z7q(41^co2dK0rx#e?q8x6{oviV)!8%x>wi=9rD6%Lg9oKl4-?mY(X2gagnG~s3Jlo jF@>{SIBZ`k6552#$Y7f4%upQ>>?hg;s>hI}*n`>MOFma= diff --git a/src/out/production/src/ElementaryGenerator.class b/src/out/production/src/ElementaryGenerator.class deleted file mode 100644 index 3c735be272f1a110038498615356ef640570ce20..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1578 zcma)7ZBr9h6n<{9WMNqh1dzA3Dq>0E3uviYLQx1oqZ=rM!Lj{xlU$R9Wp8HphLL}w zo&JJOKiE!(cKpyE(0|~caXkAX#xdi#GueCY-E*GvoR@p@|J&F90Vra300|^@XeRoQ zV(7EPv2YlSl2xjdw)WO`pEBrHcv>*fj{zNqi9whQQ)@L}dAzQ6I>J}BbRP&;cw9-3 zA+=(=wpt~iY;2s{H*gMV9m6I@kYN}tIpRpTihCzrhJ(!rL{vL9hVg7UXC3fkzTj}T zxlmP}?KTSo1TQW$fu6V9C zWT)l`hGaIkk-GQhW$^qOkiBT)5@s3FO`#<o4x zDxcv|_S5uy$w?1~VO0AJT2VGA8)?gSMHKHI5A&0;WSu+v+_Qsye5k3GO+3b}9@Q*R zRo<7g^t|l}-={92CTobcYB8`fd2_@wbymHu^pSBwQgZq{yV)X*p{nBb!wPT5j?=ck z&mFt5DZRL7$9v==_cIk)bon-_vg6gorX5s#vIprKL6=ZD*QHcJd$%h>wPeHZM~TQ} z8DqJ03J(lCL|Mn9phAxs<~}s3?Hz(M>T{jPM^)%R0iJv!p!i zviCJ_o6oD#HI3q;`*e>qIb#V(Z@tzmIH|XI^3?|2IZY zF)@a(U;Ku_{3$N{i_5R_Gg^a?E40sU#hYdA+Vv^zHLd}H$7INP8Yz-Z!XCmj(wN0C z4T%woHWS9M6nQ#}VHtODmw3$5!1@8p#Csm2D3FvS8v`pOY50*aH6$`Rt*f{f^S(`M zkfDV3NAM2)M-fkizRpKq&wM3tpU~*CV=dHQr+)#;JDqIOZvz(X43a9?#tx?50c(47 AT>t<8 diff --git a/src/out/production/src/HistoryManager.class b/src/out/production/src/HistoryManager.class deleted file mode 100644 index d60ba93867fbff589d9aabec0ca277c570d7ea9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2815 zcmaJ@`*#%O8GgQGv$L0hTyP^}EubLg0*O)^$}U7o5Q!!M+%z&YzrWS*(UN^zLNZU*rfN}Ab3 z11VdrV-0Q+xHfB!$u7rEnciN@8|9npnYPEsYZps$Vcrqkj3y1uI$Bg|%Vuk?2q>WC zRQQaoDp{vvJ=z4q8M3IDVXXS5=6mN-RkDP#yhX>YJ{guf%ivFR+=ibLa7222W>yMZ z)6~2$sSq{_1lqiDc61Zs8WK7-W6OM|eBK2@(oVao_V4M-J`J}EG|twwtuQ<+^D=#p zG}AJ#;pYMkvpSV!Nglygbg6D{SH;aQO?A2xJCycL5_VNva`h*n6Wu!QQk90-vUHDS zbAUFXM@O#`2AF#`gk4nMzdzl&zpbrBsrTr(M^&k1O)oVnT_x++@e2%4X4z>uzH6Ay zP2J7iO7%+}gV@JTxP>9N%tnmL#rWJWAhsx{`*l2k2RWe`X^$wIkjv$z>q>$zuN>$(57MoH3Cs;{_pUp}Q!=L(b^`=ftHdAH zF|M)>r5xKcEw$pqNo&M5y+WQdxVpsHY&Dw~64;p_?_Exs#qOvP$TGS@Bykx|cKYw7EhoIfn zjiI7kmE$l+n0wxwx4#%E_eL!iUDq>zGo(kT;L5!1FU8=nlktPsC={C4erHj$CrQst zjrE#2ze){H3q&nWz^wgD;M?RS@UVi;Te3b~{1=joNU#Bl0J6V<=nfmYX394#?I32+m zyr|(NwI9ALu;wbamVM9}lkKJbxwJ*@FjML%5O|?-mdb{uY<8M;#U=Zg=)U@l;iIs6ddEbPP1h#lMpS_&;}wBcSKE@niljc5_~1=2;BzOLo(h#1ie zNLOL+`I$Eq`hoK>h+2Bn;{-DzML0(IpXU*ahgg-L;uH#gWru^}{LIF;N!26x5dY$y z^>2KN&-k?PKYRg~nny|J0bIx55CRC2;xLvYg0&=m1D0STX-`nv&x6uJJ&~5-_oV$P z#Bd6YILnK~Tl9Dr1}^dL@Byx8tQCw_&lsy1Wd**%N}=>@C4)i76W*aZ(&AxlwXIL(^ri9J4OsKgLiQRM|pK(oAC$ykx1(8PxRor#FzLp zwN=dcV`ld>Ydc1RgV1MK2=8oB4VyHgVTL7WbKe@C;hzw|*SL*(4V~YhkG6vUpJVBr z8nQD?DYC$$WK1<^nhpIQRogVUU!eYT4x_-c*isr!+|I1j5Jy!@TQA^X75>7{Dxdry zjlj!|BBrrqHd`DiQN(a718lA9&gW~srxC=O3!r_i259&UPi3ObH2~> bIL_x%dQC9O3IF#LUZE_)@3T0E*I|4MH4MAF diff --git a/src/out/production/src/JuniorGenerator.class b/src/out/production/src/JuniorGenerator.class deleted file mode 100644 index 96247506f8b2e7581c0ae87920e2fdf35234b7e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1914 zcma)6T~ixX7=8{(c0*VSq~RmQkBYP;!IlaZh1Ajlr40tKgwon7x+I5WOV~|!Hw^rf z((&FKFVJz&;ldx_Kk&{=e}v=s><2V$nT|V?lXKqlzR&yhocE7^kADX+2csQrh^UBa zh(QsE73Hq13n+^ZmJ2JZ0&3Bh=vVrY5*Wh%}s&cOd(r*s_*J!b=|Cv zm0a5}tNC_Jb7xaBHL4a87{(%^I}Dr`MQ8{Rn-M%|i02R+5th?OTnPMCFPuVG8aAz6uDms{>Bd0M(hgEosTiP=WA zMvaK$@iA7B4YwvB3jC1=VqT!LJ$POsNXhAY_`tzdG@%++DkR|KC@K;IER<4JUKuQ9StTtF9w(2X1;ouFh2=c$vzGDr0~`bfflRFOu5nqGdZ ztnLJ7^IhCyK2y{xa2KPEhDGiaTEy{%f7>|SG3(QM?xBb!)?|qI%UEFzza(xuqDl21 zOhg8FxKB4h+aB@SYtO)F^0OmMzkoKHyvfZ0)aVb0Mt?IRUkr diff --git a/src/out/production/src/Level.class b/src/out/production/src/Level.class deleted file mode 100644 index 2527ddcfd7ce2129bdd6e04b996ab62c4f2bb655..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1259 zcmZuv%TE(=5dOB?ZMVx7>dHeNDk5rIgo=Q#Rs?H}m{JUd#>Uf9*0N-2ld|RP(VJH< zUcDF+EIx=v!`Z(>4*nCynO_$z!X~@3GxNrfDo zpk=a|`AlwUcCjcSm=*pc15_O$1_T~2=jIj`+0>>(7p8pX(A2J@0}+ZGF3e_^GkJ=8 z=8XK8fSQ0v;vFy6JWhNZ6Qcf(atXm~Fsi6mFg6P%Jhkgm|{{Wdv zeS_$?Os8%wJeM#PZHZ1h=H_Oy#gKPvcBPzb&AvBLoq^3du}S68Xdj;vj=a`lZBtF~mWIArNR zp_Z7pAnvPLGM$21vl;D$MCL7bt-AWetWoc-RimVScg-dd%G>3N>DFsR+;tLhfhsLq zZcYsC=%T&((tV^#j<*0g8l#BbmeKICQeJt}N$NIVt=CG{Lz{ci#Bq-CZOn|*aC+#l zm6=|?V}K-`tB`b~bQ$(`f|4kl3cwK z|A4{&3lED7&BB#thKR;z_cxep1$qMCAQj~X|0eC3Ho)uBazTFw`&aC(T{QY$fppSV}V-HI;^ja&VhwyHFX9PDNHRv|eONYFWLk&5jtXem)iqOOezfnSLCJ z;((77F)LA?adpHCY4Ds}Oe>y!pnsiXFU_Y#CibN1aLrC08Bfv+b*A!C>XTShlYH!; zM_#6YW=KR?z0OM-#~)}dioW7yDav4zc6^I&h6Qc2Ws?!JflZ2Agg&D|8Sv~U*!geo zJDhLkS^R-zYxo7$+ZwJBY+k^1f_4qRQoD;)tl=u!xQlIy_wfWzDK>D2gzZ{h(Kpaa mfeyXPu-`dU5&u76;a**^P3<7mrSn0}bg@IxtLLU9X#E3aly*A+ diff --git a/src/out/production/src/Main.class b/src/out/production/src/Main.class deleted file mode 100644 index 02136407bfd96dee07fbc97232b2a92909479861..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5911 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 diff --git a/src/out/production/src/User.class b/src/out/production/src/User.class deleted file mode 100644 index 2eaadcd252816ba12f648da12c9c0f5534b70864..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 469 zcmZutO;5r=5Pe$;g<1sx@$=#hs=^Pzcp>rB=mF)vzy_C;*0cqGmxsp0gFnC@Wqeyq zJZPHE?7YmId2c?y-ai10aOT27$${;mjEX>GDK~Nu%4jjTpDxub6R2G4NM|}$Be)sRRe~@i^Z$dqzcuo=ZKu79sy_%}zK~BR$Ry>p8L?+tQKcJmG z>68WoQ);@&47Jl2Itgj@mwYTw9N?PrpPqFEclhtW;|dOvfE~E`)?5b zMGnWm%(3fV7Y0fV+$@0iTYbUj&RJ1lZw5fc$v*cP1_ugngmW* HSvdU$sTfwZ diff --git a/src/out/production/src/张三1/2025-09-24-08-36-42.txt b/src/out/production/src/张三1/2025-09-24-08-36-42.txt deleted file mode 100644 index 0afa8ba..0000000 --- a/src/out/production/src/张三1/2025-09-24-08-36-42.txt +++ /dev/null @@ -1,20 +0,0 @@ -1. (64-2) = - -2. 62 = - -3. 13 = - -4. 78 = - -5. 72 = - -6. (53-(53/((38+98)*32))) = - -7. (57-52) = - -8. (57+14) = - -9. (((17*(6-21))*93)+63) = - -10. 15 = - diff --git a/src/out/production/src/张三1/2025-09-24-08-36-49.txt b/src/out/production/src/张三1/2025-09-24-08-36-49.txt deleted file mode 100644 index 591f5c6..0000000 --- a/src/out/production/src/张三1/2025-09-24-08-36-49.txt +++ /dev/null @@ -1,20 +0,0 @@ -1. 70 = - -2. 39 = - -3. 47 = - -4. (21*(64+80)) = - -5. (32-32) = - -6. (76-34) = - -7. (27/8) = - -8. (51*47) = - -9. 9 = - -10. 82 = - diff --git a/src/out/production/src/张三1/2025-09-24-08-36-54.txt b/src/out/production/src/张三1/2025-09-24-08-36-54.txt deleted file mode 100644 index 07b6774..0000000 --- a/src/out/production/src/张三1/2025-09-24-08-36-54.txt +++ /dev/null @@ -1,42 +0,0 @@ -1. (45-((1*75)*36)) = - -2. 4 = - -3. (((33+(69*44))-56)-76) = - -4. 66 = - -5. 27 = - -6. 84 = - -7. (6/77) = - -8. 1 = - -9. (79+27) = - -10. (68+(92*(20*(55/1)))) = - -11. 8 = - -12. (67+(((49/50)/87)/23)) = - -13. (18*((51-31)*48)) = - -14. ((19*42)*29) = - -15. 37 = - -16. 63 = - -17. (69*47) = - -18. (((24/(40*17))*31)/93) = - -19. 20 = - -20. 3 = - -21. 95 = - diff --git a/src/张三1/2025-09-24-08-36-42.txt b/src/张三1/2025-09-24-08-36-42.txt deleted file mode 100644 index 0afa8ba..0000000 --- a/src/张三1/2025-09-24-08-36-42.txt +++ /dev/null @@ -1,20 +0,0 @@ -1. (64-2) = - -2. 62 = - -3. 13 = - -4. 78 = - -5. 72 = - -6. (53-(53/((38+98)*32))) = - -7. (57-52) = - -8. (57+14) = - -9. (((17*(6-21))*93)+63) = - -10. 15 = - diff --git a/src/张三1/2025-09-24-08-36-49.txt b/src/张三1/2025-09-24-08-36-49.txt deleted file mode 100644 index 591f5c6..0000000 --- a/src/张三1/2025-09-24-08-36-49.txt +++ /dev/null @@ -1,20 +0,0 @@ -1. 70 = - -2. 39 = - -3. 47 = - -4. (21*(64+80)) = - -5. (32-32) = - -6. (76-34) = - -7. (27/8) = - -8. (51*47) = - -9. 9 = - -10. 82 = - diff --git a/src/张三1/2025-09-24-08-36-54.txt b/src/张三1/2025-09-24-08-36-54.txt deleted file mode 100644 index 07b6774..0000000 --- a/src/张三1/2025-09-24-08-36-54.txt +++ /dev/null @@ -1,42 +0,0 @@ -1. (45-((1*75)*36)) = - -2. 4 = - -3. (((33+(69*44))-56)-76) = - -4. 66 = - -5. 27 = - -6. 84 = - -7. (6/77) = - -8. 1 = - -9. (79+27) = - -10. (68+(92*(20*(55/1)))) = - -11. 8 = - -12. (67+(((49/50)/87)/23)) = - -13. (18*((51-31)*48)) = - -14. ((19*42)*29) = - -15. 37 = - -16. 63 = - -17. (69*47) = - -18. (((24/(40*17))*31)/93) = - -19. 20 = - -20. 3 = - -21. 95 = - diff --git a/src/张三1/2025-09-24-20-12-52.txt b/src/张三1/2025-09-24-20-12-52.txt deleted file mode 100644 index 023bc0e..0000000 --- a/src/张三1/2025-09-24-20-12-52.txt +++ /dev/null @@ -1,30 +0,0 @@ -1. 35 = - -2. 91 = - -3. 68 = - -4. 2 = - -5. 74 = - -6. 80 = - -7. (8/15) = - -8. 93 = - -9. (68/70) = - -10. 8 = - -11. (61-49) = - -12. (2-16) = - -13. (64-76) = - -14. 5 = - -15. 94 = - diff --git a/src/张三1/2025-09-24-20-22-13.txt b/src/张三1/2025-09-24-20-22-13.txt deleted file mode 100644 index 6394ae8..0000000 --- a/src/张三1/2025-09-24-20-22-13.txt +++ /dev/null @@ -1,60 +0,0 @@ -1. (100/((72/91)+(33*87))) = - -2. 84 = - -3. 72 = - -4. 34 = - -5. (70+55) = - -6. (35/14) = - -7. (((26/34)-77)/26) = - -8. 81 = - -9. (55+30) = - -10. (38*(((40*17)-44)-54)) = - -11. (90/39) = - -12. 15 = - -13. (28+22) = - -14. 3 = - -15. 33 = - -16. 46 = - -17. 68 = - -18. 38 = - -19. 48 = - -20. (36*53) = - -21. ((12-((34+98)-49))*13) = - -22. (6/(90*(42*(72/50)))) = - -23. (52+87) = - -24. 98 = - -25. 90 = - -26. ((86+43)-18) = - -27. 64 = - -28. 22 = - -29. 89 = - -30. 91 = - diff --git a/src/张三1/2025-09-24-20-22-19.txt b/src/张三1/2025-09-24-20-22-19.txt deleted file mode 100644 index c3c6ae7..0000000 --- a/src/张三1/2025-09-24-20-22-19.txt +++ /dev/null @@ -1,60 +0,0 @@ -1. 8 = - -2. ((76+92)/52) = - -3. 6 = - -4. 31 = - -5. (72+60) = - -6. 54 = - -7. ((58-93)*(66+34)) = - -8. 4 = - -9. 28 = - -10. 43 = - -11. 83 = - -12. ((11+(49/(89*57)))+7) = - -13. 75 = - -14. 77 = - -15. 9 = - -16. (28*89) = - -17. 74 = - -18. 60 = - -19. 56 = - -20. 47 = - -21. (22+(99-58)) = - -22. (28*30) = - -23. 67 = - -24. 14 = - -25. (10/(63*12)) = - -26. ((84*17)/31) = - -27. 70 = - -28. 93 = - -29. ((86-82)*(17/90)) = - -30. 27 = - diff --git a/src/张三1/2025-09-24-20-22-21.txt b/src/张三1/2025-09-24-20-22-21.txt deleted file mode 100644 index 68c3fd3..0000000 --- a/src/张三1/2025-09-24-20-22-21.txt +++ /dev/null @@ -1,60 +0,0 @@ -1. (8*37) = - -2. ((30/65)*85) = - -3. 59 = - -4. 79 = - -5. 40 = - -6. 45 = - -7. (91*11) = - -8. 65 = - -9. (12-(5/((80/23)/9))) = - -10. (28*(9+3)) = - -11. ((((73-99)/84)-45)+40) = - -12. 44 = - -13. 36 = - -14. ((48-(20-(39-74)))-22) = - -15. 24 = - -16. (54/32) = - -17. (61*(((62-96)+70)-21)) = - -18. 5 = - -19. (81*55) = - -20. ((9/(78*78))-44) = - -21. 78 = - -22. ((52+71)-66) = - -23. ((74*(64/(92-85)))-55) = - -24. 80 = - -25. (((92/(71*15))/92)/46) = - -26. 96 = - -27. ((65/66)*79) = - -28. (78-((68*(71+54))+19)) = - -29. 1 = - -30. (2-(27-(56/19))) = - diff --git a/src/张三1/2025-09-24-20-22-22.txt b/src/张三1/2025-09-24-20-22-22.txt deleted file mode 100644 index 2cdde78..0000000 --- a/src/张三1/2025-09-24-20-22-22.txt +++ /dev/null @@ -1,60 +0,0 @@ -1. 61 = - -2. 76 = - -3. 94 = - -4. (4-(((45/3)-70)*44)) = - -5. 35 = - -6. ((57-((44/68)*50))/11) = - -7. ((2+19)/(23/84)) = - -8. (((42+(30*27))*56)-10) = - -9. ((39*18)*(100+5)) = - -10. 12 = - -11. 58 = - -12. ((((64-28)/9)-20)+5) = - -13. ((38+((68+18)/71))*76) = - -14. (90*7) = - -15. 100 = - -16. ((15/(83+(29-77)))+90) = - -17. ((((57*7)-1)-8)/97) = - -18. 52 = - -19. (73-16) = - -20. (61+68) = - -21. ((83/29)/80) = - -22. 71 = - -23. ((67*58)*42) = - -24. 19 = - -25. 55 = - -26. (13/(53+(71*(82+2)))) = - -27. (11/((14-(13+66))/67)) = - -28. 69 = - -29. (62-61) = - -30. 51 = - diff --git a/src/张三1/2025-09-24-20-22-57.txt b/src/张三1/2025-09-24-20-22-57.txt deleted file mode 100644 index e5ad58c..0000000 --- a/src/张三1/2025-09-24-20-22-57.txt +++ /dev/null @@ -1,60 +0,0 @@ -1. 11 = - -2. ((((78/6)+4)*26)/81) = - -3. 26 = - -4. (19+(42/91)) = - -5. (7+58) = - -6. ((53+14)/26) = - -7. 17 = - -8. (56-(((81+82)+47)-52)) = - -9. (69-(36*(2-71))) = - -10. (95/(3/((98/43)-93))) = - -11. (39-84) = - -12. ((40+72)+(7*36)) = - -13. (90-70) = - -14. 23 = - -15. (31*38) = - -16. 92 = - -17. 73 = - -18. (61-((52/(96+31))+24)) = - -19. ((30/(35/85))*29) = - -20. 95 = - -21. ((49*28)+51) = - -22. 30 = - -23. ((71*70)*11) = - -24. 63 = - -25. (((93+(87*79))+50)/14) = - -26. (30/(40*14)) = - -27. 37 = - -28. 97 = - -29. 87 = - -30. (33*77) = - diff --git a/src/张三1/2025-09-24-20-22-59.txt b/src/张三1/2025-09-24-20-22-59.txt deleted file mode 100644 index f9788de..0000000 --- a/src/张三1/2025-09-24-20-22-59.txt +++ /dev/null @@ -1,60 +0,0 @@ -1. 41 = - -2. 99 = - -3. (70+(64*20)) = - -4. (63+97) = - -5. ((20-(29-(53/24)))/58) = - -6. (19-75) = - -7. 53 = - -8. ((70+53)+54) = - -9. 7 = - -10. (61/(87+((6-34)-69))) = - -11. (88-((27+(32+51))-83)) = - -12. (88-45) = - -13. (75+(81+51)) = - -14. (95*8) = - -15. (18*((49+(28+81))/100)) = - -16. (14+28) = - -17. ((43*(30-(26*47)))*84) = - -18. (87-95) = - -19. 42 = - -20. 29 = - -21. (25+(27+(27*71))) = - -22. 20 = - -23. (50/99) = - -24. 62 = - -25. 18 = - -26. ((61*(94/(65/16)))*48) = - -27. (100+28) = - -28. (13/8) = - -29. 57 = - -30. (((42-(93/8))+8)-27) = - diff --git a/src/张三1/2025-09-24-20-23-00.txt b/src/张三1/2025-09-24-20-23-00.txt deleted file mode 100644 index 7c49281..0000000 --- a/src/张三1/2025-09-24-20-23-00.txt +++ /dev/null @@ -1,60 +0,0 @@ -1. (56+41) = - -2. (29-36) = - -3. (99-((82/(91/13))-77)) = - -4. ((43/((59*32)/70))+14) = - -5. (57+(16*53)) = - -6. ((((90*33)*68)-60)*61) = - -7. (29/(96-(68+66))) = - -8. (37/39) = - -9. (28-24) = - -10. 25 = - -11. (70/44) = - -12. (79-((50+(10*15))-83)) = - -13. (57/45) = - -14. (91/3) = - -15. ((41+16)*65) = - -16. 10 = - -17. ((57-((29+82)*41))-33) = - -18. ((73/(19-(7*17)))+99) = - -19. 82 = - -20. 16 = - -21. ((96+(99+(17-37)))/9) = - -22. (64*(94+((57+25)*20))) = - -23. ((19*94)*38) = - -24. (77*((20-36)+16)) = - -25. ((((6/85)*34)/91)-13) = - -26. ((((8+84)/14)-74)*70) = - -27. (((78+(48-44))-21)*37) = - -28. (68-65) = - -29. ((13-33)*46) = - -30. ((11*76)*92) = - diff --git a/src/王五1/2025-09-24-20-13-46.txt b/src/王五1/2025-09-24-20-13-46.txt deleted file mode 100644 index 2b3bc3b..0000000 --- a/src/王五1/2025-09-24-20-13-46.txt +++ /dev/null @@ -1,20 +0,0 @@ -1. (96/cos(76)) = - -2. sin(98) = - -3. cos(43) = - -4. tan(86) = - -5. sin(cos((sin(92)/(12+27)))) = - -6. cos(3) = - -7. cos(84) = - -8. tan(79) = - -9. tan(29) = - -10. cos(((98-51)/sin(35))) = - -- 2.34.1 From 7555aae6e0bbf53854ef274f1b17157bed6578d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=96=E5=85=AE=E5=86=89?= <15550273+wang-shengfa-11@user.noreply.gitee.com> Date: Sat, 27 Sep 2025 20:44:34 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=88=86=E5=8C=85=E5=AE=89=E6=94=BEjava?= =?UTF-8?q?=E6=96=87=E4=BB=B6=EF=BC=8C=E5=B9=B6=E6=96=B0=E5=BB=BA=E4=BA=86?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E5=8C=85=EF=BC=8C=E4=BD=BF=E7=B1=BB=E7=9A=84?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E6=9B=B4=E5=90=88=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 个人项目/.idea/.gitignore | 3 + 个人项目/.idea/.name | 1 + 个人项目/.idea/checkstyle-idea.xml | 19 +++ .../.idea/codeStyles/codeStyleConfig.xml | 5 + 个人项目/.idea/misc.xml | 6 + 个人项目/.idea/modules.xml | 8 + 个人项目/.idea/src.iml | 14 ++ 个人项目/.idea/vcs.xml | 6 + 个人项目/doc/个人修改代码.docx | Bin 0 -> 13492 bytes .../out/production/src/.idea/.gitignore | 3 + 个人项目/out/production/src/.idea/.name | 1 + .../production/src/.idea/checkstyle-idea.xml | 19 +++ .../src/.idea/codeStyles/codeStyleConfig.xml | 5 + .../out/production/src/.idea/misc.xml | 6 + .../out/production/src/.idea/modules.xml | 8 + 个人项目/out/production/src/.idea/src.iml | 14 ++ 个人项目/out/production/src/.idea/vcs.xml | 6 + .../src/doc/个人修改代码.docx | Bin 0 -> 13492 bytes .../production/src/src/.idea/workspace.xml | 90 +++++++++++ .../src/src/auth/Authenticator.class | Bin 0 -> 2182 bytes .../src/src/history/HistoryManager.class | Bin 0 -> 5304 bytes .../out/production/src/src/model/Level.class | Bin 0 -> 1319 bytes .../out/production/src/src/model/User.class | Bin 0 -> 783 bytes .../question/AbstractQuestionGenerator.class | Bin 0 -> 934 bytes .../src/question/ElementaryGenerator.class | Bin 0 -> 1654 bytes .../src/src/question/JuniorGenerator.class | Bin 0 -> 2340 bytes .../src/src/question/SeniorGenerator.class | Bin 0 -> 2397 bytes .../out/production/src/src/start/Main.class | Bin 0 -> 3034 bytes .../out/production/src/src/util/Auth.class | Bin 0 -> 1379 bytes .../production/src/src/util/Question$1.class | Bin 0 -> 690 bytes .../production/src/src/util/Question.class | Bin 0 -> 3200 bytes .../src/张三1/2025-09-27-19-01-58.txt | 40 +++++ .../src/张三1/2025-09-27-19-02-43.txt | 60 ++++++++ .../src/张三1/2025-09-27-19-03-08.txt | 60 ++++++++ .../src/张三1/2025-09-27-19-29-03.txt | 60 ++++++++ .../src/张三1/2025-09-27-19-29-06.txt | 60 ++++++++ .../src/张三1/2025-09-27-19-35-42.txt | 60 ++++++++ .../src/张三1/2025-09-27-19-35-57.txt | 60 ++++++++ .../src/张三1/2025-09-27-19-35-58.txt | 60 ++++++++ .../src/张三1/2025-09-27-19-36-05.txt | 40 +++++ .../src/张三1/2025-09-27-19-45-19.txt | 60 ++++++++ .../src/张三2/2025-09-26-11-46-26.txt | 20 +++ .../src/张三2/2025-09-26-11-46-28.txt | 40 +++++ .../src/张三2/2025-09-26-11-46-39.txt | 40 +++++ .../src/张三2/2025-09-26-11-46-45.txt | 60 ++++++++ .../src/李四1/2025-09-27-19-29-33.txt | 60 ++++++++ .../src/李四3/2025-09-27-19-29-45.txt | 60 ++++++++ .../src/王五1/2025-09-24-20-13-46.txt | 20 +++ 个人项目/src/auth/Authenticator.java | 60 ++++++++ 个人项目/src/history/HistoryManager.java | 140 ++++++++++++++++++ 个人项目/src/model/Level.java | 47 ++++++ 个人项目/src/model/User.java | 39 +++++ .../question/AbstractQuestionGenerator.java | 57 +++++++ .../src/question/ElementaryGenerator.java | 58 ++++++++ .../src/question/JuniorGenerator.java | 99 +++++++++++++ .../src/question/SeniorGenerator.java | 92 ++++++++++++ 个人项目/src/start/Main.java | 61 ++++++++ 个人项目/src/util/Auth.java | 39 +++++ 个人项目/src/util/Question.java | 99 +++++++++++++ 个人项目/张三1/2025-09-27-19-01-58.txt | 40 +++++ 个人项目/张三1/2025-09-27-19-02-43.txt | 60 ++++++++ 个人项目/张三1/2025-09-27-19-03-08.txt | 60 ++++++++ 个人项目/张三1/2025-09-27-19-29-03.txt | 60 ++++++++ 个人项目/张三1/2025-09-27-19-29-06.txt | 60 ++++++++ 个人项目/张三1/2025-09-27-19-35-42.txt | 60 ++++++++ 个人项目/张三1/2025-09-27-19-35-57.txt | 60 ++++++++ 个人项目/张三1/2025-09-27-19-35-58.txt | 60 ++++++++ 个人项目/张三1/2025-09-27-19-36-05.txt | 40 +++++ 个人项目/张三1/2025-09-27-19-45-19.txt | 60 ++++++++ 个人项目/张三2/2025-09-26-11-46-26.txt | 20 +++ 个人项目/张三2/2025-09-26-11-46-28.txt | 40 +++++ 个人项目/张三2/2025-09-26-11-46-39.txt | 40 +++++ 个人项目/张三2/2025-09-26-11-46-45.txt | 60 ++++++++ 个人项目/李四1/2025-09-27-19-29-33.txt | 60 ++++++++ 个人项目/李四3/2025-09-27-19-29-45.txt | 60 ++++++++ 个人项目/李四3/2025-09-27-20-42-19.txt | 60 ++++++++ 个人项目/李四3/2025-09-27-20-42-21.txt | 60 ++++++++ 个人项目/王五1/2025-09-24-20-13-46.txt | 20 +++ 78 files changed, 2845 insertions(+) create mode 100644 个人项目/.idea/.gitignore create mode 100644 个人项目/.idea/.name create mode 100644 个人项目/.idea/checkstyle-idea.xml create mode 100644 个人项目/.idea/codeStyles/codeStyleConfig.xml create mode 100644 个人项目/.idea/misc.xml create mode 100644 个人项目/.idea/modules.xml create mode 100644 个人项目/.idea/src.iml create mode 100644 个人项目/.idea/vcs.xml create mode 100644 个人项目/doc/个人修改代码.docx create mode 100644 个人项目/out/production/src/.idea/.gitignore create mode 100644 个人项目/out/production/src/.idea/.name create mode 100644 个人项目/out/production/src/.idea/checkstyle-idea.xml create mode 100644 个人项目/out/production/src/.idea/codeStyles/codeStyleConfig.xml create mode 100644 个人项目/out/production/src/.idea/misc.xml create mode 100644 个人项目/out/production/src/.idea/modules.xml create mode 100644 个人项目/out/production/src/.idea/src.iml create mode 100644 个人项目/out/production/src/.idea/vcs.xml create mode 100644 个人项目/out/production/src/doc/个人修改代码.docx create mode 100644 个人项目/out/production/src/src/.idea/workspace.xml create mode 100644 个人项目/out/production/src/src/auth/Authenticator.class create mode 100644 个人项目/out/production/src/src/history/HistoryManager.class create mode 100644 个人项目/out/production/src/src/model/Level.class create mode 100644 个人项目/out/production/src/src/model/User.class create mode 100644 个人项目/out/production/src/src/question/AbstractQuestionGenerator.class create mode 100644 个人项目/out/production/src/src/question/ElementaryGenerator.class create mode 100644 个人项目/out/production/src/src/question/JuniorGenerator.class create mode 100644 个人项目/out/production/src/src/question/SeniorGenerator.class create mode 100644 个人项目/out/production/src/src/start/Main.class create mode 100644 个人项目/out/production/src/src/util/Auth.class create mode 100644 个人项目/out/production/src/src/util/Question$1.class create mode 100644 个人项目/out/production/src/src/util/Question.class create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-01-58.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-02-43.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-03-08.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-29-03.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-29-06.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-35-42.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-35-57.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-35-58.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-36-05.txt create mode 100644 个人项目/out/production/src/张三1/2025-09-27-19-45-19.txt create mode 100644 个人项目/out/production/src/张三2/2025-09-26-11-46-26.txt create mode 100644 个人项目/out/production/src/张三2/2025-09-26-11-46-28.txt create mode 100644 个人项目/out/production/src/张三2/2025-09-26-11-46-39.txt create mode 100644 个人项目/out/production/src/张三2/2025-09-26-11-46-45.txt create mode 100644 个人项目/out/production/src/李四1/2025-09-27-19-29-33.txt create mode 100644 个人项目/out/production/src/李四3/2025-09-27-19-29-45.txt create mode 100644 个人项目/out/production/src/王五1/2025-09-24-20-13-46.txt create mode 100644 个人项目/src/auth/Authenticator.java create mode 100644 个人项目/src/history/HistoryManager.java create mode 100644 个人项目/src/model/Level.java create mode 100644 个人项目/src/model/User.java create mode 100644 个人项目/src/question/AbstractQuestionGenerator.java create mode 100644 个人项目/src/question/ElementaryGenerator.java create mode 100644 个人项目/src/question/JuniorGenerator.java create mode 100644 个人项目/src/question/SeniorGenerator.java create mode 100644 个人项目/src/start/Main.java create mode 100644 个人项目/src/util/Auth.java create mode 100644 个人项目/src/util/Question.java create mode 100644 个人项目/张三1/2025-09-27-19-01-58.txt create mode 100644 个人项目/张三1/2025-09-27-19-02-43.txt create mode 100644 个人项目/张三1/2025-09-27-19-03-08.txt create mode 100644 个人项目/张三1/2025-09-27-19-29-03.txt create mode 100644 个人项目/张三1/2025-09-27-19-29-06.txt create mode 100644 个人项目/张三1/2025-09-27-19-35-42.txt create mode 100644 个人项目/张三1/2025-09-27-19-35-57.txt create mode 100644 个人项目/张三1/2025-09-27-19-35-58.txt create mode 100644 个人项目/张三1/2025-09-27-19-36-05.txt create mode 100644 个人项目/张三1/2025-09-27-19-45-19.txt create mode 100644 个人项目/张三2/2025-09-26-11-46-26.txt create mode 100644 个人项目/张三2/2025-09-26-11-46-28.txt create mode 100644 个人项目/张三2/2025-09-26-11-46-39.txt create mode 100644 个人项目/张三2/2025-09-26-11-46-45.txt create mode 100644 个人项目/李四1/2025-09-27-19-29-33.txt create mode 100644 个人项目/李四3/2025-09-27-19-29-45.txt create mode 100644 个人项目/李四3/2025-09-27-20-42-19.txt create mode 100644 个人项目/李四3/2025-09-27-20-42-21.txt create mode 100644 个人项目/王五1/2025-09-24-20-13-46.txt diff --git a/个人项目/.idea/.gitignore b/个人项目/.idea/.gitignore new file mode 100644 index 0000000..359bb53 --- /dev/null +++ b/个人项目/.idea/.gitignore @@ -0,0 +1,3 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml diff --git a/个人项目/.idea/.name b/个人项目/.idea/.name new file mode 100644 index 0000000..71d8bb9 --- /dev/null +++ b/个人项目/.idea/.name @@ -0,0 +1 @@ +AbstractQuestionGenerator.java \ No newline at end of file diff --git a/个人项目/.idea/checkstyle-idea.xml b/个人项目/.idea/checkstyle-idea.xml new file mode 100644 index 0000000..93d2549 --- /dev/null +++ b/个人项目/.idea/checkstyle-idea.xml @@ -0,0 +1,19 @@ + + + + 11.0.1 + JavaOnly + true + true + + + + \ No newline at end of file diff --git a/个人项目/.idea/codeStyles/codeStyleConfig.xml b/个人项目/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..b9d18bf --- /dev/null +++ b/个人项目/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/个人项目/.idea/misc.xml b/个人项目/.idea/misc.xml new file mode 100644 index 0000000..13c4cae --- /dev/null +++ b/个人项目/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/个人项目/.idea/modules.xml b/个人项目/.idea/modules.xml new file mode 100644 index 0000000..f669a0e --- /dev/null +++ b/个人项目/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/个人项目/.idea/src.iml b/个人项目/.idea/src.iml new file mode 100644 index 0000000..97a00f8 --- /dev/null +++ b/个人项目/.idea/src.iml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/个人项目/.idea/vcs.xml b/个人项目/.idea/vcs.xml new file mode 100644 index 0000000..6c0b863 --- /dev/null +++ b/个人项目/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/个人项目/doc/个人修改代码.docx b/个人项目/doc/个人修改代码.docx new file mode 100644 index 0000000000000000000000000000000000000000..91e95b45c1e5d6531ea70247f88f69b6993b4a71 GIT binary patch literal 13492 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 I{dV>L07>^T`v3p{ literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/.idea/.gitignore b/个人项目/out/production/src/.idea/.gitignore new file mode 100644 index 0000000..359bb53 --- /dev/null +++ b/个人项目/out/production/src/.idea/.gitignore @@ -0,0 +1,3 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml diff --git a/个人项目/out/production/src/.idea/.name b/个人项目/out/production/src/.idea/.name new file mode 100644 index 0000000..71d8bb9 --- /dev/null +++ b/个人项目/out/production/src/.idea/.name @@ -0,0 +1 @@ +AbstractQuestionGenerator.java \ No newline at end of file diff --git a/个人项目/out/production/src/.idea/checkstyle-idea.xml b/个人项目/out/production/src/.idea/checkstyle-idea.xml new file mode 100644 index 0000000..93d2549 --- /dev/null +++ b/个人项目/out/production/src/.idea/checkstyle-idea.xml @@ -0,0 +1,19 @@ + + + + 11.0.1 + JavaOnly + true + true + + + + \ No newline at end of file diff --git a/个人项目/out/production/src/.idea/codeStyles/codeStyleConfig.xml b/个人项目/out/production/src/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..b9d18bf --- /dev/null +++ b/个人项目/out/production/src/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/个人项目/out/production/src/.idea/misc.xml b/个人项目/out/production/src/.idea/misc.xml new file mode 100644 index 0000000..13c4cae --- /dev/null +++ b/个人项目/out/production/src/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/个人项目/out/production/src/.idea/modules.xml b/个人项目/out/production/src/.idea/modules.xml new file mode 100644 index 0000000..f669a0e --- /dev/null +++ b/个人项目/out/production/src/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/个人项目/out/production/src/.idea/src.iml b/个人项目/out/production/src/.idea/src.iml new file mode 100644 index 0000000..97a00f8 --- /dev/null +++ b/个人项目/out/production/src/.idea/src.iml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/个人项目/out/production/src/.idea/vcs.xml b/个人项目/out/production/src/.idea/vcs.xml new file mode 100644 index 0000000..6c0b863 --- /dev/null +++ b/个人项目/out/production/src/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/个人项目/out/production/src/doc/个人修改代码.docx b/个人项目/out/production/src/doc/个人修改代码.docx new file mode 100644 index 0000000000000000000000000000000000000000..91e95b45c1e5d6531ea70247f88f69b6993b4a71 GIT binary patch literal 13492 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 I{dV>L07>^T`v3p{ literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/.idea/workspace.xml b/个人项目/out/production/src/src/.idea/workspace.xml new file mode 100644 index 0000000..6d59146 --- /dev/null +++ b/个人项目/out/production/src/src/.idea/workspace.xml @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1758972717869 + + + + \ No newline at end of file diff --git a/个人项目/out/production/src/src/auth/Authenticator.class b/个人项目/out/production/src/src/auth/Authenticator.class new file mode 100644 index 0000000000000000000000000000000000000000..fccb73e78599f035eb22b37a4bf1f53bc13988f4 GIT binary patch literal 2182 zcmZ`)TT@$A7+pIFoDdF$hKnG*SZpDILLi{f22n(6so^4lP}c_ zPCIJH3op`f#BrR_akQ1uU?Ic!q7VKFA8epL@$6+fe)}ZN1>ysT*?aBpvey3g%5M)= z*8z0lngs?J1(-zSAeW(NN}81%eo38h^p8!+K8+!_T~QUSgTZLCdj*&ocI$`2n&NjH zmqL@h(u@THjCsh1D4;;ZE)+79g@QhZ6xJpko%E4aP4P)uAjpst4#~j~L!mpBhjO^g z*v%lsqD%LFy3r({m|+)BF&!9}{f=RZF{6~aXmU2^;SrPzs1WfeDk)Lwm|LEe{S20F zcXw}h-%#h^D7EX}hPy1VVlQXBkD<*LZ$szo(SnLP;mWeJJ%!zykH>I8K$VEcagd=P zgADaK6DIL8vd0xo&z{(^rxi?WnNgh-!)b;sxo9?{mKGbI-i+P4)x?!JETW#vkb7dd zucv>|3`Y{D$fo3iBAaQkdGpm$hIU-kw=q@W&!OP*Y5F2swxNb z(1E7~JR_nL&t?pd=TbUDa z?FkW+P^gm$nd(-j*Zu#or|_wd z&xLho|CC)nK;c>Lk+^WXq-oh%xWJ=HzH_9C&O^XuGCofr9Q4V@6rF5_@iy@3#sM;E z16e}sxbYEk_uA%hS!NmCE4;Dc#{UFiv0gA oT&6l*WE^vtC#l}1x+O3?fKz}=z=(i%{zbJwW5;lXFaxgs2Uti${r~^~ literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/history/HistoryManager.class b/个人项目/out/production/src/src/history/HistoryManager.class new file mode 100644 index 0000000000000000000000000000000000000000..08096407fe8a4ee118988bea39e19c48f8b6a30e GIT binary patch literal 5304 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 literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/model/Level.class b/个人项目/out/production/src/src/model/Level.class new file mode 100644 index 0000000000000000000000000000000000000000..95800f9b93ca59a64075b5dfbd371fb426129930 GIT binary patch literal 1319 zcmZuxO-~bH5Pr7p_G4L~tWX3|kq>RlM@7J|Rs?H}m{JUd#>Uf9*0N-~O_r9kM{i!e zc=cjPu&5A?hO@sz4*m(_%-f>H@+P~}nRn)ynP+DEjWYnjF66*jf0P=zU*Ix%&q z=tNM0ZzQ*nUQ1;qXwO^V6lgf-Lr_IGdL+mNt85z*y2Fw5mcFCMEZr`~me;q8LM5)C z7w3KGQ_+tL5<31lr0i;m67A?#)mVNZVK&?powW4r?Rb+RTX9Ug7;nzN00RG_ic7dm zttCv`tjtLWHA6Kb7b7|D`HG4m3=?y-`&28FEU+4NNo9f`Dy7Un|uVb8_!V((Gvs(xz=> zs-<x#|>*M<(~D zh;^Uj&6%Gf>U!y;kmvh&^8u2y)BiBA~(KzbdngKoJ%FO}bh5io3s?il>8XpMhyb8eBKo!q%We(1#M zaUnr<+`}Bbx!V{?u3nCQ#NhvhkBbcT!sU8~pu$V}H<)V$dcEHu<=r*7vw2SqzHDBu z(SR84G;e;~$9yCB8BK@J%vXxlM%>!y0j}-CE!3z-8xyKes1vd_DOBYU*Z0xRl+=;6 ZI$bo$E}}7n3D7@bqtgXEAU_w9e*k}&{=@(P literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/model/User.class b/个人项目/out/production/src/src/model/User.class new file mode 100644 index 0000000000000000000000000000000000000000..f89fdb79e6b662ea6fe0bd69295387714ec0d6df GIT binary patch literal 783 zcmZuuTT22_5dKCtubY~gWp^I}-7fnY6uksNAQf1?AMIcp>l(Xj{jGu|=%F9bkBVk? zh01(6b7q+Da=!EV_5K0i6!jbuNTy+!m_v$Cx>t|Nc9qw+FT3};7ZOs(j^~6Ygk+=H z$s&Vn8aWern1n*$_w2#&R=f61pnXDS#KltsO(?g1xZ0ubc>NCXj75SeQjT(4`cb=th1L&$G&&+2HvaR@m`nqk9fEPnP6@@9Y^G)x?ncYqb+d0OL+nIc_^ZlWx1D)MXWi5RmsQMS3t y)|~Z<`DebwQmJUT5mB4*!i1WzJ`9ZZ~GfPj*D3U literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/question/AbstractQuestionGenerator.class b/个人项目/out/production/src/src/question/AbstractQuestionGenerator.class new file mode 100644 index 0000000000000000000000000000000000000000..2888be9ce03a25adfca00c490e65b55af778471f GIT binary patch literal 934 zcmaizZEMp|6vzL!Nt>=l*JW+BK1`=}HmzH9f^RB<4kv}Mq0vGW!L+^9JJO^k>6qWi z7YfdS;y!>MN<25o=3t6%?#Vg#-rxT`-2D9Y?GV5Q?v;>(qCwS>M}eWdhGi}z1q6nb`Q_@^~{kJ`1oVJ`l*_(zuifAgNDWab1iP2^dCaq+s zHcwwRUon)NU=|MfrjQjc{d1gaa)jzKjV(v-D~F1F4D?lzGbEb_4HDOBy+PhfD9O2M z>wpIE9a{eYbNeW@+WRPfP5?J)HK5X3p;aeXmA-0dP^6Y##tLqc2ilP$G$}M;W)k=5 z45K~0^#!H!=qoDf+mGbuAjySfZz-Ya>A8%iqJ?(Gctb>4PDA^F3w_17==4?NveVBS zOHRLFTyyNUq_+==zW(VLE`KdhYIREIPr8jvpiafy#wwV~utriKYvB&vV7Qww)_(&m CB*Rt! literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/question/ElementaryGenerator.class b/个人项目/out/production/src/src/question/ElementaryGenerator.class new file mode 100644 index 0000000000000000000000000000000000000000..f450ce3db7ab274c99f6ce7798451448e107509c GIT binary patch literal 1654 zcma)7?Q#=U7=BK=&9>WxwxOkzs#Gi`Nee+mMS@_PrVvb8X*zY(Uz_BREZywJ-IETz z6L6gI2AmNcr!xHT0=xrnhT+){YOoo`&E)L)c;DxJ-jDO{-!EVM1)zkTailP!Lo+do zw7_KGHw#^_C7nW59!N*PC|Aq1^49L!&bI>7)&HCq4UA!2hhbs@roeJ|{zG2|%J$sC zS|d=t)l?6Xjl0s7zNI{0AbrbrZFO5a zH_?uTIY)chGZuPqj zNv|ndF|dS7I+jgb4tGCcohXNbYbt33g&#Im8&Roj)Zzq?ixpG?(j zTF##3+u=Id)KteNkBd?Aj|*l)e(f_k0-yEG>c2mh7pHfT+;4BOj{cR1Ui_nUIl4%2^b z2!W;AZ#}t$)+j}mOuhg zvK*&wE6H%16_SqRC~s}-7q8c8_MPz2AlP}Xar}_0 zPua}`-(&gTA^wE^8|Nu}#L?gzn1arZ@-b&-EQjm(geyVKl?3Bjf|1VaM>zG2r!hi0 z(pVVKPAA%_uuCP{zmm}?b?z)Y#dQ7;oH@eW4Bmb66Q&mQpD~d?!iDGf;8}h_YZ1Q2 zb#^OR+|*XD%xf>O3WR1yBI4(f=6o4*Y!?@hZ=A1u-?GGGQ2QQ|EQ~cwcyu(tZiY$bRhhjmXy7`1IIT3SSb9 d4FGGA{5roV3_f=@`QJd5D}%Edw($V-uK>~zkzoJ; literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/question/JuniorGenerator.class b/个人项目/out/production/src/src/question/JuniorGenerator.class new file mode 100644 index 0000000000000000000000000000000000000000..9b00f5e28261160210568daef4116b2357248ba6 GIT binary patch literal 2340 zcma)7&2tlF9Dd#;-A&W2EwOxrf+7}3!$+_n0;!fHZ6P(KZBojY7PrYuvNYWdyPHbY zn@7hR2VfkBn->r0IF;exc=kW==Fz{wVH}^`Y-#k*!a?~&l_alLU7vHvZvudpf#M`)*Yc$d& z|BUwRK|;k|4TIPx(C-s<00d&DyyuQvt)+$(2q%Zfm9ak`dcQ}WP6sr+gM)NpO}cH$ z%dM3qNs9?B#4vcIdfYX`-{Qh&m%pm;TVq7{hOpY!_@7y znWpEzZLEz`FsY8U^F+GZgDchMbult!4FIpA7v7pdNa_d&v1BS zR3|MvXbw9&Jsecq@D0|9?9e4vwpw;YP8wd(47^~#39rZ)gq&r$Uc+ckOSf)SohWK7 zh@?2c|8Nurb@U=FqFCm+w@iBHEab3Q9ErjrfG3M1eG2ZzV8c=2dg;{?82Y~>80MiT$A=ouQ&-Ew`GPSJufE!TGhO+y;KLgJEXrj;y$u z&U6nb@_M6DHeAV&X$6zrGvCl1N7Ar+0*79*X**R_e8CKQHIx}#v8DB zRUE=RS6Ul~D_G!8;3|#>947+~C8e&T?+I^1@E8`H|FMq{^4hM+iur@7mZZiAbU=p*+J0 z;0duK#Gc)_j3grAb)4=`KE^)cBI`Kok(}-yevF<(kjMIJ0l4%Z4$>e#x z#HgR*H}4v*(@*F4p}fIW7dbTC^58`_)GBZMy0Cq!( ztIu&N{2ZrM4E+Ocj&Z@Dd@|YDB-nE_o?S=&5wxT6i(EW}8u9xPEk;XkV&91mY$V?c$nAygqbAD}@^B5wO*-5>AxW5XX!tP&L?;&ZIg HU5Wny$`Bp; literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/question/SeniorGenerator.class b/个人项目/out/production/src/src/question/SeniorGenerator.class new file mode 100644 index 0000000000000000000000000000000000000000..3e09f30688d7b90e78155d2a62536a47146549e6 GIT binary patch literal 2397 zcma)7T~`xV6x}yp6T(m+f)-J$7Bzutth82$6-oGth6D+sU@INMg^Yw5oJ^?p^QF&y zR#zW<>q{T3?V??-RewPLLErjA+OF<98EF(&mw`2N?!D)nd(J**pZWctXU_p-@pTIV z2xra+Z!EiWUtq9j(v>PO9^}by;&w z+e(ct*IdUayVv}UNoh&PaBYV!FPfI=UJ~d^?DCnM*YJkGp_hD>q-EO9j)xf9(4nIf zae>yghF@8#FAH=ha>@K1W6MZY4Qnk`avjrJOSe$JOGh{M^KQqmR_qOdctfx5n$^^- zx5s?mM307pI(l(Ppu=<2q#zKpt{1X%xniLtup?lULB@ELR}JB6?`0bzH=UtXa8Y zIHUeaR^d3J%`FIs zF@d%h<(OAxXGi46M<-rZYndLsximIDGdD$(T#%IwdCfFWl(J+gdo6ETve9O9hS!$y zyj?b`^M+%pwZ9p1D<;D~;_+>Vqp$EPO;)_1)A+qjN7ia&GOw!2Rif`Rrm1CV5U|;Y zVaHsnsQRqdt+K*TaWT9iH{A*u+F+cYWLwEK%Inj{rXN_lS>uVhGGROZ!0B#=*k^EZ zk=&C_Aw@5itNsv)mF&7xmJ_DpWY;SxolzVnv>DrW)jZmqmTtvfVTqWRmJmnzmyCir z1cZo!R1JxQNVZ4d#!$zWhEG*r-4p2hZ>*Tsmc1_h>C#}=1Sg&C+!uJz9KEmDxO0j_ zrYdWFdD~vEZ>D#%p=swO!@2vLau4-pJ{6bm$g-Pm?rPsf)~HrXrYl)0J!f$QXRAi7 zCTki#7dWvir@cbe@FhFv|5ZuFMqZqNZTu{-QE?DO%#fMaxC$V_^=#AnFxMr_?VMld znj?g|VeYkJp3fUxou{qfJKFyg;umN?dfsmG8RH2^Qw=AuKuK@tVG*~u68H$GeII9i zACZ1-8|_bc8i4W;@hnnJ))C)2puR2*Yf)q_8nqwvK165#&)Bz(16?@$;5)STZ{w|B z@%9scH<#!_g8QfXdqXR{X*fiM{^9V8Wuzz66YhyT!x`YoQ=C&~d_CXB`E%6ujlwfvo%Qr?C;l8@1*JUqiF?Hket;9KOq{AXFUL4No?#%<<1#INNNr7&%Dd_pP0^$-m2v_eWO zd#6OjM@&g&ub#)Tg%wsh0Lf@N5sGVnVKDeNMl|&CpRlfC%`c5XHC4uA1M%@~Og=*Q zK>VsF=mYU-3J;-$zDFqd!%missx5j^?{66I#Bhvx-KJ}Ga|FTO;AM_)m^#MyyST1VW5ave-t#W*^CZUI K&+rAlLeIadpe_dh literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/start/Main.class b/个人项目/out/production/src/src/start/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..4c8a6352a06c3ba891480f1da9cdf1a571d0eae9 GIT binary patch literal 3034 zcma)8?RON_8UNj|o4XkXkVKG0iYP%7Agn@t+eIuyk+hqL27;+?OqMYjvO5!YXQNbG zqb(#+nzcFaU(uUm|d$MQ0nQ{ecH(R#lZV{N*)Z8Tz z5m=hbrea3k?Tc;YVA`&gGF&ICK`K%61r~c!@~)MRb*2p4HnVkDfQ1r^blif)v($7R z%(-SppvJNVmL$ECmJ@5U2l8&Gn>CG0LW70|W#Fv>%bKcgY3@?mm+H6;%LKw{r&o!q zZ)#2|TQkl+GacKVGqaSn9JfoX(D4hb6j(U>x4@!a(`}=_mXS`HgJxQwVU`eYF`?X9 zrQ=TAMOd6XQ7T)$Gi%vp%Nwyq;%*)HpozlE+5+K{>N<>!DR3**l)SQ^&ZRZ<1FVIwwn{UJHW&XTX3?9Fbx|JlekyMeb`99N>EoAEFcGz z`Dqo4YErxEA+T0Sx?jfwN=(>0phEPJj)#?(5!-ylOjkLcK<)+@N>8z~T? zn;8wi!d8iGI{EmRzybx5#~sBkiX%h;S`Sn)sUpCBY$`+UuV~ngCnR?0Xv43`&KU(y z<;|RHIdoR1k|#_ORS{Vr(ex8y4+JM-TYGYD)=0S}5i^I$u=)|s4PI(~?b`Tnds>?{{NgpO>n?#qua^+p0m7^aA zV>|qJyI~s?skr})j&2o<`Ls+WgiZ2k*o|jZer;5<=XJb*7yTV2+XdPytuC49f%G#V z3EcC7nxsj@Xg3TUJxI}soH1x_x6*WCb)clYu_6p!`Zjk(z>S-x{(0)g*^4(${9|(D z-QvZg9B*DdS{%Q0{Xgf5pPVX=jNLf#(d5YZK_ z1rj4Hxhl&_F#L2eka%4{>vZzjR6y}MMY|0OGa|Ijaa>hK2HH)x&)JuY;B8u4ymq{J zqFp`Qw*|F@rxfBX6I;-L@x z-~KxHObx$t^XiEItL47p*x{+6ANS5 z9LEWXQFRBM6lg3H*RltlelzC7!mo{^aNyq8W4lcCEqVL1~0L%Qcn%05enu%eKY`udRJLavzm3;L>!OjUEa17g#;L~jy;NDhkE$xF4(WIAjS(gpb&Qj3JJHv-MDD4iK>p-ZKtoVM^=f=`8Wy&r3Q7mp$VFJc>L9 zY0W5Z$IEzyn4f1X4pN6k+s@)uyhh~L;B9Km(gy|KAMiTg5nRL&-e7zh@E+d89~tgH zab3mGmvM+P4s#_A`6C)6q=fbZ=1VO90bz;8AMuDp!ka`Th9!1t({z<>^bvnE&(6c2 fIo9AU9OZiC+p-=}Z}e@FCxa;t?) literal 0 HcmV?d00001 diff --git a/个人项目/out/production/src/src/util/Auth.class b/个人项目/out/production/src/src/util/Auth.class new file mode 100644 index 0000000000000000000000000000000000000000..8cf15183d6eb7ef314241dacf17d23b9dd3b735f GIT binary patch literal 1379 zcmZ`(-*XdH6#j0rn@zS`Qql%!RVebqq@_efgR}^i8nl?E*pxc@wv9XO)^t;oUDUTS zqa)1VID;?1jEWA@nKEe1Lx?=^$OHcd3DQ5o8Atr?rqyYyyL0c|^PO|gkMG>O5C6J% zAHXPbI@%D>pcqgQ6zH5c&zs4D>C7f4X6CKDD-b+xJGOg5AP`SXhY%77H!ptq_^Tfq z^?N#Wv}-U7bYRaU`90g66Ntq#|N3uP3@1L2PC5;2N0h+|mNP3& z8Ei}{x(&pzgE7nAOnJ>`EIyXl>PTAeGSGuw0fm+e0^RZdv3u6Qb240L&MeQ37C*E? z*u&t>%Gb?1x1^)J2A;=0Le|HgStxHxy+sXE58;5^cJbRr{Z0rk@O$<4Repz&K);3o z1BWmu5Gj}P$pwZfBs11|t3X=Pne=!%J2f)-zQFd(CjGG7pEU5I+#Eb}E;}|cDWR7Q z9Py!Cx&^(8l!l`QUc<4C?0;5vEfNqYdhB4VMV4Jmo@G;95^tFc!yya{9DDN1-6!|I zX@2ojtM*4r7h2UcuUu}G(x_i*)K^xQF0KCX8!P+$`sa=M5)mD*gC*Vs<|$GO|Wd14D9(C%2D_&%7ijKAgdGR(ROJz zdhV3lt+9Tr>aCxVgBNwVo?_rMz|8mUV??-G`-b?8PZwNcpru$ScYD zO-f0wf~(qp7vfi6o#rgn;Bh_8*=QNyExb)Bj4_-c!p&ly&Vt0M{ZXxk@HMRXACVfm zYS=k`Xh>;GsXa;!&)lXJaF!zg{bYsf5wu@8%5@*Qww>cT+M`5w*U)zj2LmZ}8GV%Z z`|=J&%AJ%C`f^ZBsWEkhdj>elv90Nt#MzXQIPu@hIY3s>p!JM`jvVmElHZ(=uYp$|Wk$_n=T%=AN{ z_B!4{hB@3oC&n>IzhneiV)ChCf|&4YA42<65*O5>*bq4Z@6oyt1hk;)F?2NjT;R0vo6E&v4}E; z%F{^6SZ2?PVfzf_E{Q~Xg)$a{{A4VWJw8^%EQdPcYM&?4;5k_vWjuOE|3AmhNasl; zcBHAO{nhG$nM*x`I8r*5@lju7Q$4ZKAt}x&OG^z%;}<%m{oGz0i=?Y~nu@f(L9cS1 z-j~%|=3R_O%sMv6-X!!9CGvpB-@#6QI$vRbF<Qr%63T!0`10yrI#G?xa^QAuQk43S_iU}u7ew@URPU8K6It*Q>m z=!|pG@iJaVP?>Q?T+S?9E*}^l0t?pC=b8TjOJ98S$t8ZLx;ou$;w5W!s!r8Ddw=`e z-`;ip|LwKU01V;%Bw}dL(5Ryc%>r#_j5#A?8_rB-V)~3U1A*p2%dvt30u6orQ%S^; z(2&%z3c5gh)qKPWj=+LnSYwK`j7yLjL2*)j{5akG#n>j}J0fR`RFc3$lfPV9xi#N}| z_{C>$-FW^#N!*4F8aC?a!X|+=Vfgx80$Ne|u$>=39%kRIV+*#@cFwR%a^kc=XWvMF zO`Z`E#Be(ax_SQcmoL12YvNOj^(pQP(N89Lx1;%o|x* z_0k9>M#-9a!#hZIG_o{9%Kq0n4lAabZRyMedG+W49Y-)Cknl^>ezcLLtgB_D**G2~ zk&otfBr%3@4HG(!;kdy1kkYVv9>qVOIc5Zb^r#=rbPGkxmIAw0U^J4;@{I#3Kvu^j zenTJZ2Q#l)YG197A?B8qr$OpC z9nKFGp-%k*Ev8#?f{7yaE)a7mQgsUAcxb7h*{x=Yz^ZX#8I$UZ$bz;Va^1jZ+ZD%Tkau%_9Dif0 zimmsxHsf3p=kd0Nca&b=6-ZSFyyeWfvocdgT9)uITi5j#1m3MxS7ccBeuNEYOFuR0 zy0fL?z;aR4JgM6_xloiVn4hY#FP|prc#K>O8Md9Z0?G2}BMv_sL$=}j(%0}0fu3bK ztpruWKLxsf+?2DwoENrnJjB@NKr^Vs@W01ZhAY8qQ~Cl?0O^X0DCMZ{y_U0d=4B)ZzV|BW_f zvTeyky^Z|G(L!%3`feVyfK7zCl}E45jM+^rThPfgx^O$6rmzz|{K{^}z32;3rqM|I z1}xyW^p~Kor}0df@&Wt~zo)-WT9)5F%T)`Sj%aB41}!47O6P_@;Ez#S=jcjta`aRD zBE5+I-5+zozfJt9=PKpx{O#dy|8-m*3v4yL#d_b`D&xCBh=>_;R`$esu``er(_|qK8M}YS>;p7qXHVScU5l8yfW&h`T)Opj*C*jlmE=as3;d|ZFwXi-U^Pz; z>u{X4%P!T5&Z3AhK7T%}TAWsY!3*5C8m&AJyhtSFTE)KQ`B}r5h7+n*FX80~S&_y{ z*S!Sv=;)5Cm~Q;w*4OG9|M1pV=^cxhxp3#-Uge7zUc>9WDy5|G2Jhm$dyBs}ae=E2TBLYITO5DKd-xYN Fd users = new HashMap<>(); + + /** + * 构造函数,初始化用户数据. + * 预置了不同难度级别的测试用户账户. + */ + public Authenticator() { + users.put("张三1", new User("张三1", "123", Level.ELEMENTARY)); + users.put("张三2", new User("张三2", "123", Level.ELEMENTARY)); + users.put("张三3", new User("张三3", "123", Level.ELEMENTARY)); + users.put("李四1", new User("李四1", "123", Level.JUNIOR)); + users.put("李四2", new User("李四2", "123", Level.JUNIOR)); + users.put("李四3", new User("李四3", "123", Level.JUNIOR)); + users.put("王五1", new User("王五1", "123", Level.SENIOR)); + users.put("王五2", new User("王五2", "123", Level.SENIOR)); + users.put("王五3", new User("王五3", "123", Level.SENIOR)); + } + + /** + * 用户登录验证. + * 通过控制台输入获取用户名和密码进行验证. + * + * @return 登录成功的用户对象,登录失败返回null + */ + public User login() { + Scanner scanner = new Scanner(System.in); + System.out.print("请输入用户名和密码(空格隔开):"); + String inputLine = scanner.nextLine().trim(); + String[] input = inputLine.split("\\s+"); + + if (input.length != 2) { + System.out.println("请输入正确的用户名、密码"); + return null; + } + + User user = users.get(input[0]); + if (user != null && user.getPassword().equals(input[1])) { + return user; + } + + System.out.println("请输入正确的用户名、密码"); + return null; + } +} + + diff --git a/个人项目/src/history/HistoryManager.java b/个人项目/src/history/HistoryManager.java new file mode 100644 index 0000000..19a361e --- /dev/null +++ b/个人项目/src/history/HistoryManager.java @@ -0,0 +1,140 @@ +package src.history; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.io.IOException; +import java.io.PrintWriter; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import src.model.User; +import src.question.AbstractQuestionGenerator; +import src.util.Question; + +/** + * 历史记录管理器. + * 负责管理用户的题目历史记录,包括去重检查和文件保存功能. + */ +public class HistoryManager { + + private final Set existingQuestions = new HashSet<>(); + + /** + * 构造函数. + * 初始化历史记录管理器,读取用户已有的题目文件. + * + * @param username 用户名 + */ + public HistoryManager(String username) { + File folder = new File(username); + if (!folder.exists() && !folder.mkdir()) { + System.err.println("无法创建文件夹: " + username); + } + File[] files = folder.listFiles(); + if (files != null) { + for (File file : files) { + if (file.isFile() && file.getName().endsWith(".txt")) { + try (BufferedReader reader = new BufferedReader(new FileReader(file))) { + String line; + while ((line = reader.readLine()) != null) { + line = line.trim(); + if (line.matches("^\\d+\\..*")) { + int dotIndex = line.indexOf('.'); + String question = line.substring(dotIndex + 1).trim(); + if (question.endsWith("=")) { + question = question.substring(0, question.length() - 1).trim(); + } + existingQuestions.add(question); + } + } + } catch (IOException e) { + System.err.println("读取文件出错: " + file.getName()); + } + } + } + } + } + + /** + * 检查题目是否重复. + * + * @param question 要检查的题目 + * @return 如果题目已存在返回true,否则返回false + */ + public boolean isDuplicate(String question) { + return existingQuestions.contains(question); + } + + /** + * 添加题目到历史记录. + * + * @param question 要添加的题目 + */ + public void add(String question) { + existingQuestions.add(question); + } + + /** + * 生成不重复的历史题目列表. + * + * @param numQuestions 需要生成的题目数量 + * @param generator 题目生成器 + * @return 生成的题目列表 + */ + public List getQuestion(Integer numQuestions, + AbstractQuestionGenerator generator) { + List questions = new ArrayList<>(); + boolean failed = false; + for (int i = 0; i < numQuestions; i++) { + String question; + int attempts = 0; + final int maxAttempts = 100; + do { + question = Question.generateQuestion(generator); + attempts++; + if (attempts > maxAttempts) { + System.out.println("无法生成足够独特的题目"); + failed = true; + break; + } + } while (isDuplicate(question)); + + if (failed) { + break; + } + questions.add(question); + add(question); + } + return questions; + } + + /** + * 保存题目列表到文件. + * + * @param questions 题目列表 + * @param user 用户对象 + */ + public void saveFile(List questions, User user) { + if (questions.isEmpty()) { + return; + } + Date now = new Date(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss"); + String filename = sdf.format(now) + ".txt"; + File folder = new File(user.getUsername()); + File file = new File(folder, filename); + + try (PrintWriter writer = new PrintWriter(file)) { + for (int i = 0; i < questions.size(); i++) { + writer.println((i + 1) + ". " + questions.get(i)); + writer.println(); + } + } catch (IOException e) { + System.err.println("保存文件出错: " + e.getMessage()); + } + } +} diff --git a/个人项目/src/model/Level.java b/个人项目/src/model/Level.java new file mode 100644 index 0000000..8de5d7b --- /dev/null +++ b/个人项目/src/model/Level.java @@ -0,0 +1,47 @@ +package src.model; + +/** + * 题目难度级别枚举. + * 定义了小学、初中、高中三个难度级别. + */ +public enum Level { + + /** + * 小学难度级别. + */ + ELEMENTARY("小学"), + + /** + * 初中难度级别. + */ + JUNIOR("初中"), + + /** + * 高中难度级别. + */ + SENIOR("高中"); + + /** + * 难度级别的中文名称. + */ + private final String name; + + /** + * 枚举构造函数. + * + * @param name 难度级别的中文名称 + */ + Level(String name) { + this.name = name; + } + + /** + * 获取难度级别的中文名称. + * + * @return 难度级别的中文名称 + */ + public String getName() { + return name; + } +} + diff --git a/个人项目/src/model/User.java b/个人项目/src/model/User.java new file mode 100644 index 0000000..f56c518 --- /dev/null +++ b/个人项目/src/model/User.java @@ -0,0 +1,39 @@ +package src.model; + +/** + * 用户信息类. + * 封装用户的基本信息,包括用户名、密码和初始难度级别. + */ + +public class User { + + private final String username; + private final String password; + private final Level initialLevel; + + /** + * 构造函数. + * + * @param username 用户名 + * @param password 密码 + * @param initialLevel 初始难度级别 + */ + + public User(String username, String password, Level initialLevel) { + this.username = username; + this.password = password; + this.initialLevel = initialLevel; + } + + public String getPassword() { + return password; + } + + public String getUsername() { + return username; + } + + public Level getInitialLevel() { + return initialLevel; + } +} diff --git a/个人项目/src/question/AbstractQuestionGenerator.java b/个人项目/src/question/AbstractQuestionGenerator.java new file mode 100644 index 0000000..8ddffda --- /dev/null +++ b/个人项目/src/question/AbstractQuestionGenerator.java @@ -0,0 +1,57 @@ +package src.question; + +import java.util.Random; +import src.model.Level; + +/** + * 抽象类题目生成器类. + * 生成对应难度的题目. + */ +public abstract class AbstractQuestionGenerator { + + protected final Random random = new Random(); + protected final Level level; + + /** + * 构造函数. + * + * @param level 题目难度级别 + */ + public AbstractQuestionGenerator(Level level) { + this.level = level; + } + + /** + * 生成随机数字. + * + * @return 1-100之间的随机整数 + */ + protected int getRandomNumber() { + return random.nextInt(100) + 1; + } + + /** + * 获取随机二元运算符. + * + * @return 随机选择的运算符(+、-、*、/) + */ + protected String getRandomBinaryOp() { + String[] ops = {"+", "-", "*", "/"}; + return ops[random.nextInt(ops.length)]; + } + + /** + * 生成表达式. + * + * @return 生成的数学表达式字符串 + */ + public abstract String generateExpression(); + + /** + * 检查表达式是否符合当前难度级别的要求. + * + * @param expression 要检查的表达式 + * @return 如果表达式符合级别要求返回true,否则返回false + */ + public abstract boolean isValidForLevel(String expression); +} diff --git a/个人项目/src/question/ElementaryGenerator.java b/个人项目/src/question/ElementaryGenerator.java new file mode 100644 index 0000000..c74dc90 --- /dev/null +++ b/个人项目/src/question/ElementaryGenerator.java @@ -0,0 +1,58 @@ +package src.question; + +import src.model.Level; + +/** + * 小学级别题目生成器. + * 生成适合小学难度的数学表达式,包含基本四则运算. + */ +public class ElementaryGenerator extends AbstractQuestionGenerator { + + /** + * 构造函数. + * 初始化小学难度级别的题目生成器. + */ + public ElementaryGenerator() { + super(Level.ELEMENTARY); + } + + /** + * 生成小学难度的数学表达式. + * 使用递归方式生成包含括号的四则运算表达式. + * + * @return 生成的数学表达式字符串 + */ + @Override + public String generateExpression() { + return generateSub(4); + } + + /** + * 递归生成子表达式. + * 根据深度参数控制表达式复杂度,随机生成数字或二元运算. + * + * @param depth 当前递归深度 + * @return 生成的子表达式字符串 + */ + private String generateSub(int depth) { + if ((depth == 0 || random.nextDouble() < 0.4) && depth != 4) { + return String.valueOf(getRandomNumber()); + } + String left = generateSub(depth - 1); + String op = getRandomBinaryOp(); + String right = generateSub(depth - 1); + return "(" + left + " " + op + " " + right + ")"; + } + + /** + * 验证表达式是否符合小学难度要求. + * 小学级别对表达式没有特殊限制,始终返回true. + * + * @param expression 要验证的表达式 + * @return 总是返回true,表示表达式有效 + */ + @Override + public boolean isValidForLevel(String expression) { + return true; + } +} diff --git a/个人项目/src/question/JuniorGenerator.java b/个人项目/src/question/JuniorGenerator.java new file mode 100644 index 0000000..0cb29ac --- /dev/null +++ b/个人项目/src/question/JuniorGenerator.java @@ -0,0 +1,99 @@ +package src.question; + +import src.model.Level; + +/** + * 初中级别题目生成器. + * 生成适合初中难度的数学表达式,包含四则运算、平方根和平方运算. + */ +public class JuniorGenerator extends AbstractQuestionGenerator { + + /** + * 平方根生成概率阈值. + */ + private static final double SQRT_PROBABILITY = 0.75; + + /** + * 平方运算生成概率阈值. + */ + private static final double SQUARE_PROBABILITY = 0.5; + + /** + * 叶子节点生成概率. + */ + private static final double LEAF_PROBABILITY = 0.4; + + /** + * 最大递归深度. + */ + private static final int MAX_DEPTH = 4; + + /** + * 构造函数. + * 初始化初中难度级别的题目生成器. + */ + public JuniorGenerator() { + super(Level.JUNIOR); + } + + /** + * 生成初中难度的数学表达式. + * 使用递归方式生成包含平方根和平方运算的表达式. + * + * @return 生成的数学表达式字符串 + */ + @Override + public String generateExpression() { + return generateSub(MAX_DEPTH); + } + + /** + * 递归生成子表达式. + * 根据深度参数和随机概率生成数字、二元运算、平方根或平方运算. + * + * @param depth 当前递归深度 + * @return 生成的子表达式字符串 + */ + private String generateSub(int depth) { + if (depth == 0 || random.nextDouble() < LEAF_PROBABILITY) { + return String.valueOf(getRandomNumber()); + } + + double randomValue = random.nextDouble(); + if (randomValue < SQUARE_PROBABILITY) { + // 生成二元运算 + String left = generateSub(depth - 1); + String op = getRandomBinaryOp(); + String right = generateSub(depth - 1); + return "(" + left + " " + op + " " + right + ")"; + } else if (randomValue < SQRT_PROBABILITY) { + // 生成平方根运算 + String sub = generateSub(depth - 1); + if (sub.charAt(0) == '(' && sub.charAt(sub.length() - 1) == ')') { + return "sqrt" + sub; + } else { + return "sqrt(" + sub + ")"; + } + } else { + // 生成平方运算 + String sub = generateSub(depth - 1); + if (sub.charAt(0) == '(' && sub.charAt(sub.length() - 1) == ')') { + return sub + "^2"; + } else { + return "(" + sub + ")^2"; + } + } + } + + /** + * 验证表达式是否符合初中难度要求. + * 初中级别要求表达式必须包含平方根或平方运算. + * + * @param expression 要验证的表达式 + * @return 如果表达式包含平方根或平方运算返回true,否则返回false + */ + @Override + public boolean isValidForLevel(String expression) { + return expression.contains("sqrt") || expression.contains("^2"); + } +} \ No newline at end of file diff --git a/个人项目/src/question/SeniorGenerator.java b/个人项目/src/question/SeniorGenerator.java new file mode 100644 index 0000000..412ef39 --- /dev/null +++ b/个人项目/src/question/SeniorGenerator.java @@ -0,0 +1,92 @@ +package src.question; + +import src.model.Level; + +/** + * 高中级别题目生成器. + * 生成适合高中难度的数学表达式,包含四则运算和三角函数运算. + */ +public class SeniorGenerator extends AbstractQuestionGenerator { + + /** + * 二元运算生成概率阈值. + */ + private static final double BINARY_OP_PROBABILITY = 0.5; + + /** + * 叶子节点生成概率. + */ + private static final double LEAF_PROBABILITY = 0.4; + + /** + * 最大递归深度. + */ + private static final int MAX_DEPTH = 4; + + /** + * 支持的三角函数列表. + */ + private static final String[] TRIGONOMETRIC_FUNCTIONS = {"sin", "cos", "tan"}; + + /** + * 构造函数. + * 初始化高中难度级别的题目生成器. + */ + public SeniorGenerator() { + super(Level.SENIOR); + } + + /** + * 生成高中难度的数学表达式. + * 使用递归方式生成包含三角函数的表达式. + * + * @return 生成的数学表达式字符串 + */ + @Override + public String generateExpression() { + return generateSub(MAX_DEPTH); + } + + /** + * 递归生成子表达式. + * 根据深度参数和随机概率生成数字、二元运算或三角函数运算. + * + * @param depth 当前递归深度 + * @return 生成的子表达式字符串 + */ + private String generateSub(int depth) { + if (depth == 0 || random.nextDouble() < LEAF_PROBABILITY) { + return String.valueOf(getRandomNumber()); + } + + double randomValue = random.nextDouble(); + if (randomValue < BINARY_OP_PROBABILITY) { + // 生成二元运算 + String left = generateSub(depth - 1); + String op = getRandomBinaryOp(); + String right = generateSub(depth - 1); + return "(" + left + " " + op + " " + right + ")"; + } else { + // 生成三角函数运算 + String func = TRIGONOMETRIC_FUNCTIONS[random.nextInt(TRIGONOMETRIC_FUNCTIONS.length)]; + String sub = generateSub(depth - 1); + if (sub.charAt(0) == '(' && sub.charAt(sub.length() - 1) == ')') { + return func + sub; + } else { + return func + "(" + sub + ")"; + } + } + } + + /** + * 验证表达式是否符合高中难度要求. + * 高中级别要求表达式必须包含三角函数. + * + * @param expression 要验证的表达式 + * @return 如果表达式包含三角函数返回true,否则返回false + */ + @Override + public boolean isValidForLevel(String expression) { + return expression.contains("sin") || expression.contains("cos") || expression.contains("tan"); + } +} diff --git a/个人项目/src/start/Main.java b/个人项目/src/start/Main.java new file mode 100644 index 0000000..1d4bf5b --- /dev/null +++ b/个人项目/src/start/Main.java @@ -0,0 +1,61 @@ +package src.start; + +import java.util.List; +import java.util.Scanner; +import src.auth.Authenticator; +import src.history.HistoryManager; +import src.model.Level; +import src.model.User; +import src.question.AbstractQuestionGenerator; +import src.util.Auth; +import src.util.Question; + +/** + * 主程序类,负责用户交互和题目生成流程控制. + */ +public class Main { + + /** + * 主方法,程序入口点. + * 负责用户认证、难度级别选择和题目生成流程控制. + * + * @param args 命令行参数 + */ + public static void main(String[] args) { + Authenticator authenticator = new Authenticator(); + Scanner scanner = new Scanner(System.in); + while (true) { + User user = authenticator.login(); + if (user == null) { + continue; + } + Level currentLevel = user.getInitialLevel(); + while (true) { + System.out.println("当前选择为" + currentLevel.getName() + "出题"); + System.out.print("准备生成" + currentLevel.getName() + + "数学题目,请输入生成题目数量(输入-1将退出当前用户,重新登录):"); + String inputText = scanner.nextLine().trim(); + // 检查是否需要切换难度级别 + Level newLevel = Auth.getLevel(inputText, currentLevel); + if (newLevel != null) { + currentLevel = newLevel; + continue; + } + // 处理题目生成 + AbstractQuestionGenerator generator = Question.getGenerator(currentLevel); + Integer numQuestions = Question.getQuestionAmount(inputText); + if (numQuestions == -1) { + break; // 退出当前用户,重新登录 + } + if (numQuestions == 0) { + continue; // 输入无效,重新输入 + } + // 生成并保存题目 + HistoryManager historyManager = new HistoryManager(user.getUsername()); + List questions = historyManager.getQuestion(numQuestions, generator); + historyManager.saveFile(questions, user); + System.out.println("题目生成完成,已保存到用户文件夹。"); + } + } + } +} \ No newline at end of file diff --git a/个人项目/src/util/Auth.java b/个人项目/src/util/Auth.java new file mode 100644 index 0000000..a3ed7e2 --- /dev/null +++ b/个人项目/src/util/Auth.java @@ -0,0 +1,39 @@ +package src.util; + +import src.model.Level; + +/** + * 工具类. + * 存放题目水平和相关的方法. + */ + +public class Auth { + /** + * 处理题目水平切换请求. + * 解析用户输入的切换指令,返回对应的难度水平. + * + * @param inputText 用户输入的切换指令 + * @param currentLevel 当前题目水平 + * @return 新的题目水平,如果切换失败返回当前水平 + */ + public static Level getLevel(String inputText, Level currentLevel) { + if (inputText.startsWith("切换为")) { + String newLevelStr = inputText.substring("切换为".length()).trim(); + Level newLevel = switch (newLevelStr) { + case "小学" -> Level.ELEMENTARY; + case "初中" -> Level.JUNIOR; + case "高中" -> Level.SENIOR; + default -> null; + }; + + if (newLevel != null) { + return newLevel; + } else { + System.out.println("请输入小学、初中和高中三个选项中的一个"); + return currentLevel; + } + } + return null; + } + +} diff --git a/个人项目/src/util/Question.java b/个人项目/src/util/Question.java new file mode 100644 index 0000000..a196932 --- /dev/null +++ b/个人项目/src/util/Question.java @@ -0,0 +1,99 @@ +package src.util; + + +import java.util.regex.Matcher; +import java.util.regex.Pattern; +import src.model.Level; +import src.question.AbstractQuestionGenerator; +import src.question.ElementaryGenerator; +import src.question.JuniorGenerator; +import src.question.SeniorGenerator; + +/** + * 工具类. + * 存放和题目相关的方法 + */ + +public class Question { + + /** + * 从输入文本中获取问题数量. + * + * @param inputText 用户输入的文本 + * @return 解析后的问题数量,0表示无效输入,-1表示特殊退出标志 + */ + public static Integer getQuestionAmount(String inputText) { + int numQuestions; + try { + numQuestions = Integer.parseInt(inputText); + } catch (NumberFormatException e) { + System.out.println("无效输入"); + return 0; + } + if (numQuestions == -1) { + return -1; + } + if (numQuestions < 10 || numQuestions > 30) { + System.out.println("数量应在10-30"); + return 0; + } + return numQuestions; + } + /** + * 根据难度级别获取对应的题目生成器. + * + * @param level 难度级别 + * @return 对应级别的题目生成器实例 + */ + + public static AbstractQuestionGenerator getGenerator(Level level) { + return switch (level) { + case ELEMENTARY -> new ElementaryGenerator(); + case JUNIOR -> new JuniorGenerator(); + case SENIOR -> new SeniorGenerator(); + }; + } + /** + * 删除最后表达式中的冗余括号. + * + * @param expression 数学表达式. + * @return 处理后的数学表达式. + */ + + public static String check(String expression) { + if (expression.charAt(0) == '(' && expression.charAt(expression.length() - 1) == ')') { + return expression.substring(1, expression.length() - 1); + } + return expression; + } + /** + * 计算表达式中操作数的数量. + * + * @param expression 数学表达式 + * @return 操作数的数量 + */ + + public static int countOperands(String expression) { + int count = 0; + Pattern pattern = Pattern.compile("\\d+"); + Matcher matcher = pattern.matcher(expression); + while (matcher.find()) { + count++; + } + return count; + } + + /** + * 生成问题. + * + * @return 格式化的数学问题字符串(包含等号) + */ + public static String generateQuestion(AbstractQuestionGenerator generator) { + String expression; + do { + expression = generator.generateExpression(); + } while (countOperands(expression) < 1 || countOperands(expression) > 5 + || !generator.isValidForLevel(expression)); + return check(expression) + " ="; + } +} diff --git a/个人项目/张三1/2025-09-27-19-01-58.txt b/个人项目/张三1/2025-09-27-19-01-58.txt new file mode 100644 index 0000000..7499eb1 --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-01-58.txt @@ -0,0 +1,40 @@ +1. (sqrt(sqrt(27 * 26)))^2 = + +2. (65 * ((58 * 28)^2 * 27)) = + +3. (((28)^2)^2 - (31)^2) = + +4. sqrt(sqrt(sqrt(28 * 97))) = + +5. sqrt(2) = + +6. sqrt(((68)^2)^2) = + +7. ((81)^2 / 29) = + +8. (21 - 69)^2 = + +9. (65 + (sqrt(58) * (sqrt(10) * 32))) = + +10. ((63 - 71)^2 * 4)^2 = + +11. sqrt(55 - 74) = + +12. (sqrt(sqrt(39)) + 84) = + +13. sqrt((85)^2 + 88) = + +14. ((sqrt(sqrt(37)))^2)^2 = + +15. (39)^2 = + +16. ((sqrt(82) - sqrt(35)) / (62 + 85)) = + +17. (sqrt(10) * 96) = + +18. sqrt((57)^2) = + +19. (((76 + 94)^2)^2)^2 = + +20. sqrt(91) = + diff --git a/个人项目/张三1/2025-09-27-19-02-43.txt b/个人项目/张三1/2025-09-27-19-02-43.txt new file mode 100644 index 0000000..374245b --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-02-43.txt @@ -0,0 +1,60 @@ +1. (sin(9) * (2 * cos(3 * 29))) = + +2. (46 - sin(13)) = + +3. (cos(26 - sin(39)) / tan(47)) = + +4. (((56 / (79 * 71)) * 44) * sin(56)) = + +5. cos(tan(82 - 9) + ((27 - 84) + tan(6))) = + +6. tan(tan((80 / 80) - (25 - 58))) = + +7. cos(tan(sin(99 + 36))) = + +8. sin(tan(48)) = + +9. sin(sin(68)) = + +10. cos(63) = + +11. tan(34) = + +12. (79 * (12 + cos(sin(66)))) = + +13. tan(cos(55 - 43) * cos(18)) = + +14. sin(23) = + +15. cos(43) = + +16. (cos(cos(45)) / 20) = + +17. (tan(72) * tan(91)) = + +18. cos(sin(tan(tan(17)))) = + +19. (((sin(5) * tan(27)) * tan(tan(84))) - 48) = + +20. (sin(56) * 7) = + +21. (cos(cos(11 / 77)) * (sin(cos(37)) + tan(sin(8)))) = + +22. tan(49) = + +23. (cos(cos(31)) / (67 / sin(73 / 82))) = + +24. (57 / ((53 - (44 / 32)) * tan(cos(56)))) = + +25. sin(4) = + +26. sin(cos(38)) = + +27. sin(39) = + +28. tan(cos(sin(53))) = + +29. tan(87) = + +30. sin(86 * sin(27)) = + diff --git a/个人项目/张三1/2025-09-27-19-03-08.txt b/个人项目/张三1/2025-09-27-19-03-08.txt new file mode 100644 index 0000000..a619089 --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-03-08.txt @@ -0,0 +1,60 @@ +1. (88 / 49) = + +2. ((70 - 95) - (25 + 91)) = + +3. (69 * 98) = + +4. (95 - (73 - (13 + (42 / 59)))) = + +5. (((73 - 71) / 59) - 65) = + +6. ((77 + 41) * 57) = + +7. (64 / (12 - (55 * (14 / 94)))) = + +8. (((21 / 80) + 78) / 23) = + +9. (5 - 10) = + +10. (92 / (64 / 86)) = + +11. ((7 - 31) - 34) = + +12. ((95 * 96) - 23) = + +13. ((32 * 31) / 10) = + +14. (51 + (48 * 9)) = + +15. (86 + (56 + 6)) = + +16. (87 * (51 + ((82 * 79) - 54))) = + +17. (15 - 59) = + +18. (9 * (43 * 47)) = + +19. ((78 + 98) / (85 + 38)) = + +20. (59 + (61 / 44)) = + +21. (7 - (36 / (22 * 22))) = + +22. (62 / 11) = + +23. ((69 * (60 * 65)) - (37 + 83)) = + +24. (59 + 8) = + +25. ((54 / (51 - (39 - 90))) / 13) = + +26. (83 + 94) = + +27. (31 * 93) = + +28. (((52 + 22) + (40 + 50)) / 63) = + +29. ((78 - ((74 / 60) - 41)) / 11) = + +30. (35 / 8) = + diff --git a/个人项目/张三1/2025-09-27-19-29-03.txt b/个人项目/张三1/2025-09-27-19-29-03.txt new file mode 100644 index 0000000..ebc68af --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-29-03.txt @@ -0,0 +1,60 @@ +1. 56 - 45 = + +2. (65 - 9) * 30 = + +3. (80 / 88) * 61 = + +4. 41 * ((88 / 37) - 81) = + +5. 75 * (55 / (73 * (67 / 23))) = + +6. 63 - ((23 - 29) + 14) = + +7. 27 / (27 + 82) = + +8. 8 / 54 = + +9. 25 - (((41 - 51) - 13) / 91) = + +10. (67 / 53) - (2 - 62) = + +11. 82 + 8 = + +12. 74 / (21 - (77 - (95 + 3))) = + +13. 15 / (24 / 50) = + +14. 71 * (55 / (93 + (5 + 16))) = + +15. 27 * ((93 + (83 * 34)) - 22) = + +16. 85 + 95 = + +17. 72 / 47 = + +18. 74 + 1 = + +19. (10 * 81) - 22 = + +20. 84 / 89 = + +21. 51 * 43 = + +22. 67 / (34 * ((89 - 92) - 28)) = + +23. 8 + (((25 * 7) * 36) * 20) = + +24. 96 / 45 = + +25. 3 + (23 / 10) = + +26. (26 - (60 / 76)) / 92 = + +27. 37 * (61 - (42 * 2)) = + +28. 4 * 67 = + +29. 14 - 53 = + +30. 83 * (86 * 79) = + diff --git a/个人项目/张三1/2025-09-27-19-29-06.txt b/个人项目/张三1/2025-09-27-19-29-06.txt new file mode 100644 index 0000000..2ff16b7 --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-29-06.txt @@ -0,0 +1,60 @@ +1. 72 + 22 = + +2. (29 / 23) + 77 = + +3. 22 * 57 = + +4. 36 - 91 = + +5. 38 / (((17 / 10) - 46) * 14) = + +6. 77 * (39 * ((42 + 86) / 64)) = + +7. (80 * (31 - (39 * 49))) - 39 = + +8. 21 / 94 = + +9. 56 + 11 = + +10. ((80 + (15 - 81)) - 65) / 69 = + +11. 37 * 51 = + +12. 35 / 77 = + +13. (57 * 88) * 15 = + +14. ((79 * (97 / 80)) - 99) / 32 = + +15. (71 / (34 - 25)) - 77 = + +16. 40 * ((98 - (2 - 42)) + 15) = + +17. 79 + (22 * (10 * 71)) = + +18. (9 + 53) * 90 = + +19. 50 / 4 = + +20. 28 * (28 * 19) = + +21. 57 + 60 = + +22. ((100 * (20 + 23)) - 33) - 7 = + +23. (42 + 92) / 51 = + +24. 20 * ((72 - (19 / 79)) - 76) = + +25. ((51 + (30 * 44)) * 72) * 49 = + +26. 26 + 74 = + +27. (51 / 94) / 48 = + +28. 38 * ((32 * 69) - (70 * 28)) = + +29. 5 * (22 - (21 / 9)) = + +30. 87 * 60 = + diff --git a/个人项目/张三1/2025-09-27-19-35-42.txt b/个人项目/张三1/2025-09-27-19-35-42.txt new file mode 100644 index 0000000..893dfea --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-35-42.txt @@ -0,0 +1,60 @@ +1. 54 - 92 = + +2. 26 / ((9 / 36) / 88) = + +3. ((23 * (60 * 61)) * 50) + 91 = + +4. (15 / 12) / 48 = + +5. 17 * 45 = + +6. ((71 * 44) + 36) - (95 + 68) = + +7. (64 * 17) / 23 = + +8. 91 + (((84 * 4) - 48) - 58) = + +9. 3 * (76 + ((51 / 40) - 90)) = + +10. 76 / (((94 * 46) / 70) - 47) = + +11. 69 / ((78 + (96 + 35)) * 17) = + +12. 52 - 29 = + +13. 69 / 87 = + +14. 11 - 20 = + +15. (100 / 59) + 87 = + +16. 22 / (47 + 79) = + +17. 88 / (18 + (65 + 20)) = + +18. 79 / 20 = + +19. 45 - 75 = + +20. 22 + 82 = + +21. 30 - (28 * 36) = + +22. (42 * ((50 - 29) / 66)) * 22 = + +23. (85 + 48) + (6 * (57 / 6)) = + +24. 35 + 77 = + +25. 93 - 98 = + +26. 30 / ((60 - 16) * 24) = + +27. 56 - 32 = + +28. 66 * 82 = + +29. (5 - (51 - (31 * 82))) + 86 = + +30. 68 - 37 = + diff --git a/个人项目/张三1/2025-09-27-19-35-57.txt b/个人项目/张三1/2025-09-27-19-35-57.txt new file mode 100644 index 0000000..88f5c8e --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-35-57.txt @@ -0,0 +1,60 @@ +1. 79 + 100 = + +2. (29 + (33 + (33 / 70))) + 87 = + +3. 88 / (((31 - 16) - 68) * 23) = + +4. 12 * 8 = + +5. 62 / (35 - 3) = + +6. (((83 - 14) - 62) / 43) - 60 = + +7. (91 * (52 * 50)) + 19 = + +8. 65 - (87 + 19) = + +9. 66 / 51 = + +10. 87 + 21 = + +11. (13 + 10) / 70 = + +12. 59 / 25 = + +13. (43 + 50) / (75 - (94 - 76)) = + +14. 44 + (73 * 43) = + +15. 90 + 66 = + +16. 15 + (54 * 25) = + +17. 71 / (51 + 93) = + +18. 84 / ((35 * 63) + (41 / 88)) = + +19. 88 - (26 / 61) = + +20. 3 / 94 = + +21. 44 - ((59 * 49) / 78) = + +22. 90 / 76 = + +23. 27 / 33 = + +24. 29 - 23 = + +25. (((68 * 95) - 88) / 33) + 2 = + +26. 77 - ((3 + 90) + 97) = + +27. 3 / 45 = + +28. 41 + (82 / ((3 + 40) * 60)) = + +29. 13 + 50 = + +30. (74 - (27 - 7)) / 14 = + diff --git a/个人项目/张三1/2025-09-27-19-35-58.txt b/个人项目/张三1/2025-09-27-19-35-58.txt new file mode 100644 index 0000000..2c19246 --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-35-58.txt @@ -0,0 +1,60 @@ +1. (63 * 84) / 16 = + +2. ((74 / (100 / 13)) * 94) + 10 = + +3. 86 + 41 = + +4. 43 + (66 / (92 / 46)) = + +5. 56 * (((33 / 23) / 6) + 16) = + +6. 23 - 24 = + +7. 59 + 3 = + +8. 95 / 9 = + +9. 45 - 25 = + +10. (88 / 51) - 63 = + +11. 76 / ((71 + (68 / 14)) + 26) = + +12. 94 * 19 = + +13. (46 + 96) + 92 = + +14. 88 * (78 + 13) = + +15. (21 * 48) - (54 - 3) = + +16. (5 - 88) - 48 = + +17. 93 * (99 * ((78 + 28) / 58)) = + +18. 75 / ((13 - (87 + 47)) + 36) = + +19. (46 / 63) / 46 = + +20. 44 + (70 / 8) = + +21. 77 - (83 - 33) = + +22. 86 * (2 / 52) = + +23. (64 / 42) / (66 / 77) = + +24. 43 + 86 = + +25. 52 / (38 - 33) = + +26. 9 * 35 = + +27. 27 + (((74 - 22) * 23) * 25) = + +28. 85 - 19 = + +29. 2 + (((84 / 77) - 53) + 33) = + +30. 49 * (58 * 31) = + diff --git a/个人项目/张三1/2025-09-27-19-36-05.txt b/个人项目/张三1/2025-09-27-19-36-05.txt new file mode 100644 index 0000000..9471e27 --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-36-05.txt @@ -0,0 +1,40 @@ +1. 70 + (sin(82) * (tan(45) * tan(92))) = + +2. sin(tan(69 / 44) / 62) = + +3. sin(tan(5 - 36)) = + +4. cos(87 + 21) + 53 = + +5. tan(34) = + +6. sin(tan(12)) = + +7. cos(10) = + +8. sin(57) = + +9. tan(1) = + +10. sin(tan(sin(76))) * (3 + 34) = + +11. sin((tan(94) * 80) * (62 / (10 / 14))) = + +12. 96 - sin(sin(26 - 64)) = + +13. (48 / 97) / cos(17) = + +14. tan(cos((89 + 11) - 57)) = + +15. sin(100) = + +16. cos(tan(63 / sin(91))) = + +17. tan(9) = + +18. cos((48 * 1) / cos(51)) - tan(68) = + +19. 99 * cos(37) = + +20. sin(sin(9) * 69) - (88 * (sin(57) - 95)) = + diff --git a/个人项目/张三1/2025-09-27-19-45-19.txt b/个人项目/张三1/2025-09-27-19-45-19.txt new file mode 100644 index 0000000..b35d86a --- /dev/null +++ b/个人项目/张三1/2025-09-27-19-45-19.txt @@ -0,0 +1,60 @@ +1. (74 - 30) + 1 = + +2. 86 * 73 = + +3. (64 + (80 / (5 * 24))) - 46 = + +4. 7 + 55 = + +5. (20 / 48) + 10 = + +6. 81 / 69 = + +7. 84 + (50 * 79) = + +8. (79 - 56) + 23 = + +9. 97 + 21 = + +10. 86 / 31 = + +11. 4 - 56 = + +12. 37 - 53 = + +13. 56 / 36 = + +14. 83 * (29 / 69) = + +15. 71 / 64 = + +16. 71 - 31 = + +17. 94 - (58 + 36) = + +18. (55 + 100) + (98 - (60 - 88)) = + +19. (27 + 61) * (72 - 19) = + +20. (69 / ((51 / 28) + 70)) - 66 = + +21. 48 - 4 = + +22. (69 + 77) * (31 / 73) = + +23. 22 - (28 - 79) = + +24. 41 - 14 = + +25. (16 / 8) - 36 = + +26. ((23 * 38) - 6) + 74 = + +27. (14 - 34) + 39 = + +28. 21 + 76 = + +29. (82 + (32 + 67)) * 93 = + +30. 61 + 82 = + diff --git a/个人项目/张三2/2025-09-26-11-46-26.txt b/个人项目/张三2/2025-09-26-11-46-26.txt new file mode 100644 index 0000000..24c73ca --- /dev/null +++ b/个人项目/张三2/2025-09-26-11-46-26.txt @@ -0,0 +1,20 @@ +1. 8 = + +2. (78*(77*(34-69))) = + +3. 11 = + +4. ((79+(91+7))+8) = + +5. 85 = + +6. ((78/76)*29) = + +7. 72 = + +8. 77 = + +9. 4 = + +10. 86 = + diff --git a/个人项目/张三2/2025-09-26-11-46-28.txt b/个人项目/张三2/2025-09-26-11-46-28.txt new file mode 100644 index 0000000..994affb --- /dev/null +++ b/个人项目/张三2/2025-09-26-11-46-28.txt @@ -0,0 +1,40 @@ +1. ((((94*51)*80)-70)+87) = + +2. 69 = + +3. (31-(((20-96)-1)+56)) = + +4. (29/(19*(70/(80/45)))) = + +5. 54 = + +6. (94+(((11*5)/30)/94)) = + +7. (95*81) = + +8. 62 = + +9. (78/(77+72)) = + +10. 31 = + +11. 46 = + +12. (22+(92*(45+(61+1)))) = + +13. (17+12) = + +14. (80*((60-(44/37))+31)) = + +15. (90-(56*65)) = + +16. 89 = + +17. (62*(95*32)) = + +18. (40-21) = + +19. 87 = + +20. (10-(98-58)) = + diff --git a/个人项目/张三2/2025-09-26-11-46-39.txt b/个人项目/张三2/2025-09-26-11-46-39.txt new file mode 100644 index 0000000..95e76ed --- /dev/null +++ b/个人项目/张三2/2025-09-26-11-46-39.txt @@ -0,0 +1,40 @@ +1. 85 = + +2. (88/68) = + +3. 42 = + +4. 97 = + +5. 5 = + +6. (48-(((92/15)+76)+78)) = + +7. (33*95) = + +8. 26 = + +9. (6-((49/(21*31))*77)) = + +10. (((53-(62+69))-43)*4) = + +11. 29 = + +12. 35 = + +13. 40 = + +14. 45 = + +15. (9/76) = + +16. ((57-(77/88))+34) = + +17. ((31+(85-82))+(75/67)) = + +18. (85+5) = + +19. 39 = + +20. 95 = + diff --git a/个人项目/张三2/2025-09-26-11-46-45.txt b/个人项目/张三2/2025-09-26-11-46-45.txt new file mode 100644 index 0000000..c5b3a08 --- /dev/null +++ b/个人项目/张三2/2025-09-26-11-46-45.txt @@ -0,0 +1,60 @@ +1. 14 = + +2. ((88/(69*(24+100)))+20) = + +3. (((12/(30/99))/98)+66) = + +4. (11*((47/(76*46))-75)) = + +5. 76 = + +6. 55 = + +7. 34 = + +8. 46 = + +9. 37 = + +10. 49 = + +11. 60 = + +12. 54 = + +13. 9 = + +14. ((85/77)/1) = + +15. 63 = + +16. (6*18) = + +17. (62*(58+29)) = + +18. 72 = + +19. ((16*((42+35)/2))/13) = + +20. 62 = + +21. 73 = + +22. (38+(56-44)) = + +23. ((58-6)+(32*3)) = + +24. ((9*(87/85))/(37+8)) = + +25. (71/((86-2)+62)) = + +26. 65 = + +27. 61 = + +28. 13 = + +29. ((42*75)*(84+82)) = + +30. (16+42) = + diff --git a/个人项目/李四1/2025-09-27-19-29-33.txt b/个人项目/李四1/2025-09-27-19-29-33.txt new file mode 100644 index 0000000..c6cda77 --- /dev/null +++ b/个人项目/李四1/2025-09-27-19-29-33.txt @@ -0,0 +1,60 @@ +1. sqrt((sqrt(70))^2) + (94 / 4)^2 = + +2. (71 * (sqrt(5))^2) - (14)^2 = + +3. (4)^2 * 87 = + +4. sqrt(66) = + +5. (99)^2 - 51 = + +6. sqrt((24)^2) = + +7. 90 - (74)^2 = + +8. sqrt(73) = + +9. ((sqrt(39))^2)^2 - 79 = + +10. (14 - (37)^2) * (12)^2 = + +11. (((89)^2)^2 * 45) + 89 = + +12. (49)^2 = + +13. ((47)^2)^2 = + +14. ((7)^2 + 32) / sqrt(8) = + +15. sqrt((88 + 48)^2) = + +16. (sqrt(69) + 4)^2 / sqrt(100) = + +17. (50)^2 = + +18. (57)^2 = + +19. (61 / (sqrt(78))^2)^2 = + +20. (78)^2 = + +21. sqrt(75) = + +22. sqrt(((92)^2 - (87 / 39))^2) = + +23. sqrt(6) = + +24. ((30)^2 - 61) / 2 = + +25. (sqrt(94 - sqrt(71)))^2 = + +26. sqrt(57) = + +27. (74)^2 = + +28. 56 + ((6)^2 / 55) = + +29. sqrt(sqrt(((79)^2)^2)) = + +30. sqrt((6)^2) = + diff --git a/个人项目/李四3/2025-09-27-19-29-45.txt b/个人项目/李四3/2025-09-27-19-29-45.txt new file mode 100644 index 0000000..31dfbda --- /dev/null +++ b/个人项目/李四3/2025-09-27-19-29-45.txt @@ -0,0 +1,60 @@ +1. (sqrt((11 + 76)^2))^2 = + +2. (64 + 54) - sqrt(sqrt(61)) = + +3. ((sqrt(9))^2)^2 / 26 = + +4. ((95 * 48) / 50)^2 = + +5. sqrt(74) = + +6. sqrt((sqrt(26) + 52) * (95 + 100)^2) = + +7. sqrt(sqrt(3) + 58) = + +8. sqrt(((21 * 21) * (52 / 38)) + 9) = + +9. sqrt((29)^2) = + +10. (sqrt(100))^2 = + +11. sqrt((46)^2 / 60) = + +12. sqrt(98) + (((2)^2 + 38) + 63) = + +13. sqrt(sqrt(64)) = + +14. 92 + (69)^2 = + +15. sqrt(61) = + +16. sqrt(42) = + +17. ((28)^2 / 39)^2 = + +18. sqrt(25) = + +19. (20)^2 - (68)^2 = + +20. (sqrt(86) / 5)^2 / 9 = + +21. (77)^2 - (52)^2 = + +22. sqrt(4 - sqrt(86 / 59)) = + +23. sqrt((sqrt(80) + 60) / (75 - 7)) = + +24. (88)^2 * 80 = + +25. sqrt(25) - sqrt(52) = + +26. (sqrt(73))^2 = + +27. (15)^2 = + +28. sqrt(((76)^2)^2) = + +29. sqrt(sqrt(sqrt(3) / (90)^2)) = + +30. sqrt(8) = + diff --git a/个人项目/李四3/2025-09-27-20-42-19.txt b/个人项目/李四3/2025-09-27-20-42-19.txt new file mode 100644 index 0000000..c15e0ef --- /dev/null +++ b/个人项目/李四3/2025-09-27-20-42-19.txt @@ -0,0 +1,60 @@ +1. (37)^2 = + +2. (sqrt(86) + (33 * 47)) + 13 = + +3. (100)^2 = + +4. sqrt(sqrt(93)) = + +5. sqrt(82) = + +6. sqrt(16) = + +7. (83 + (sqrt(34))^2) + 21 = + +8. (27)^2 = + +9. sqrt(sqrt(97)) * 69 = + +10. sqrt(((15 - 96) - 24) * 81) = + +11. (49)^2 = + +12. (74 / 97)^2 = + +13. sqrt(20) + sqrt(sqrt(89 * 60)) = + +14. sqrt(31) = + +15. (69)^2 = + +16. sqrt(sqrt(61)) = + +17. 65 / (28)^2 = + +18. sqrt((93)^2 * 39) + 34 = + +19. sqrt(43) = + +20. (41)^2 = + +21. sqrt(sqrt(14)) = + +22. sqrt(sqrt(10)) = + +23. (47)^2 = + +24. sqrt(45 + (22 + (22)^2)) = + +25. (93)^2 = + +26. (28 - (5)^2) + (58)^2 = + +27. sqrt(sqrt(sqrt(38) + (26)^2)) = + +28. ((sqrt(25) / 90)^2)^2 = + +29. (99 * sqrt(66 / 98)) / (12 - 14) = + +30. sqrt(98 + (28 + (3 + 87))) = + diff --git a/个人项目/李四3/2025-09-27-20-42-21.txt b/个人项目/李四3/2025-09-27-20-42-21.txt new file mode 100644 index 0000000..88ec1b2 --- /dev/null +++ b/个人项目/李四3/2025-09-27-20-42-21.txt @@ -0,0 +1,60 @@ +1. (sqrt(71))^2 = + +2. (87)^2 / 60 = + +3. sqrt(56) = + +4. (44)^2 = + +5. ((84)^2)^2 = + +6. (92 * sqrt(84))^2 + 58 = + +7. (sqrt((69 * 8) + 33))^2 = + +8. sqrt(sqrt(77)) * 90 = + +9. sqrt(98 + 64) = + +10. (43)^2 = + +11. sqrt((65 + 17)^2 * 84) = + +12. ((sqrt((35)^2))^2)^2 = + +13. 96 - (sqrt(97) / sqrt(90))^2 = + +14. sqrt(sqrt((99 * 55) - sqrt(50))) = + +15. (sqrt(63))^2 = + +16. (67)^2 = + +17. sqrt(28) / sqrt(59) = + +18. ((88)^2)^2 = + +19. ((21)^2)^2 = + +20. ((12)^2 - sqrt(95)) - 31 = + +21. (51)^2 = + +22. (34)^2 * (96 - 35) = + +23. sqrt(sqrt((18)^2) * (sqrt(59) - 29)) = + +24. (((71)^2 - 64) / 14)^2 = + +25. sqrt(36) = + +26. (((93)^2)^2)^2 = + +27. sqrt(sqrt(5 + 71) / 98) = + +28. ((71 - sqrt(59)) / sqrt(19))^2 = + +29. sqrt((38 / 83)^2) = + +30. sqrt(sqrt(16)) = + diff --git a/个人项目/王五1/2025-09-24-20-13-46.txt b/个人项目/王五1/2025-09-24-20-13-46.txt new file mode 100644 index 0000000..1f78b5d --- /dev/null +++ b/个人项目/王五1/2025-09-24-20-13-46.txt @@ -0,0 +1,20 @@ +1. (96/cos(76)) = + +2. sin(98) = + +3. cos(43) = + +4. tan(86) = + +5. sin(cos((sin(92)/(12+27)))) = + +6. cos(3) = + +7. cos(84) = + +8. tan(79) = + +9. tan(29) = + +10. cos(((98-51)/sin(35))) = + -- 2.34.1