软件工程结 对作业 02

四则运算4

                                 

1.设计思想:各部分分模块进行

2.源程序:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<title>主界面</title>

<style type="text/css">

body

{

    background-image: url(image/17.jpg);

}

</style>

</head>

<body>

<div style="text-align: center; font-family: 微软雅黑; font-size: 50px; color: #C03; "><strong><em>四则运算</em></strong></div>

<div style="text-align: center; font-family: 微软雅黑; font-size: 15px; color: #C03; "><strong><em>Welcome To User The System</em></strong></div>

<br/>

<div style="text-align: center; font-family: 微软雅黑; font-size: 20px;color: #C03;"><strong><em>请选择出题的范围</em></strong></div><br />

<form  name="form1" method="post" action="panduan.jsp">

<blockquote>

  <blockquote>

    <blockquote>

      <blockquote>

        <blockquote>

          <blockquote>

            <blockquote>

             <blockquote>

              <blockquote>

               <blockquote>

               <div style="color: #C03">

              <p> <strong>A:整数的四则计算<br />

                B:真分数的四则计算<br />

                C:整数与真分数的混合四则运算<br />

                D:有余数的除法<br />

                E:有括号的四则运算<br />

                </strong>

              </p>

              </div>

              </blockquote>

              </blockquote>

              </blockquote>

            </blockquote>

          </blockquote>

        </blockquote>

      </blockquote>

    </blockquote>

  </blockquote>

</blockquote>

<div style="text-align: center;color: #C03 ">

<strong>请选择:</strong><input name="xuanze" type="text"/>

<input name="" type="submit" value="提交"  />

<input name="" type="reset" value="重置" />

</div>

</form>

</body>

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

<style type="text/css">

body

{

    background-image: url(image/7.jpg);

}

</style>

</head>

<body>

<%

 String panduan=request.getParameter("xuanze");

if(panduan.equals("A"))

{

    %>

    <form id="form2" name="form2" method="post" action="chaundi.jsp">

    <div style="text-align:center;color:#F09">

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    请输入出题的个数:<input name="geshu" type="text" value=""/><br /><br/>

    请选择出题的范围:<input name="fanwei" type="text" value=""/><br/><br/>

    <input name="" type="submit" value="提交" />

    </div>

    </form>

    <%

}

else if(panduan.equals("B"))

{

    %>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <form id="form3" name="form4" method="post" action="fenchuandi.jsp">

    <div style="text-align:center;color:#F09">

    请输入出题的个数:<input name="geshu" type="text" value=""/><br /><br/>

    请选择出题的范围:<input name="fanwei" type="text" value=""/><br/><br/>

    <input name="" type="submit" value="提交" />

    </div>

    </form>

    <%

}

else if(panduan.equals("C"))

{

    %>

    <form id="form2" name="form2" method="post" action="fenzhengchuangdi.jsp">

    <div style="text-align:center;color:#F09">

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    请输入出题的个数:<input name="geshu" type="text" value=""/><br /><br/>

    请选择出题的范围:<input name="fanwei" type="text" value=""/><br/><br/>

    <input name="" type="submit" value="提交" />

    </div>

    </form>

    <%

}

else if(panduan.equals("D"))

{

     %>

     <form id="form2" name="form2" method="post" action="yushuchuangdi.jsp">

    <div style="text-align:center;color:#F09">

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    请输入出题的个数:<input name="geshu" type="text" value=""/><br /><br/>

    请选择出题的范围:<input name="fanwei" type="text" value=""/><br/><br/>

    <input name="" type="submit" value="提交" />

    </div>

    </form>

    <%

}

else if(panduan.equals("E"))

{

    %>

    <form id="form2" name="form2" method="post" action="kuohaochuangdi.jsp">

    <div style="text-align:center;color:#F09">

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    请输入出题的个数:<input name="geshu" type="text" value=""/><br /><br/>

    请选择出题的范围:<input name="fanwei" type="text" value=""/><br/><br/>

    <input name="" type="submit" value="提交" />

    </div>

    </form>

    <%

}

else

{

    %>

    <script type="text/javascript">

    alert("输入错误,请点击确定重新输入!!!");

    </script>

    <%

    response.setHeader("refresh","0;url = xuanze.html");

}

    %>

</body>

</html>

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

<style type="text/css">

body

{

    background-image: url(image/7.jpg);

}

</style>

</head>

<body>

<form id="form2" name="form2" method="post" action="chaundi.jsp">

<div style="text-align:center;color:#F09">

<br>

    <br>

    <br>

    <br>

    <br>

    <br>

请输入出题的个数:<input name="geshu" type="text" value=""/><br /><br/>

请选择出题的范围:<input name="fanwei" type="text" value=""/><br/><br/>

<input name="" type="submit" value="提交" />

</div>

</form>

</body>

</html>

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

<style type="text/css">

body

{

    background-image: url(image/19.jpg);

}

</style>

</head>

<body>

<%

try

