zoukankan      html  css  js  c++  java
  • 网页版的四则运算出题

    用javaweb编写的网页版的四则运算出题

    这个网页自己可以控制总的出题数目,以及自己所要要求的每行输出的个数,

    之后再出题中应用到了随机数,并且在代码中,保证每一道题不是重复的,在一次做题中仅仅出现一次,并且自己还设定了相应的出题规则。

    主要代码如下主要分为四个界面。

    界面1:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>四则运算在线答题</title>
    </head>
    <!-- background="file:///D:/新建文件夹%20(8)/com.sizeyunsuan/WebContent/images/wen.jpg" -->
    
    <body   text="Purple"  style="background: url(images/wen.jpg); background-size:100%">
    <h2>网页版四则运算自动出题系统</h2>
    <form action="jiemian2.jsp" method="post"  onsubmit="return checkall()">
    <table>
        <tr>
        <td>总共想要的题目个数</td>
        <td>
         <input type="text" name="number1" id="number1" value=""  placeholder="请输入"  onchange="check1()"/>
        </td>
        </tr>
        <tr>
        <td>每行想要输出的题目个数</td>
        <td><input type="text" name="number2" id="number2"  value="" placeholder="请输入" onchange="check2()" /></td>
        </tr>
        <tr>
          <td><input type="submit"  value="开始答题"></td>
      </tr>
        
    </table>
    
    </form>
    <script type="text/javascript">
        
        function check1()
        {
            var number1=document.getElementById("number1");
            var num=number1.value;
            if(num=="")
            {
                alert('总数不能为空');
                number1.focus();
                return false;
            }
        }
        
        function check2()
        {
            var number2 = document.getElementById("number2");
            var num2=number2.value;
            if(num2=="")
            {
                alert('行数不能为空');
                number1.focus();
                return false;
            }
        }
        function checkall()
        {
            var num1=document.getElementById("number1");
            var number1=num1.value;
            var num2 = document.getElementById("number2");
            var number2=num2.value;
            if(number1=="")
            {
                alert('总数不能为空');
                num1.focus();
                return false;
            }
            if(number2=="")
            {
                alert('行数不能为空');
                num2.focus();
                return false;
            }
            
        }
        </script>
    </body>
    
    </html>

    界面1主要是用来让用户输入相应的题数,并且不允许不填,并对用户是否填写全相应的内容做判断。

    界面2:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <%
    int w1= Integer.parseInt(request.getParameter("number1"));
    int w2 = Integer.parseInt(request.getParameter("number2"));
    String value[]=new String[w1];
    int num[]=new int[w1];
    int a1,a2,a3;
    int b1,b2,b3;
    int w3[]=new int[100];
    int w4[]=new int[100];
    int w5[]=new int[100];
    int w6[]=new int[100];
    int w7[]=new int[100];
    int w8[]=new int[100];
    int w9[]=new int[100];
    int w10[]=new int[100];
    char wen[]= {'+','-','*','/'};
    nn:for(a1=1;a1<=w1;)
    {
        for(a2=1;a2<=w2;)
        {
            b1=(int)(Math.random()*100);
            b2=(int)(Math.random()*100);
            b3=(int)(Math.random()*4);
            if(b3==0)
            {
                if(w3[b1]==1)
                {
                    if(w4[b2]==1)
                    {
                        continue;
                    }
                    else
                    {
                        w3[b1]=1;
                        w4[b2]=1;
                        a3=b1+b2;
                        num[a1-1]=a3;
                        value[a1-1]=b1+"+"+b2;
                    }
                }
                else
                {
                    w3[b1]=1;
                    w4[b2]=1;
                    a3=b1+b2;
                    num[a1-1]=a3;
                    value[a1-1]=b1+"+"+b2;
                }
            }
            if(b3==1)
            {
                if(b1>=b2)
                {
                    if(w5[b1]==1)
                    {
                        if(w6[b2]==1)
                        {
                            continue;
                        }
                        else
                        {
                            w5[b1]=1;
                            w6[b2]=1;
                            a3=b1-b2;
                            num[a1-1]=a3;
                            value[a1-1]=b1+"-"+b2;
                        }
                    }
                    else
                    {
                        w5[b1]=1;
                        w6[b2]=1;
                        a3=b1-b2;
                        num[a1-1]=a3;
                        value[a1-1]=b1+"-"+b2;
                    }
                }
                else
                    continue;
            }
            if(b3==2)
            {
                if((b1*b2)/100==0)
                {
                    if(w7[b1]==1)
                    {
                        if(w8[b2]==1)
                        {
                            continue;
                        }
                        else
                        {
                            w7[b1]=1;
                            w8[b2]=1;
                            a3=b1*b2;
                            num[a1-1]=a3;
                            value[a1-1]=b1+"*"+b2;
                        }
                    }
                    else
                    {
                        w7[b1]=1;
                        w8[b2]=1;
                        a3=b1*b2;
                        num[a1-1]=a3;
                        value[a1-1]=b1+"*"+b2;
                    }
                }
                else
                    continue;
            }
            if(b3==3)
            {
                if(b2!=0&&b1%b2!=0)
                {
                    continue;
                }
                if(b2==0)
                {
                    continue;
                }
                if(w9[b1]==1)
                {
                    if(w10[b2]==1)
                    {
                        continue;
                    }
                    else
                    {
                        w9[b1]=1;
                        w10[b2]=1;
                        a3=b1/b2;
                        num[a1-1]=a3;
                        value[a1-1]=b1+"/"+b2;
                    }
                }
                else
                {
                    w9[b1]=1;
                    w10[b2]=1;
                    a3=b1/b2;
                    num[a1-1]=a3;
                    value[a1-1]=b1+"/"+b2;
                }
            }
            if(a1==w1)
            {
                break nn;
            }
            ++a1;
            ++a2;
        }
    }
    %>
    <title>Insert title here</title>
    </head>
    <body    style="background: url(images/wen.jpg) ;background-size:100%">
    <form action="jiemian3.jsp">
    <h2>所有的题目如下</h2>
    <table>
      <%
        mm:for(int j=0;j<w1;){
         %>
         <tr>
         <%for(int j1=0;j1<w2;)
             {%>
    
       <td><%=value[j] %>=</td>
       <td><input type="hidden" name="values" value=<%=value[j]%>></td>
       <td><input type="text" name="result" value=""></td>
       <td><input type="hidden" name="answer" value=<%=num[j] %>></td>
      <% 
      j++;
      j1++;
      if(j==w1)
          {
          break mm;
          }
          }
        %>
        </tr>
      <% 
        }
        %>
        <tr>
        <td>
        <input type="submit" value="提交所做的答案">
        </td>
        </tr>
        </table>
     </form>
    </body>
    </html>

    界面2用来随机产生题目并按照用户设定的题目数进行输出。

    界面3:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body  text="Yellow"  style="background: url(images/wen1.jpg); background-size:100%">
    <div align="center">
    <%
    String result[] = request.getParameterValues("result");
    String sum[] = request.getParameterValues("answer");
    String values[] = request.getParameterValues("values");
    int q1=sum.length;
    int s1=0,s2=0,s3=0;
    for(int q3=0;q3<q1;q3++)
    {
        if(result[q3].equals(""))
        {
            s1++;
            %>
            <p><%=values[q3]%>=<%=result[q3]  %>没有填写,正确答案为<%=sum[q3] %></p>
            <%
        }
        
        else if(result[q3].equals(sum[q3]))
        {
            s2++;
            %>
            <p><%=values[q3]%>=<%=result[q3]  %>答案正确</p>
            <%
        }
        else 
        {
            s3++;
            %>
            <p><%=values[q3]%>=<%=result[q3]  %>答案错误,正确答案为<%=sum[q3] %></p>
            <%
        }
    }
    %>
    
    <h2>
       你答对了<%=s2   %>题,答错了<%=s3  %>题,没有答<%=s1  %>题。
    </h2>
    <a href="jiemian1.jsp"><button>继续作答新的题目</button></a>
      <a href="jiemian4.jsp"><button>结束做题</button></a>
      </div>
    </body>
    </html>

    统计用户的作答情况,输出答对了,答错了,以及没有作答的题目情况。并进行输出。并且将相应题目的正确答案放在没到题目的后面。

    以方便用户查看正确答案。用户还可选择是否继续作答新的题目。还是结束作答。当选的是继续作答是,会跳转到界面1进行相关的操作。结束的话,将跳转到界面4.

    界面4:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body  text="Yellow" style="background: url(images/wen.jpg) ;background-size:100%" >
    <p align="center">做题结束,欢迎下次再来</p>
    </body>
    </html>

     

     

  • 相关阅读:
    系统调用(转)
    linux 特殊符号(转)
    对物权法第十二章建设用地使用权解读(转载)
    地籍管理信息化总体设计纲要
    行业管理架构初探
    基础框架平台——基础管理框架——GUI实现设计(一)
    通过类库来实现多窗体windows程序遇到了些问题,请大家有空帮忙看一下,谢谢
    基础框架平台——基础管理框架——GUI抽象设计(布局管理器)
    基础框架平台——基础管理框架——GUI抽象设计(工作台)
    当窗体最大化后,系统提示"集合在窗体变化时发生了修改",请问是什么缘故啊?
  • 原文地址:https://www.cnblogs.com/dazhi151/p/11748541.html
Copyright © 2011-2022 走看看