首页 > 其他分享 >10.20

10.20

时间:2024-10-20 22:01:38浏览次数:1  
标签:10.20 Random random question public append maxOperandValue

修改了四则运算中的部分错误
Grade3QuestionGenerator类

点击查看代码
package qixun;

import java.util.Random;

public class Grade3QuestionGenerator extends Grade2QuestionGenerator {
    public Grade3QuestionGenerator() {
        this.operandCount = 4; // 操作数不超过4个
        this.maxOperandValue = 1000; // 操作数范围不超过1000
    }

    @Override
    public String getQuestion() {
        Random random = new Random();
        StringBuilder question = new StringBuilder();

        // 生成最多4个操作数的表达式
        for (int i = 0; i < operandCount - 1; i++) {
            int operand = random.nextInt(maxOperandValue) + 1;
            String operator = generateOperator(); // 调用父类的 generateOperator()
            question.append(operand).append(" ").append(operator).append(" ");
        }
        question.append(random.nextInt(maxOperandValue) + 1); // 最后一个操作数

        return question.toString();
    }

    @Override
    public double getAnswer(String question) {
        double result = super.getAnswer(question);
        return result;
    }
}


Grade4QuestionGenerator类
点击查看代码
package qixun;

import java.util.Random;

public class Grade4QuestionGenerator extends Grade3QuestionGenerator {
    public Grade4QuestionGenerator() {
        this.operandCount = 5;
    }

    @Override
    public String getQuestion() {
        Random random = new Random();
        StringBuilder question = new StringBuilder();

        // 可能加入括号
        boolean useBrackets = random.nextBoolean();
        if (useBrackets) {
            question.append("(");
        }

        for (int i = 0; i < operandCount - 1; i++) {
            int operand = random.nextInt(maxOperandValue) + 1;
            String operator = generateOperator();
            question.append(operand).append(" ").append(operator).append(" ");

            // 添加括号
            if (useBrackets && i == 2) {
                question.append("(").append(random.nextInt(maxOperandValue) + 1).append(") ");
                useBrackets = false; // 防止括号重复使用
            }
        }
        question.append(random.nextInt(maxOperandValue) + 1); // 最后一个操作数

        if (useBrackets) {
            question.append(")"); // 如果还未关闭括号,添加关闭括号
        }

        return question.toString().trim(); // 去掉多余空格
    }
}

标签:10.20,Random,random,question,public,append,maxOperandValue
From: https://www.cnblogs.com/qiixunlu/p/18488013

相关文章

  • 10.19-10.20 练习
    其实是复健。上一次碰电脑是期末考试完(7月),上上次是noip(2023年11月)。1.P9752[CSP-S2023]密码锁__record要求:语文没问题,会基础语法,有生活常识。枚状态,判断。几乎没有复杂度要求。Code#include<bits/stdc++.h>usingnamespacestd;constintN=1e6+10;intn,ans;int......
  • 10.20 闲话
    从初中开始的很长很长一段时间,我的所有OI相关账号的签名都是"JustGoForOI!"或"CJOIerJustGoForOI!"这两句。这大概反映了我当初对于OI的态度是不思考训练的意义,不去想未来的方向,不理会文化课或者或者人际上的一些琐事,全心全意地按照教练的要求去做就行了。至于当......
  • 10.20程序员修炼之道读后感
    从序言中,我学到了不可替代的才叫经典,原则源于实践,高于实践这两个道理,令我感受颇深,我优先阅读的理应是经典,而我所缺乏的恰恰是实践前言中提到了编程需要专注,需要仔细思考,需要转变思考的方式,一切其实都可以是编程,开会,学习,吃饭,打游戏,思维打开来看,一切其实都可以是编程,我觉得虚拟世界......
  • 2024.10.20 1859版
    起于《海奥华预言》的思考◆地球管理结构和参考持续更新中...... 英文地址:https://github.com/zhuyongzhe/Earth/tags中文地址:https://www.cnblogs.com/zhuyongzhe85作者:朱永哲 ---------------------------------------------------------------------------------......
  • 2024.10.20 1424版
    起于《海奥华预言》的思考◆地球管理结构和参考持续更新中...... 英文地址:https://github.com/zhuyongzhe/Earth/tags中文地址:https://www.cnblogs.com/zhuyongzhe85作者:朱永哲 ---------------------------------------------------------------------------------......
  • 2024.10.20 1315版
    起于《海奥华预言》的思考◆地球管理结构和参考持续更新中...... 英文地址:https://github.com/zhuyongzhe/Earth/tags中文地址:https://www.cnblogs.com/zhuyongzhe85作者:朱永哲 ---------------------------------------------------------------------------------......
  • 机器学习周报(10.14-10.20)
    目录摘要Abstract1决策树的剪枝(DecisionTreePruning)1.1预剪枝(Pre-Pruning)1.2后剪枝(Post-Pruning)2集成树(TreeEnsembles)2.1多决策树(MultipleDecisionTrees)2.2有放回抽样(SamplingwithReplacement)2.3随机森林算法(RandomForestAlgorithm)2.4......
  • z-library镜像地址,如何获取最新网址(2024.10.20)
    zlibrary数字图书馆介绍Z-library被称为全球最大的数字图书馆,里面包含9,826,996本电子书,84,837,646篇期刊文章。从各种知名文学著作,理工学科,人文艺术、到学术论文等应有尽有!支持PDF、epub、mobi等多种格式图书资源下载绝对是你找书的不二选择。zlibrary数字图书馆镜像网址......
  • 10.20
    一.多选题(共4题,50分)(多选题)模块分解的主要步骤:A.把问题分成更多的小问题B.分别解决每个小问题C.把各个小问题的解答聚合起来,即可得到原问题的答案。D.每个小问题会更加复杂化我的答案:ABC:把问题分成更多的小问题;分别解决每个小问题;把各个小问题的解答聚合起来,......
  • 10.14 ~ 10.20
    10.14上午模拟赛。但是这场模拟赛原先的题目叫“CSP-S模拟(难)”然后“题目不按照难度排序”而且还直接给了T4的初步结论有一种不祥的预感......