{

    int tishu=Integer.parseInt(request.getParameter("geshu"));

    int fanwei=Integer.parseInt(request.getParameter("fanwei"));

    session.setAttribute("tishu", tishu);

    session.setAttribute("fanwei", fanwei);

    response.setHeader("refresh","0;url = zhengshu.jsp");

}

catch(Exception e)

{

    %>

    <script type="text/javascript">

    alert("输入错误,点击确定返回重新输入!!!")

    </script>

    <%

    response.setHeader("refresh","0;url = error.jsp");

}

%>

</body>

</html>

显示页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8" import="java.util.Random" import="java.sql.Connection" import="java.sql.DriverManager"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

<style type="text/css">

body

{

    background-image: url(image/4.jpg);

}

</style>

</head>

<body>

<%!

class Suan1//生成整数计算的类

{

    public int x,y,c;//定义两个变量,还有一个符号变量

    public Random random=new Random();//定义随机数

    String m;//生成的计算式储存咋m里面

    int fanwei;

    public String shengcheng(int fanwei1)//自动生成数的函数

    {

         fanwei=fanwei1;

         c=random.nextInt(4);//生成符号

         String fuhao;

         x=random.nextInt(fanwei);//生成100以内的自然数

         y=random.nextInt(fanwei);

         if(c==0)//0是加法

         {

             fuhao="+";

             m=String.valueOf(x)+fuhao+String.valueOf(y);

             

         }

         else if(c==1)//1是减法

         {

             fuhao="-";

             if(x>=y)

             {

                 m=String.valueOf(x)+fuhao+String.valueOf(y);

             }

             else

             {

                 m=String.valueOf(y)+fuhao+String.valueOf(x);

             }

         }

         else if(c==2)

         {

             fuhao="*";

             m=String.valueOf(x)+fuhao+String.valueOf(y);

         }

         else

         {

             fuhao="/";

             for(int i=0;;i++)

             {

                 if(y==0)

                 {

                     y=random.nextInt(fanwei);

                 }

                 else

                 {

                     break;

                 }

             }

             m=String.valueOf(x)+fuhao+String.valueOf(y);

         }

         return m;

         

    }

    public String shuchu()//定义输出函数

    {

        if(c==0)

        {

            return (String.valueOf(x+y));//并且返回计算的结果

        }

        else if(c==1)

        {

            if(x>=y)//将较大的数放在前面,不能出现负数

            {

            return (String.valueOf(x-y));

            }

            else

            {

            return (String.valueOf(y-x));

            }

        }

        else if(c==2)

        {

            return (String.valueOf(x*y));

        }

        else

        {

            if(x%y==0)

            {

                return (String.valueOf(x/y));

            }

            else

            {

                if(x>y)

                {

                int shang=x/y;

                int yushu=x-y*shang;

                return (String.valueOf(shang)+"‘"+String.valueOf(yushu)+"/"+String.valueOf(y));

                }

                else

                {

                return (String.valueOf(x)+"/"+String.valueOf(y));

                }

            }

        }

    }

    public int fanhuic()

    {

        return c;

    }

    public int jianyan(String a[],int s)//检验是否有重复的式子,如果有返回0,没有就返回1

    {

       int flag=1;

       for(int i=0;i<s;i++)

       {

           if(m.equals(a[i]))//数组a里面是生成的式子

           {

              flag=0;

              break;

           }

       }

       return flag;

    }

}

int tishu;

int fanwei;

int m=0;

String shuju[]=new String[10000];

int flag=0;

Suan1 a=new Suan1();

String daan,daan1;

String zhengque="",cuowu="";

%>

<%

tishu=Integer.parseInt((String.valueOf(session.getAttribute("tishu"))));

fanwei=Integer.parseInt((String.valueOf(session.getAttribute("fanwei"))));

session.setAttribute("tishu", tishu);

if(m<tishu)//生成30个计算式

{

    shuju[m]=a.shengcheng(fanwei);//将生成的计算式储存咋数组里面

    flag=a.jianyan(shuju, m);//返回是否有重复

    if(flag==1)//如果没有就是1

    {

    if(m+1==tishu)

    {daan=a.shuchu();

    session.setAttribute("shuju", shuju[m]);

    session.setAttribute("daan", daan);

    session.setAttribute("m", m);

        %>

    <form id="form2" name="form2" method="post" action="huoqu.jsp">

    <div style="text-align:center">

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <%out.print(m+1+"."+shuju[m]+"=");

    m=0;%>

    <br>

    <br>

    <br>

    <br>

    请输入答案:<input name="daan1" type="text" value=""/><br /><br/>

    <input name="" type="submit" value="提交" />

    </div>

    </form>

        <%

    }

    else

    {

        daan=a.shuchu();

        session.setAttribute("shuju", shuju[m]);

        session.setAttribute("daan", daan);

        session.setAttribute("m", m);

        %>

    <form id="form2" name="form2" method="post" action="huoqu.jsp">

    <div style="text-align:center">

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <%out.print(m+1+"."+shuju[m]+"=");%>

    <br>

    <br>

    <br>

    <br>

    请输入答案:<input name="daan1" type="text" value=""/><br /><br/>

    <input name="" type="submit" value="下一个" />

    </div>

    </form>

        <%

        m++;

        flag=0;

    }

    

    }

    else

    {

        response.setHeader("refresh","1;url = zhengshu.jsp");

    }

}

