zoukankan      html  css  js  c++  java
  • 四则运算最终版

    结对小组成员:宋家林,张泽敏

    程序设计思路:这个四则运算的最终版本完全可以与我们正在学的javaweb相结合,比如javaweb中的背景图的添加,换行,以及字体居中等等,这些知识的学习都使我对与这个四则运算的设计有了更多的想法。前些日子刚好在写javaweb的增删改查,并且显示操作之后的结果,刚好就可以用到这里。我设计了一个shuru.jsp,这就是网页的最初界面,在这个界面我们可以选择要出的题目数量以及题目的难易程度,在选择完成之后我们可以点击开始答题按钮来进行答题。之后的ti.jsp则是用来出题的,如果选择了基础运算,那么只会出现简单的加减乘除问题,如果选择了高级运算,就会出现比较复杂的混合运算,当答题结束之后,点击确定按钮来结束答题。最后的jieguo.jsp则是用来比较用户给出的答案与正确答案,设置一个count来统计用户答对题的数量,如果相同就显示“答对了,真棒!”,让后count++,反之就显示“答错了,真遗憾!”,最后显示用户答对的题目数量。

    程序代码:

    <%@ 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>结果</title>
    </head>
    <body background="picture/132.jpg">
    <%
    String[] s= (String[])session.getAttribute("v1");
    String[] answer= (String[])session.getAttribute("v2");
    String[] daan=new String[s.length];
    int count=0;//正确答案的个数
    for(int i=0;i<s.length;i++)
    {
    out.print("运算式为:");
    out.print(s[i]+" ");
    out.print("您的输入结果为:");
    daan[i]=request.getParameter("name"+i);
    out.print(daan[i]+" ");
    out.print("正确结果为:");
    out.print(answer[i]);
    if(Integer.parseInt(daan[i])==Integer.parseInt(answer[i]))
    {
    out.print("答对了,真棒!");
    count++;
    }
    else
    {
    out.print("答错了,真遗憾!");
    }
    out.print("<br>");
    }
    out.print("你一共答对的题目数:");
    out.print(count);
    %>
    </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>首页</title>
    </head>
    <body background="picture/132.jpg">
    <form name="form1" method="post"action="ti.jsp">
    <center>四则运算</center>
    <table align="center">
    <tr>
    <td> 请输入要出题的题目数量: </td>
    <td> <input name="shuliang" type="text" id="shuliang"maxlength="5"></td>
    </tr>
    <tr>
    <td>请选择计算的难易程度:
    </td>
    <td>
    <select name="leixing">
    <option value=1>基础运算</option>
    <option value=2>高级运算</option>
    </select>
    </td>
    </tr>
    </table>
    <center><input type="submit"value="开始答题"></center>
    </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>
    </head>
    <body background="picture/132.jpg">
    <%
    String leixing=request.getParameter("leixing");
    if(Integer.parseInt(leixing)==1)
    {
    %>
    
    <% 
    
    int answer; //所出题目的答案
    String j=request.getParameter("shuliang");//出的题的数量
    int shuliang= Integer.valueOf(j);
    String[] str=new String[shuliang];
    String[] daan=new String[shuliang];//用户输入的答案
    String[] answer1=new String[shuliang]; //计算之后的正确答案
    for(int i=0;i<shuliang;i++)
    {
    daan[i]="name"+i;
    //生成0-100之间的随机数
    int num1=(int)(Math.random()*100);
    int num2=(int)(Math.random()*100);
    int fuhao= (int)(Math.random()*4);
    if(fuhao==0)
    {
    str[i]=num1+"+"+num2+"=";
    answer=num1+num2;
    }
    else if(fuhao==1)
    {
    str[i]=num1+"-"+num2+"=";
    answer=num1-num2;
    }
    else if(fuhao==2)
    {
    str[i]=num1+"*"+num2+"=";
    answer=num1*num2;
    }
    else
    {
    str[i]=num1+"/"+num2+"=";
    answer=num1/num2;
    }
    
    answer1[i]=""+answer;
    out.print(str[i]);
    
    
    %> 
    <br>
    <form name="form2"method="post"action="jieguo.jsp">
    请输入你的答案:<input name="<%=daan[i] %>" type="text" id="daan"maxlength="5">
    <br>
    
    <%
    }
    %>
    <%
    session.setAttribute("v1",str);
    session.setAttribute("v2",answer1);
    %>
    <input type="submit"value="确定">
    </form> 
    <%
    }
    %>
    
    <%
    if(Integer.parseInt(leixing)==2)
    {
    int answer; //所出题目的答案
    String j=request.getParameter("shuliang");//出的题的数量
    int shuliang= Integer.valueOf(j);
    String[] str=new String[shuliang];
    String[] daan=new String[shuliang];//用户输入的答案
    String[] answer1=new String[shuliang]; //计算之后的正确答案
    
    for(int i=0;i<shuliang;i++)
    {
    daan[i]="name"+i;
    str[i]=""+(int)((Math.random()*100)); //在1-100之间随机产生一个数
    int num=(int)(Math.random()*4+2);
    int jisuan[]=new int[num+1];//用于保存中间结果
    jisuan[0]=Integer.parseInt(str[i]);
    char yunsuanfu[]=new char[num+1];
    for(int l=1;l<num;l++)
    {
    int fuhao= (int)(Math.random()*4);//用1-4代表符号,随机产生数字
    int num2=(int)(Math.random()*100);
    jisuan[l]=num2;
    if(fuhao==0)
    {
    str[i]+="+"+num2;
    yunsuanfu[l]='+';
    }
    if(fuhao==1)
    {
    str[i]+="-"+num2;
    yunsuanfu[l]='-';
    }
    if(fuhao==2)
    {
    str[i]+="*"+num2;
    yunsuanfu[l]='*';
    }
    if(fuhao==3)
    {
    str[i]+="/"+num2;
    yunsuanfu[l]='/';
    }
    }
    out.print(str[i]+"<br>");
    for(int l=1;l<num;l++)
    {
    if(yunsuanfu[l]=='*')
    {
    jisuan[l]=jisuan[l-1]*jisuan[l];
    jisuan[l-1]=0;
    yunsuanfu[l]=yunsuanfu[l-1];
    }
    else if(yunsuanfu[l]=='/')
    {
    jisuan[l]=jisuan[l-1]/jisuan[l];
    jisuan[l]=0;
    yunsuanfu[l]=yunsuanfu[l-1];
    }
    }
    for(int l=1;l<num;l++)
    {
    if(yunsuanfu[l]=='+')
    {
    jisuan[l]=jisuan[l-1]+jisuan[l];
    jisuan[l-1]=0;
    }
    else if(yunsuanfu[l]=='-')
    {
    jisuan[l]=jisuan[l-1]-jisuan[l];
    jisuan[l-1]=0;
    }
    }
    answer1[i]=""+jisuan[num-1];
    %>
    <br>
    <form name="form2"method="post"action="jieguo.jsp">
    请输入你的答案:<input name="<%=daan[i] %>" type="text" id="daan"maxlength="5">
    <br>
    <%
    }
    %>
    <%
    session.setAttribute("v1",str);
    session.setAttribute("v2",answer1);
    %>
    <input type="submit"value="确定">
    </form> 
    <% 
    }
    %>
    
    <table>
    <tr>
    </tr>
    </table>
    </body>
    </html>

    程序结果:

  • 相关阅读:
    CF1202F You Are Given Some Letters...
    CF1178E Archaeology
    PTA (Advanced Level) 1005 Spell It Right
    PTA (Advanced Level) 1004 Counting Leaves
    Qt5——从零开始的Hello World教程(Qt Creator)
    PTA (Advanced Level) 1003 Emergency
    PTA (Advanced Level) 1002 A+B for Polynomials
    HDU 1272 小希的迷宫
    FZU 2150 Fire Game
    HihoCoder
  • 原文地址:https://www.cnblogs.com/qq1499632156/p/6679578.html
Copyright © 2011-2022 走看看