JSP猜数字小游戏

JSP猜数字小游戏

前些日子,jsp老师布置了用jsp写一个猜数字游戏的小任务。参考别人的代码写了第一个版本,之后又自己写了第二个版本。都发出来,有什么错误请指正。

第一种
1、index.jsp

<body>
<h1 align="center">猜数字游戏</h1><br>
<p style="display:block;text-align:center;" size="24">游戏会给出1-100间的随机数字,请猜出这个数字。您有10次机会。</p><br>
<form action="play.jsp">
<p style="display:block;text-align:center;"><input type="submit" value="开始游戏"/></p>
</form>

 <%
  int a=(int)(Math.random()*100+1);
  session.setAttribute("number",a);
  session.setAttribute("count", new Integer(0)); 
  %>
</body>

2、play.jsp

<body>
  <h2 align="center">请输入1-100之间的数</h2>
    <form action="check.jsp" method=post>
  <p style="display:block;text-align:center;"><input type="text" name="guess" /></p><br>
  <p style="display:block;text-align:center;"><input type="submit" value="提交" onclick="ale()"/></p>
  </form>
  </body>

3、check.jsp

<body>
    <%
    int num1,num2=0,n;
    Integer str1=(Integer)session.getAttribute("number"); 
    Integer n1=(Integer)session.getAttribute("count");     
    String str2=request.getParameter("guess");
    num1=Integer.valueOf(str1);
    n=Integer.valueOf(n1);
        if(str2!=null){
            num2=Integer.parseInt(str2);
         }
        if(num1==num2){
            session.setAttribute("count", new Integer(n));
            out.print("猜对了,您一共猜了"+(n+1)+"次,<a href='index.jsp'>再玩一次</a>");
         }
         else if(num1>num2){
            n+=1;
            session.setAttribute("count", new Integer(n));
            out.print("猜小了,<a href='play.jsp'>再猜一次</a>");
         }
         else if(num1<num2){
            n+=1;
            session.setAttribute("count", new Integer(n));
            out.print("猜大了,<a href='play.jsp'>再猜一次</a>");
         }
        if(n==10){
     %>
      <script language="javascript" >
      alert("游戏结束");
      top.location='index.jsp';
      </script>
       <%
      }
    %>
  </body>

第二种
1、index.jsp

<body>
<h1 align="center">猜数字游戏</h1><br>
<p style="display:block;text-align:center;" size="24">游戏会给出1-100间的随机数字,请猜出这个数字。您有10次机会。</p><br>
<form action="play.jsp">
<p style="display:block;text-align:center;"><input type="submit" value="开始游戏"/></p>
</form>

 <%
  int a=(int)(Math.random()*100+1);
  session.setAttribute("number",a);
  session.setAttribute("count", new Integer(0)); 
  %>
</body>

2、play.jsp

<body>
  <h2 align="center">请输入1-100之间的数</h2>
    <form  method="get">
  <p style="display:block;text-align:center;"><input type="text" name="guess" id="g"/></p><br>
  <p style="display:block;text-align:center;"><input type="submit" value="提交" onclick="ale()"/></p>
  </form>
  <%
    int num1,num2=0,n;
    Integer str1=(Integer)session.getAttribute("number"); 
    Integer n1=(Integer)session.getAttribute("count");     
    String str2=request.getParameter("guess");
      if(str2!=null){
       num2=Integer.parseInt(str2);
       }

       num1=Integer.valueOf(str1);
       n=Integer.valueOf(n1);
       %>
       <script type="text/javascript" >
        var num1='<%=session.getAttribute("number")%>' ; 
        var n='<%=n+1%>';

        function ale(){

            var num2=document.getElementById("g").value;

          if(num1==num2){
            alert("猜对了!您一共猜了"+n+"次。再玩一次");
            window.location.href='index.jsp';
            window.event.returnValue=false;
          }
          else if(num1>num2){
            alert("猜小了");
          }
          else if(num1<num2){
            alert("猜大了");
          }
         if(n==10){
            alert("游戏结束!")
            window.location.href='index.jsp';
            window.event.returnValue=false;
          }
      }
      </script>
       <%
          n++;
          session.setAttribute("count", n);
        %>
 </body>

第一种采用的是用一个页面当作提示信息,第二种则是js写的提示信息。

猜你喜欢

转载自blog.csdn.net/lwqkiss/article/details/80144232