%>

 

 

</body>

</html>

写入数据库页面;

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8" import="java.sql.Connection" import="java.sql.DriverManager"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

<style type="text/css">

body

{

    background-image: url(image/18.jpg);

}

</style>

</head>

<body>

<%!

int tishu1;

String error="",zhengque="";

%>

<%

try

{

Connection con = null; //定义一个MYSQL链接对象

Class.forName("com.mysql.jdbc.Driver").newInstance(); //MYSQL驱动

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "20153246"); //链接本地MYSQL

java.sql.Statement stmt; //创建声明

stmt = con.createStatement();

String shuju=String.valueOf(session.getAttribute("shuju"));

String daan=String.valueOf(session.getAttribute("daan"));

int m=Integer.parseInt(String.valueOf(session.getAttribute("m")));

tishu1=Integer.parseInt((String.valueOf(session.getAttribute("tishu"))));

String daan1=request.getParameter("daan1");

String sql="INSERT INTO 整数的四则计算 (shizi,result,userresult) VALUES ('"+shuju+" = "+"','"+daan+"','"+daan1+"')";

stmt.executeUpdate(sql);

if(daan.equals(daan1))

{

    zhengque=zhengque+String.valueOf(m+1)+",";

}

else

{

    error=error+String.valueOf(m+1)+",";

}

if(m+1==tishu1)

{

    sql="INSERT INTO Grade (zhengque,cuowu) VALUES ('"+zhengque+"','"+error+"')";

    stmt.executeUpdate(sql);             

    %>

    <form id="form2" name="form2" method="post" action="xuanze.html">

       <div style="text-align:center;color:#F00">

       <strong>

       <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

       <%

       out.print("正确的题目是:"+zhengque+"<br>"+"错误的题目是:"+error+"<br>"+"点击确定返回主界面");

        zhengque="";

    error="";  %>

       <input name="" type="submit" value="确定" />

       </strong>

       </div>

       </form>

       <%

}

else

{

response.setHeader("refresh","0;url = zhengshu.jsp");

}

}

catch (Exception e)

{

    System.out.print("MYSQL ERROR:" + e.getMessage());

}

%>

</body>

</html>

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8" import="java.sql.Connection" import="java.sql.DriverManager"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

<style type="text/css">

body

{

    background-image: url(image/18.jpg);

}

</style>

</head>

<body>

<%!

int tishu1;

String error="",zhengque="";

%>

<%

try

{

Connection con = null; //定义一个MYSQL链接对象

Class.forName("com.mysql.jdbc.Driver").newInstance(); //MYSQL驱动

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "20153246"); //链接本地MYSQL

java.sql.Statement stmt; //创建声明

stmt = con.createStatement();

String shuju=String.valueOf(session.getAttribute("shuju"));

String daan=String.valueOf(session.getAttribute("daan"));

int weizhi=daan.indexOf('/');

String shang1=daan.substring(0, weizhi);

String yushu1=daan.substring(weizhi+1);

int m=Integer.parseInt(String.valueOf(session.getAttribute("m")));

tishu1=Integer.parseInt((String.valueOf(session.getAttribute("tishu"))));

String shang =request.getParameter("daan1");

String yushu =request.getParameter("daan2");

String sql="INSERT INTO 有余数的除法 (shizi,shang,yushu,usershang,useryushu) VALUES ('"+shuju+" = "+"','"+shang1+"','"+yushu1+"','"+shang+"','"+yushu+"')";

stmt.executeUpdate(sql);

if(daan.equals(shang+"/"+yushu))

{

    zhengque=zhengque+String.valueOf(m+1)+",";

}

else

{

    error=error+String.valueOf(m+1)+",";

}

if(m+1==tishu1)

{

    sql="INSERT INTO Grade (zhengque,cuowu) VALUES ('"+zhengque+"','"+error+"')";

    stmt.executeUpdate(sql);             

    

    %>

    <form id="form2" name="form2" method="post" action="xuanze.html">

       <div style="text-align:center;color:#F00">

       <strong>

       <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

       <%

       out.print("正确的题目是:"+zhengque+"<br>"+"错误的题目是:"+error+"<br>"+"点击确定返回主界面");

        zhengque="";

    error="";  %>

       <input name="" type="submit" value="确定" />

       </strong>

       </div>

       </form>

       <%

}

else

{

response.setHeader("refresh","0;url = yushu.jsp");

}

}

catch (Exception e)

{

    System.out.print("MYSQL ERROR:" + e.getMessage());

}

%

截图:

 

 

      

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/yirenzui/p/7110709.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值