首先先画出一个表

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>四则运算</title>
</head>
<form name="a1" action="chuti.jsp" onsubmit="return check(a1);">
<h2 align="center">四则运算</h2>
<table align="center"border="2" width="400">
<body>
<tr>
<td>你想要的题目数量</td>
<td><input type="text" name="number" value=""placeholder="题数"
onchange="checkti(a1)"></td>
</tr>
<tr>
<td>你想要的题目的每行个数</td>
<td><input type="text" name="hang" value=""placeholder="行数"
onchange="checkhang(a1)"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="提交"></td>
</tr>
</table>
<script type="text/javascript">
function check(a1)
{
var num = a1.number.value;
var hang= a1.hang.value;
if(num.length==0)
{
alert("题数不能为空");
a1.number.value="";
a1.number.focus();
return false;
}
if(num.length==0)
{
alert("行数不能为空");
a1.number.value="";
a1.number.focus();
return false;
}
}
function checkti(a1)
{
var num = a1.number.value;
if(num=="")
{
alert("题数不能为空");
a1.number.value="";
a1.number.focus();
return false;
}
}
function checkhang(a1)
{
var hang=a1.hang.value;
if(hang.length==0)
{
alert("行数不为空");
a1.hang.value="";
a1.hang.focus();
return false;
}

  其中运用了script语句进行脚本判断,来初始判断你输进来的值

然后我做了一个出题界面

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>答题界面</title>
</head>
<%
int h=Integer.parseInt(request.getParameter("hang"));
int n=Integer.parseInt(request.getParameter("number"));
String value[]=new String[n];
String answer[]=new String[n];
int i;
for(i=0;i<n;)
{
int num1=(int)(1+(Math.random()*100)); int num2=(int)(1+(Math.random()*100));
int f=(int)(1+(Math.random()*4));
if(f==1)
{
value[i]=num1+"+"+num2+"=";
answer[i]=num1+num2+"";
i++;
}
else if(f==2&&num1>=num2)
{
value[i]=num1+"-"+num2+"=";
answer[i]=num1-num2+"";
i++;
}
else if(f==3&&num1*num2<100)
{
value[i]=num1+"*"+num2+"=";
answer[i]=num1*num2+"";
i++;
}
else if(f==4&&num2!=0&&num1%num2==0)
{
value[i]=num1+"/"+num2+"=";
answer[i]=num1/num2+"";
i++;
}
else
continue;
}
%>
<body>
<h2 align="center">练习题</h2>
<form action="panduan.jsp">
<table align="center"border="2" width="400">
<%
int k;
for(int j=0;j<n;)
{
k=0;
%>
<tr>
<%
while(k<h)
{
%>
<td><%=value[j] %></td>
<td><input type="hidden" name="value" value=<%=value[j] %>></td>
<td><input type="text" name="result" /></td>
<td><input type="hidden" name="answer" value=<%=answer[j] %>></td>
<%
j++;
k++;
if(j>=n)
break;
}
%>
</tr>
<%
}
%>
<tr>
<td colspan="2" align="center"><input type="submit" value="提交"></td>
</tr>
</table>
</form> </body>
</html>

  然后设计一个后台来对程序进行判断

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>答题界面</title>
</head>
<%
int h=Integer.parseInt(request.getParameter("hang"));
int n=Integer.parseInt(request.getParameter("number"));
String value[]=new String[n];
String answer[]=new String[n];
int i;
for(i=0;i<n;)
{
int num1=(int)(1+(Math.random()*100)); int num2=(int)(1+(Math.random()*100));
int f=(int)(1+(Math.random()*4));
if(f==1)
{
value[i]=num1+"+"+num2+"=";
answer[i]=num1+num2+"";
i++;
}
else if(f==2&&num1>=num2)
{
value[i]=num1+"-"+num2+"=";
answer[i]=num1-num2+"";
i++;
}
else if(f==3&&num1*num2<100)
{
value[i]=num1+"*"+num2+"=";
answer[i]=num1*num2+"";
i++;
}
else if(f==4&&num2!=0&&num1%num2==0)
{
value[i]=num1+"/"+num2+"=";
answer[i]=num1/num2+"";
i++;
}
else
continue;
}
%>
<body>
<h2 align="center">练习题</h2>
<form action="panduan.jsp">
<table align="center"border="2" width="400">
<%
int k;
for(int j=0;j<n;)
{
k=0;
%>
<tr>
<%
while(k<h)
{
%>
<td><%=value[j] %></td>
<td><input type="hidden" name="value" value=<%=value[j] %>></td>
<td><input type="text" name="result" /></td>
<td><input type="hidden" name="answer" value=<%=answer[j] %>></td>
<%
j++;
k++;
if(j>=n)
break;
}
%>
</tr>
<%
}
%>
<tr>
<td colspan="2" align="center"><input type="submit" value="提交"></td>
</tr>
</table>
</form> </body>
</html>

  最后一个结束界面

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>结束界面</title>
</head>
<body>
本次答题结束
</body>
</html>

  

java web编写四则运算的更多相关文章

  1. JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识

    JAVA WEB快速入门系列之前的相关文章如下:(文章全部本人[梦在旅途原创],文中内容可能部份图片.代码参照网上资源) 第一篇:JAVA WEB快速入门之环境搭建 第二篇:JAVA WEB快速入门之 ...

  2. JAVA WEB快速入门之从编写一个基于SpringMVC框架的网站了解Maven、SpringMVC、SpringJDBC

    接上篇<JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP.IOC)>,了解了Spring的核心(AOP.IOC)后,我们再来学习与实践Maven.Sp ...

  3. JAVA WEB快速入门之从编写一个JSP WEB网站了解JSP WEB网站的基本结构、调试、部署

    接上篇<JAVA WEB快速入门之环境搭建>,在完成了环境搭建后(JDK.Tomcat.IDE),现在是万事具备,就差写代码了,今天就来从编写一个JSP WEB网站了解JSP WEB网站的 ...

  4. 第二次作业利用java语言编写计算器进行四则运算

    随着第一次作业的完成,助教 牛老师又布置了第二次作业:用java语言编写一个程序然后进行四则运算用户用键盘输入一个字符来结束程序显示统计结果.一开始看到这个题目我也着实吓了一跳 因为不知道如何下手而且 ...

  5. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  6. 在java web项目中编写自己的代码生成器

    在java web项目中编写自己的代码生成器

  7. 四则运算二(java web)

    最近我和我的小伙伴yaoyali结成对子,共同写网页版的四则运算.虽然现在还没弄好,但是比起上次用纯java写的四则运算有了很大改进. 一.存放四则运算题目和答案的类 package com.jaov ...

  8. 高效 Java Web 开发框架 JessMA v3.5.1

    JessMA 是功能完备的高性能 Full-Stack Web 应用开发框架,内置可扩展的 MVC Web 基础架构和 DAO 数据库访问组件(内部已提供了 Hibernate.MyBatis 与 J ...

  9. 高效 Java Web 开发框架 JessMA v3.4.1

    JessMA 是功能完备的高性能 Full-Stack Web 应用开发框架,内置可扩展的 MVC Web 基础架构和 DAO 数据库访问组件(内部已提供了 Hibernate.MyBatis 与 J ...

随机推荐

  1. IIS学习笔记

    IIS传输笔记 1.作用 IIS 将网站开发代码传输到服务器上,就是为了网站的发布 2.下载安装 我是使用的云服务器,windows sever 2012 2.1打开"服务器管理器" ...

  2. 洛谷P1583 魔法照片

    https://www.luogu.org/problem/P1583 话不多说,其实就是模拟,然后,各种繁琐 #include<bits/stdc++.h> using namespac ...

  3. 洛谷P1086 花生采摘

    https://www.luogu.org/problem/P1086 #include <bits/stdc++.h> using namespace std; typedef long ...

  4. 2019牛客竞赛第六场D Move 宏观单调,部分不单调

    Move 题意 有k个体积相同的箱子,有个憨憨有固定的装箱策略,每次都只装可以装的重量中最大的东西,求箱子的最小提及 分析 看起来可以二分,但由于他的装箱策略有点蠢,所以只在宏观上满足单调性,在特别小 ...

  5. MySql 中关键字 case when then else end 的用法

    解释: SELECT case -------------如果 ' then '男' -------------sex='1',则返回值'男' ' then '女' -------------sex= ...

  6. Python实现共享内存通信方式

    创建共享内存python文件: import mmap import contextlib import time with contextlib.closing(mmap.mmap(-1, 100, ...

  7. hdu1716 排列2

    12  21 123 132  213 231 321 312 .... 每次都将后面n-1位进行全排列.递归的出口当起始坐标等于终止坐标时.需要还原. 设计标记数组.因为需要从小到大输出. #def ...

  8. IF EXISTS 两个条件连用

    当IF EXISTS要判断多个条件并存时,可以用AND连接,NOT EXISTS同理 IF EXISTS (SELECT 1 ) AND EXISTS (SELECT 2 ) BEGIN ...... ...

  9. telnet不起作用

    1.出现 'telnet' 不是内部或外部命令,也不是可运行的程序或批处理文件. 原因:因为本机的Telnet客户端默认是关闭的,所以我们要手动打开 解决方案:打开控制面板–>程序–>打开 ...

  10. Linux find命令:在目录中查找文件(超详解)

    find 是 Linux 中强大的搜索命令,不仅可以按照文件名搜索文件,还可以按照权限.大小.时间.inode 号等来搜索文件.但是 find 命令是直接在硬盘中进行搜索的,如果指定的搜索范围过大,f ...