吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3834|回复: 42
收起左侧

[其他原创] 小学数学出题,加减乘除运算,网页版

  [复制链接]
xiaoguyan 发表于 2023-10-10 10:47
本帖最后由 xiaoguyan 于 2023-10-10 10:49 编辑

闲来无事,看到小朋友作业不多,写了个小学数学出题,加减乘除运算,网页版。
比较简陋,实现简单功能,大家可以根据需要美化。
在线预览:https://uutool.cn/html/   复制下面代码后到该地址预览即可

[HTML] 纯文本查看 复制代码
<html>
<head>
    <style>
        body {
            font-family: Arial, sans-serif;
            margin: 20px;
        }
        h1 {
            text-align: center;
        }
        .container {
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        .options {
    display: -webkit-box;
    line-height: 25px;
}
        .options label {
            display: block;
        }
        .questions {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            width: 80%;
        }
        .questions p {
            font-size: 24px;
            font-weight: bold;
                        line-height: 5px;
    padding-left: 20%;
        }
                .questions input {
    border: none;
}
        .print {
            margin-top: 20px;
        }
                .options div {
    margin-right: 20%;
    background-color: #8080801a;
}

    </style>
</head>
<body>
    <h1>小学数学出题界面</h1>
    <div class="container">
        <div class="options">
            <div>
                <p>请选择运算符:</p>
                <label><input type="checkbox" id="add" checked> 加法</label>
                <label><input type="checkbox" id="sub"> 减法</label>
                <label><input type="checkbox" id="mul"> 乘法</label>
                <label><input type="checkbox" id="div"> 除法</label>
            </div>
            <div>
                <p>请选择出题数量:</p>
                <input type="number" id="num" min="1" max="10" value="5">
                <button id="gen">生成题目</button>
            </div>
            <div>
                <p>请选择数字范围:</p>
                <label>最小值:<input type="number" id="min" min="1" max="9" value="1"></label>
                <label>最大值:<input type="number" id="max" min="2" max="10" value="10"></label>
            </div>
                        </div><hr><button class="print">打印题目</button>
        <div class="questions">
            
        </div>
    </div>
    <script>
        // 获取页面元素
        var add = document.getElementById("add");
        var sub = document.getElementById("sub");
        var mul = document.getElementById("mul");
        var div = document.getElementById("div");
        var num = document.getElementById("num");
        var min = document.getElementById("min");
        var max = document.getElementById("max");
        var gen = document.getElementById("gen");
        var questions = document.getElementsByClassName("questions")[0];

        // 定义运算符和对应的函数
        var operators = ["+", "-", "×", "÷"];
        var functions = [
            function(a, b) { return a + b; },
            function(a, b) { return a - b; },
            function(a, b) { return a * b; },
            function(a, b) { return a / b; }
        ];

        // 定义生成随机整数的函数
        function randomInt(min, max) {
            return Math.floor(Math.random() * (max - min + 1)) + min;
        }

        // 定义生成题目的函数
        function generateQuestions() {
            // 清空原有的题目
            questions.innerHTML = "";
            
            // 获取用户选择的运算符、出题数量和数字范围
            var selectedOperators = [];
            if (add.checked) selectedOperators.push(0);
            if (sub.checked) selectedOperators.push(1);
            if (mul.checked) selectedOperators.push(2);
            if (div.checked) selectedOperators.push(3);
            
            var questionNum = parseInt(num.value);
            
            var minValue = parseInt(min.value);
            
            var maxValue = parseInt(max.value);

            // 判断用户是否至少选择了一个运算符
            if (selectedOperators.length == 0) {
                alert("请至少选择一个运算符!");
                return;
            }

            // 判断用户是否输入了合理的数字范围
            if (minValue >= maxValue) {
                alert("最小值应该小于最大值!");
                return;
            }

            // 随机生成题目并显示在页面上
            for (var i = 0; i < questionNum; i++) {
                // 随机选择一个运算符
                var opIndex = randomInt(0, selectedOperators.length - 1);
                var op = operators[selectedOperators[opIndex]];
                var func = functions[selectedOperators[opIndex]];

                // 随机生成两个操作数,保证结果为正整数
                var a, b, result;
                do {
                    a = randomInt(minValue, maxValue);
                    b = randomInt(minValue, maxValue);
                    result = func(a, b);
                } while (!Number.isInteger(result) || result <= 0);

                // 创建一个段落元素,显示题目
                var p = document.createElement("p");
                p.textContent = a + " " + op + " " + b + " = ";
                questions.appendChild(p);
                
                // 创建一个输入框元素,供用户输入答案
                var input = document.createElement("input");
                input.type = "number";
                input.min = "0";
                input.max = "100";
                input.size = "4";
                questions.appendChild(input);
            }
        }

        // 为生成题目按钮添加点击事件监听器
        gen.addEventListener("click", generateQuestions);
    </script>
</body>
</html>

免费评分

参与人数 10吾爱币 +15 热心值 +9 收起 理由
bbszhu + 1 + 1 谢谢@Thanks!
junjia215 + 1 + 1 用心讨论,共获提升!
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
jamessteed + 1 + 1 谢谢@Thanks!
learre + 1 谢谢@Thanks!
MingDU + 1 + 1 谢谢@Thanks!
ldxxhcjs + 1 鼓励转贴优秀软件安全工具和文档!
SSHZDR + 1 + 1 谢谢@Thanks!
花开永怡 + 1 + 1 谢谢@Thanks!
isispp + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

bachelor66 发表于 2023-10-10 11:00
要是可以设置混合运算就更好了            
sai609 发表于 2023-10-10 12:28
小朋友作业少。。。看看有没有符合下列要求:
九、小学生必须掌握的八个技能
(一) 娴熟掌握至少两种以上运动技能(必须包括游泳在内)伴随终身并形成终身锻炼的习惯。
(二)形成终身阅读的习惯,小学阶段不低于1000万字的阅读量(约200本课外读物,其中必须包含50本中外名著,30本古今中外名人传记,30本科普读物,30本纯英语读物)。
(三)掌握演奏一种以上乐器的技能并形成欣赏高雅音乐的兴趣和爱好。
(四)能说一口流利的普通话和英语。
(五)能写得一手漂亮的硬笔字和学会书写毛笔字。
(六)能独立做一桌家常饭菜。学会做家务的技能并养成热爱做家务的习惯。
(七)学生在毕业前能参与完成一项实验,并写出一份较完整的实验报告,在科技文化节展示。
(八) 具有创新意识,能积极参与科技创新活动。
so这才是作业
601541027 发表于 2023-10-10 10:57
 楼主| xiaoguyan 发表于 2023-10-10 11:01

可以,保存到本地。新建文本文档,粘贴代码后保存,然后把文件后缀改为.html运行,出题就可以打印了
青春莫相随 发表于 2023-10-10 11:20
感谢分享
cux666 发表于 2023-10-10 11:22
赞,谢谢分享!
djt1314 发表于 2023-10-10 11:22
不错,很好
花开永怡 发表于 2023-10-10 11:36
有用有用,谢谢啦
chenmo1314 发表于 2023-10-10 11:43
感谢分享
z22555 发表于 2023-10-10 11:57
牛牛牛牛牛
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 12:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表