网页版的四则运算出题

用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>

原文地址:https://www.cnblogs.com/dazhi151/p/11748541.html

时间: 2024-10-16 03:15:36

网页版的四则运算出题的相关文章

结对作业:四则运算网页版

coding克隆仓地址:https://git.coding.net/huyifeng1998/jieduixiangmu.git 一.预期PSP: 二.结对编程对接口的设计 information hiding: 信息隐藏是指在设计和确定模块时,使得一个模块内包含的特定信息(过程或数据),对于不需要这些信息的其他模块来说,是不可访问的. 我们在结对项目中将各种经常用到的类和方法放在外联,而不是内嵌在一个类中,这样每个类分工明确,便于修改.信息隐藏同时体现在各种类.算法对用户不可见,能隐藏复杂度

结对项目-四则运算出题程序(GUI版)

目录: 一.致搭档(含项目地址) 二.PSP(planning) 三.结对编程中对接口的设计 四.计算模块接口的设计与实现过程 五.计算模块接口部分的性能改进 六.计算模块部分单元测试展示 七.计算模块部分异常处理说明 八.界面模块的详细设计过程 九.界面模块与计算模块的对接 十.结对过程的描述 十一.结对编程的优缺点 十二.PSP(actual) 一.致搭档:     队友:李庭娟(我很喜欢把这位队友叫娟子,感觉很亲切) 首先非常非常感谢这位结对搭档--娟子,从最初组队到如今合作,始终非常信任

四则运算出题4

1.题目要求: 将之前的四则运算出题,做成手机APP 或以网页版发布,可以让用户答题,并提示结果正确与否. 2.实现思路: 出题思路不变,将开发工具改到eclipse 上,开发成安卓程序: 3.思路整理(实现步骤): 出题步骤不变,按照之前的四则运算程序的思路,将出题结果显示在textview ,用户输入,并可以判断是否正确,并弹出对话框,提示正确与否,并对每一次的判断进行计数,结束时,提示计数结果. 4.源代码: MainActivity.java文件: package com.er.er0;

一个简单的税利计算器(网页版)

嗯嗯,做一个简单的网页版的税率计算器,功能比较简单,但是相对比较实用.因为参考了一些其他作品,所以在计算汇率的时候习惯性的是以美元做单位.具体的功能有着较为详细的标注.仅供大家学习参考下. <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>JavaScript Loan Calculator</title>

Pongo网页版JavaScript源代码及设计思路

1.游戏背景介绍(写在前面的废话): 五月初的某天,看到某网推荐了这款游戏,Pongo,看着还不错的样子就用ipad下下来试玩了下,玩了两局感觉还错挺过瘾的,因为是手欠类游戏嘛大家懂的. 但是没一会发现游戏在ipad似乎有些bug,玩一会就会卡住然后只能强退了,真是揪心,记录还等着破呢. 怎么办?玩游戏不如玩自己的游戏的念头又邪恶的出现了,然后就把pad丢给了朋友虐心去,我默默回到电脑前开始动手自己写个不会卡的. 大概两小时吧,写出了基本框架,然后扔sinaapp里试了下效果基本能玩就洗洗睡了.

二手书网页版mis系统

在小学期这几天的时间,自己将上个学期做的书书网二手书app做出了网页版.该系统只要分为前端用户界面和后端管理员界面. 管理员具有添加书的一级分类和二级分类的功能. 用户具有买书和卖书的功能. 下面是源程序和截图: 截图: 前台界面:     后台界面: 这里的分类用了二级菜单的模式,如果不选择父类,就是添加一级分类,否则就是某一级分类下的二级分类. 下面是源程序的下载路径:(数据库表我就不展示了),主要是一些javabean和servlet.如果想要所有的源代码可以联系我. https://pa

ORACLE的安装与网页版创建表空间的简单操作以及PLsql的简单操作

1.oracle的安装: 安装简单易学,在这里不做解释.下载看装包后耐心等待,注意安装目录不要有中文字符,尽量按照指定目录进行安装.安装完成后会占用有大约5g的内存. 如果要卸载oracle,需要用其自带的卸载工具进行卸载[universal installer],然后删除注册表项,删除环境变量,删除目录并且重新启动计算机. 2.在网页版进行创建表空间: 进入网页版: 在电脑的服务中我们可以看到一共有7个oracle的服务项目,其中只有三个是正在启动中.这三项中,只有当OracleDBConso

自已开发完美的触摸屏网页版仿app弹窗型滚动列表选择器/日期选择器

手机端网页版app在使用下拉列表时,传统的下拉列表使用起来体验非常不好,一般做的稍好一点的交互功能界面都不会直接使用下拉列表,所以app的原生下拉列表都是弹窗列表选择,网页型app从使用体验上来当然也应该做成那样,前段时间在开发网页版app时就遇到这种需求,不仅是日期选择器,数据列表.变量列表选择等等下拉列表型需求都需要,网上找来找去只找到一款比较好的mobiscroll,不过下载比较麻烦,感觉比较奇怪的是jquery.mobile.jeasyui.mobile都没有提供这种控件,不知道为什么?

网页版批量文件重命名

功能:这是一个网页版的文件批量重命名 操作步骤: 输入文件所在的绝对路径, 输入你想要替换的关键字, 输入你想要用什么字符来替换他(可为空), 点击确定,文件将会批量被重命名, 点击撤回就会还原出起初的文件名字, 点击清空主要是一键清除文本框里面的内容. 总的有1个jsp,四个Java程序共同完成这个功能: start.jsp(显示界面)   CodeFilter.java(过滤器,主要负责编码)   ReceiveStartServlet.java(接受启动,进行文件操作) RevokeSer